Commit Graph

37 Commits

Author SHA1 Message Date
Fedor Isakov 2b146e886b Migrate to latest MPS 2026.1 EAP 2026-04-24 11:22:20 +02:00
Fedor Isakov 53ab46fba7 Apply migrations and rebuild 2025-11-03 12:33:34 +01:00
Fedor Isakov 1a1cb13621 Apply migrations from 251 2025-04-09 11:34:06 +02:00
Fedor Isakov 17dd2a6c01 Appply migrations from MPS 243 branch 2024-12-11 11:57:18 +01:00
Fedor Isakov 0aad66b951 Automatic migrations 2024-07-04 18:17:56 +02:00
Clement de La Bourdonnaye 0776351977 Ran CleanStubForeignMethodIds migration 2024-01-23 16:33:23 +01:00
Fedor Isakov fc8451e63d Run migration 2023-10-13 18:13:09 +02:00
Fedor Isakov f3010743c1 Migration: FixExpandMacroTemplate 2023-10-13 18:13:08 +02:00
Fedor Isakov 6a849f82f2 Apply migrations and rebuild project 2023-06-12 12:01:02 +02:00
Fedor Isakov d531c6a5ad Run Migration Assistant 2023-02-22 13:52:02 +01:00
Fedor Isakov ad3ea9d63d Apply all migrations from 2022.2 2022-11-21 11:25:13 +01:00
Fedor Isakov 5abf1dbce7 Ensure types extend BL's Type term 2022-11-21 10:50:00 +01:00
Fedor Isakov 7fe773dcc2 Switch all type aspects in mpscore sample to typechecking terms
This includes dropping of Recover rule table and relying on
the automatic types recovery.
2022-07-28 10:30:38 +02:00
Fedor Isakov ec6e56c1c3 Fix expandMacro calls to explicitly pass 'subs' parameter recursively
The hack on which expandMacro parameters used to rely on, resulted in a side-
effect, namely that once passed expandMacro parameter is available
recursively, until overridden.
With new contract all parameters need to be passed on when an expandMacro
is called recursively.
2021-09-21 17:54:51 +02:00
Fedor Isakov 17e1bc4589 Applied migration 2021-06-29 14:51:10 +02:00
Fedor Isakov 9527a097b8 Migrate to the latest MPS release, apply migrations 2021-06-18 18:41:01 +02:00
Fedor Isakov bb4aa7e6e1 Fix sequence types: correctly process raw types 2021-05-13 15:54:44 +02:00
Fedor Isakov a08c730ece Migrate to NodeRefItem 2021-05-13 15:54:43 +02:00
Fedor Isakov 637da7d966 Apply migration and rebuild project 2021-05-04 18:24:30 +02:00
Fedor Isakov ea6e930954 Apply migration and rebuild project 2021-05-04 18:24:29 +02:00
Fedor Isakov d407eb2676 Fix sequence types: support covariance with upper bound type 2021-04-29 14:53:19 +02:00
Fedor Isakov ff6b5ec6ae Apply migrations and rebuild project 2021-04-14 13:19:50 +02:00
Fedor Isakov 7fe5a5ad7a Auto-updated files after migrating to MPS 2021.1 EAP 2021-02-04 12:26:59 +01:00
Fedor Isakov 621cdaa912 Implement lub for sequence type
Using the fact that sequence type is covariant, just forward
to lub for parameters.
2020-12-27 16:04:06 +01:00
Fedor Isakov c7dd00bb7e Sequence types: support covariant subtyping of sequence<> type 2020-12-15 13:29:24 +01:00
Fedor Isakov fe16b80132 Refactor types in all mps foundation langs. Drop node-ptr usage as anchor in terms.
Drop node-ptr in node features, macro calls.
Drop node-ptr types in rule templates and recover closures,
fix BiConsumer params
Drop node-ptr// refs where appropriate.
Drop pointer operations from macro calls and term ctor's; add resolve to FunctionTypeLookup static table.
Drop node pointer operations from constraints, add require statements in SModel types macro table.
2020-11-24 13:41:24 +01:00
Grigorii Kirgizov 9476f4bba5 Revert introduction of 'runtimeType" superterm (fixes MPSCR-74) 2020-10-23 12:26:30 +02:00
Fedor Isakov 54439e255e Refactor typechecking state/cache subsystem.
Refactor whe way TypecheckingResultsCache is updated:
all mutatiting methods extracted to Update subclass, which is
only available to the updater.

Make TypecheckingState a regular container for (unit) caches.
Make TypecheckingService responsible for managing caches.

Extract TypeModuleOwner and TypeModelHandler classes.
Get rid of QueryResultsCache, merge into TypecheckingResultsCache.
TypeModuleOwner to manage "repository" cache.
2020-08-14 16:57:36 +02:00
Grigorii Kirgizov ef2b299124 Refactor unchecked conversion for raw types (MPSCR-63)
Now whether unchecked conversion is allowed is controlled
by ConvertsContext.Options of convertsTo relation.
Introduce 'erased()' term to be used in raw type params.
Drop 'uncheckedConversion' parameter in all macros.
Classifier kind:"raw" is now used only for Recover.
Allow unchecked conversions by default. Forbid for sequences.
2020-08-04 12:06:07 +03:00
Grigorii Kirgizov 856210a5ba Migrate langs extending 'convertsTo' handling from blExt types (MPSCR-63) 2020-07-31 11:36:02 +03:00
Fedor Isakov 936190bca9 Apply migrations. 2020-07-11 15:13:08 +02:00
Fedor Isakov 42ae077945 Use free var for type parameter when allowUncheckedConversion=true.
Drop the obsolete "null" type hack in case allowUncheckedConversion=true.
Ensure the flag doesn't work recursively.
2020-07-09 13:41:26 +02:00
Grigorii Kirgizov 5004dc2340 Abstract into bl typechecking of types having runtime representation (e.g. sequence)
See term 'runtimeType' and corresponding rule in ConversionMain
2020-06-05 21:11:37 +03:00
Grigorii Kirgizov 4e43c924c6 Inherit classifier term from `parameterized` and migrate ListFeature role usages 2020-05-21 16:38:44 +03:00
Fedor Isakov 14780b5561 Apply automatic migrations. 2020-05-09 15:04:25 +02:00
Fedor Isakov d1163fc883 Open and rebuild the project with MPS 2020.1. 2020-05-09 15:02:20 +02:00
Grigorii Kirgizov 625ea8c049 Add j.m.bl.sequenceBase language with basic sequence typing rules
This lang doesn't depend on collections lang and extracts
common dependencies of closures and collections langs:
sequence term and its basic typing rules.
2020-05-02 13:43:03 +03:00