eclipse-ocl / org.eclipse.ocl

Eclipse Public License 2.0
0 stars 0 forks source link

[pivot] Rationalize minimal.oclstdlib #2239

Open eclipse-ocl-bot opened 2 weeks ago

eclipse-ocl-bot commented 2 weeks ago

| --- | --- | | Bugzilla Link | 579037 | | Status | NEW | | Importance | P3 normal | | Reported | Mar 01, 2022 09:47 EDT | | Modified | Mar 06, 2022 06:11 EDT | | See also | 541380, 579109 | | Reporter | Ed Willink |

Description

Bug 541380 demonstrates that the OCLstdlib editor (at least) malfunctions badly when the minimal.oclstdlib structure is not satisfied.

To what extent is it reasonable to expect functionality when e.g. Boolean is badly defined?

a) (now) we get deep errors that ripple obscurely

b) we work hard to report errors clearly

c) we merge minimal structure into the user model and maybe WFRs diagnose

d) introduce placeholder BadXXX to fill in the gaps


minimal.oclstdlib has changed many times as Lambdas etc have been added

c) merging to create a good model seems better even if round-tripping may gain the merges and if WFRs have to be at the pre-merged CS level.


? does the test minimal.oclstdlib go obsolete, or does *.oclstdlib implicitly extend a minikmal.oclsydlib model or built-in functionality?

Must be built-in otherwise we're back in the what if the model deosn't satisfy the code quandary.

eclipse-ocl-bot commented 2 weeks ago

By Ed Willink on Mar 02, 2022 03:10

(In reply to Ed Willink from comment #0)

c) merging to create a good model seems better

This policy is already in force for the lazily created oclBadProperty / oclBadOperation for which ASResourceImpl.isUnloading has to be initialized to true to avoid tripping the ImmutabilityCheckingAdapter.

Once we add an InvalidType special case to ImmutabilityCheckingAdapter the surprising ASResourceImpl.isUnloading init can be corrected.

eclipse-ocl-bot commented 2 weeks ago

By Ed Willink on Mar 06, 2022 06:11

(In reply to Ed Willink from comment #1)

Once we add an InvalidType special case to ImmutabilityCheckingAdapter the surprising ASResourceImpl.isUnloading init can be corrected.

See Bug 579109 for ImmutabilityCheckingAdapter rationalization, transient properties.