mps-coderules/samples/mpscore/solutions
Grigorii Kirgizov e2b3c21b2f Change semantics of implicit ListFeature: treat as wildcard, not as empty list
Motivation is that implicit (non-overriden) list features must unify
with list of any length. Consider an example:
`classifier(cls: node-ptr/A/) = classifier(cls: node-ptr/A/ param: [B,C])`
With previous approach it would fail, which seems counter-intuitive to me.
So, if empty list (e.g. of type parameters) is meant, then it must be
specified explicitly.

There's one thing to remember, though: such wildcard list features
won't match with MetaLogicalArrays in rule heads.
(e.g. see dpromote_* rules and consider what happens when
a classifier with unbound `parameter` feature comes in)
2020-05-21 16:38:36 +03:00
..
jetbrains.mps.baseLanguage.closuresExt.test Add typechecking for implicitly typed closure arg, add tests 2020-05-14 20:07:01 +03:00
jetbrains.mps.baseLanguage.collectionsExt.test Apply automatic migrations. 2020-05-09 15:04:25 +02:00
jetbrains.mps.baseLanguage.tuplesExt.test Apply automatic migrations. 2020-05-09 15:04:25 +02:00
jetbrains.mps.baseLanguageExt.test Change semantics of implicit ListFeature: treat as wildcard, not as empty list 2020-05-21 16:38:36 +03:00
samples.mpscore.build Fix build scripts and regenerate. 2020-05-09 10:54:18 +02:00
typechecking.samples.baseLanguage Apply automatic migrations. 2020-05-09 15:04:25 +02:00