Commit Graph

283 Commits

Author SHA1 Message Date
Grigorii Kirgizov 9a782fc619 Run 'list literal -> cons list constructor' migration on samples 2019-09-11 13:24:02 +03:00
Grigorii Kirgizov 39fa007310 Run Splice migration on samples 2019-09-11 13:24:02 +03:00
Grigorii Kirgizov 163e339436 Add migration for replacing List usages for ConsList constructor usages 2019-09-11 13:24:02 +03:00
Grigorii Kirgizov 1e23572397 minor change of method use in BaseHelper 2019-09-11 13:24:02 +03:00
Grigorii Kirgizov 005dfa1e33 Fix reporting for typechecking of arrays in bl 2019-09-11 13:24:02 +03:00
Grigorii Kirgizov 6a02be6f6e Avoid nested empty lists in mapped ListNode.Alias. Fix capture in lcta helper for lub. Add test for lub.
The problem with empty lists showed up at least in printing lists.
2019-09-11 13:24:02 +03:00
Grigorii Kirgizov 442d15204c Add capture conversion for type variables produced by LUB 2019-09-11 13:24:02 +03:00
Grigorii Kirgizov a8cb00c8b5 Handle recursive case of LUB: produce wildcard type param 2019-09-11 13:24:02 +03:00
Grigorii Kirgizov 618524bdff Fix Forall term in lambdacalc with recent changes 2019-09-11 13:24:01 +03:00
Grigorii Kirgizov 37be72d9cf Refactor generation of ListFeature & 'spliced' MultiMetaLogical. Fix BL typesystem to accomodate these changes.
ListRole in DataForms is stricter and doesn't allow non-list values.
Spliced MultiMetaLogical is always generated to ListNode without intermediate step of Variable[].
2019-09-11 13:24:01 +03:00
Grigorii Kirgizov 4938551fcb Subst ListNode for 'term' type in some places in relation concerned with LUB. Change ListRole to ChildRole in upperBoundType & lowerBoundType. 2019-09-11 13:24:01 +03:00
Grigorii Kirgizov 6255bdb6f5 Add relations required for recursive case of LUB 2019-09-11 13:24:01 +03:00
Grigorii Kirgizov 087bfdaf9b Extend LubHelper to collect all parameterizations of erased types from raw LUB 2019-09-11 13:24:01 +03:00
Grigorii Kirgizov d3186851db Instantiate type variables in extended 'findSubtypePaths' rule 2019-09-11 13:24:01 +03:00
Grigorii Kirgizov e2e531f13c Add few utilities and extend logic of subtypePaths for LUB impl
subtypePaths constraint now has an extended version subtypePathsRaw that returns
extended 'classifierType' dataforms with type parameters (no only classifiers).
2019-09-11 13:24:01 +03:00
Grigorii Kirgizov 0f1460bb67 Add typechecking of array literals handling nested literals
Array literals always belong to some variable decl and their elements
are recursively checked against declared component type [JLS 10.6].
2019-09-11 13:24:01 +03:00
Grigorii Kirgizov 68f6507b72 Fix NPE in kotlin runtime on boolean types with null val from BL 2019-09-11 13:24:01 +03:00
Grigorii Kirgizov 924d07c8ed Return 'tagDetail' logic in RuleBuilder to handle duplicate tags of rules generated in loops 2019-09-11 13:24:01 +03:00
Grigorii Kirgizov ff9d109ea6 Add BL typechecking of arrays and boolean consts. Fails now due to rule tag collisions 2019-09-11 13:24:01 +03:00
Fedor Isakov 5b5798dcad Switch to reactor lib 0.9.13. 2019-09-10 18:37:11 +02:00
Fedor Isakov edc49464e1 Fix the failing test: the error is no longer reported on return statement. 2019-09-02 17:55:46 +02:00
Fedor Isakov 486fbf10af Rewrite error reporting using target spec or by specifying the target. 2019-09-02 17:55:46 +02:00
Fedor Isakov 5eed118be0 Replace usages of deprecated reporting with error constraint.
Having to specify the target for reported messages is a redundancy.
It's better to rely on the built-in feedback mechanism and handle the
messages at the supervisor level.
2019-09-02 17:55:46 +02:00
Fedor Isakov 0db213725e fixup! Swith to using reactor lib 0.9.12. 2019-09-02 17:55:46 +02:00
Fedor Isakov d786ff43b9 Re-save all models, language name updated in .mpl files. 2019-08-20 23:11:19 +02:00
Fedor Isakov 22ee175030 Fix script build (dangling node). 2019-08-20 23:11:19 +02:00
Fedor Isakov 973b9c35d5 Rebuild project. 2019-08-14 13:29:22 +02:00
Fedor Isakov 45ae7a6a24 Fix build script imports and rebuild project. 2019-08-12 18:21:38 +02:00
Fedor Isakov 19b243adf5 Support coerce to concept query in bl types aspect. Testing typechecking in bl. 2019-08-12 16:45:00 +02:00
Fedor Isakov 2ef8adfe5e Switch to reactor 0.9.11 2019-07-30 13:48:08 +02:00
Fedor Isakov 6384085b17 Rebuild project. 2019-07-30 12:24:25 +02:00
Fedor Isakov 3a48c47880 Migration: "update versions in descriptors". 2019-07-30 11:49:26 +02:00
Fedor Isakov 66c9222a95 Run migrations with MPS 2019.2 EAP3. 2019-07-26 17:27:18 +02:00
Fedor Isakov 0f8d858748 Remove unnecessary calls to reactor lifecycle. 2019-07-26 17:18:37 +02:00
Fedor Isakov 4e4e1f68ef Fix buildscript dependencies. 2019-07-26 17:14:48 +02:00
Grigorii Kirgizov 11712c7069 Restrict the notion of principal rule (as effect, match journal is shorter now). It also positively affected reporting, so switch reporting to the new way. 2019-07-26 17:00:31 +02:00
Grigorii Kirgizov 9b49c3f053 Fix tests for incremental tc of BL. Add more tests for types with bounds. Temporarily revert reporting method to the old one. 2019-07-26 17:00:31 +02:00
Grigorii Kirgizov ca84b0ae02 Add few more tests on wildcards. 2019-07-26 17:00:31 +02:00
Grigorii Kirgizov 3d80841639 Switch ReportingSupervisor to handle RuleMatch. Add Supervisor using ProgramSpec instead of PrincipalOriginIndex. 2019-07-26 17:00:31 +02:00
Grigorii Kirgizov 78c0cc1559 Setup code for failing typechecking tests, add one. Extract Supervisor impl from ProgramEvaluator. 2019-07-26 17:00:31 +02:00
Grigorii Kirgizov b9309e6369 Add several tests of incr typecheck on BL. ProgramEvaluator now depends on ProgramProducer. 2019-07-26 17:00:31 +02:00
Grigorii Kirgizov b560bbbd30 Separate incremental tests on testlang and baselang into their own models. 2019-07-26 17:00:30 +02:00
Fedor Isakov 79b08c6f83 Revert "Apply migrations from EAP3 and rebuild project."
This reverts commit 9c5bf858c3.
2019-07-26 15:30:30 +02:00
Fedor Isakov 9c5bf858c3 Apply migrations from EAP3 and rebuild project. 2019-07-19 12:28:27 +02:00
Fedor Isakov a0b5acaa62 Rebuild project. 2019-06-07 09:16:21 +02:00
Fedor Isakov 947f9523bd Fix language imports. 2019-06-07 09:16:21 +02:00
Fedor Isakov cd37daaa07 Apply migrations after switching to the latest EAP build of MPS. 2019-06-07 09:16:21 +02:00
Fedor Isakov 17ed4642ae Apply all available automatic migrations. 2019-06-05 16:16:00 +02:00
Fedor Isakov 57de11c3fe Rename all modules/models having prefix j.m.typechecking to j.m.coderules.typechecking. The former is reserved. 2019-06-05 16:15:59 +02:00
Fedor Isakov fe505792c6 A bunch of refactorings and renames in typechecking plugin.
Remove unused interfaces, merge classes with similar functionality, reduce the number of used classes.
2019-06-05 16:14:27 +02:00