Commit Graph

52 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 dd36168269 Apply migrations to mpscore sample 2024-09-03 13:04:20 +02:00
Fedor Isakov c5ef23adc4 Typechecking for toStream op 2024-08-06 11:12:44 +02:00
Fedor Isakov 0aad66b951 Automatic migrations 2024-07-04 18:17:56 +02:00
Fedor Isakov d6783eb081 Run migrations in mpscore project 2024-06-20 12:16:29 +02:00
Fedor Isakov e1816d4f8a Fix typechecking of enumerator type 2024-06-16 16:11:38 +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 7daccbe1ad Fix dangling reference 2023-03-03 17:07:24 +01:00
Fedor Isakov d531c6a5ad Run Migration Assistant 2023-02-22 13:52:02 +01:00
Fedor Isakov 25b82ebfb1 Redo fix of closure param type inference, drop typeScheme/2
The solution for inferring the type of a closure parameter using
auxiliary typeScheme/2 constraint and processing all "inference sites"
doesn't work for some situations, such as closure returning a closure with
untyped (var) parameter.

The new solution uses regular typeOf/2 constraint and calculates the
closure type assuming a variable as the return type. This must not be inferred from the context.

Avoid assigning a type to the closure the 2nd time, which
causes a cascade of typeOf/2 activations.
2022-11-23 14:03:19 +01:00
Fedor Isakov ad3ea9d63d Apply all migrations from 2022.2 2022-11-21 11:25:13 +01:00
Fedor Isakov fecabe840d Fix closure's parameter type inference, drop hacks
Replace the ad-hoc solution with typeScheme/2 cint to be used
on par with type/2. Type inference sites to be extended
with rules to process typeScheme.
2022-11-21 10:50:00 +01:00
Fedor Isakov 9b341c2e2d Ensure types extend BL's Type term 2022-11-21 10:50:00 +01:00
Fedor Isakov ff1d53a7ab Fix sequence type construction (passing correct unifier) 2022-11-21 10:49:59 +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 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 0691ca6a1b Drop last usage of "kind" feature 2021-05-13 15:54:44 +02:00
Fedor Isakov cba508dc01 Fix collections types: indexOf accepts Object 2021-05-13 15:54:43 +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 e488399229 Minor refactoring in collections types 2021-05-03 13:14:11 +02:00
Fedor Isakov c893d3280e Fix collection types: support DowncastExpression 2021-04-28 08:55:00 +02:00
Fedor Isakov a204df222a Optimize BL types and queries
Make expectType optional (auxiliary).
Drop checkDecls from typeof query (unnecessary).
2021-04-28 08:54:25 +02:00
Fedor Isakov ff6b5ec6ae Apply migrations and rebuild project 2021-04-14 13:19:50 +02:00
Fedor Isakov 6ed5c3329d Fix typing errors: specify correct type annotations 2021-04-14 11:59:09 +02:00
Fedor Isakov f5b4b0edb0 Fix binary op in collections lang 2021-04-08 08:50:28 +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 2b6de60ebc BL types: Drop runtimeType term and its usages 2021-01-23 16:59:42 +01:00
Fedor Isakov 62e8e7d013 Switch to MPS 2020.3 release. 2021-01-08 11:00:02 +01:00
Fedor Isakov f627773585 Collections types: support coercion to sequence type, fix multi foreach.
Coerce to sequence type w/o element type is needed to find out
the element type of a collection.
2020-11-24 13:41: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 8bd1ba6590 Fix require statements given restriction of their semantics
Also explicitly require classifiers in Hierarchy rule table
2020-10-23 12:26:30 +02:00
Grigorii Kirgizov 9476f4bba5 Revert introduction of 'runtimeType" superterm (fixes MPSCR-74) 2020-10-23 12:26:30 +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
Grigorii Kirgizov 5bea95f1ab Change `convertsToSafe` signature so it isn't considered principal (required for MPSCR-64)
Just wrap used 'node'-typed argument in a term constructor.
It's not principal according to incrementality contract described in MPSCR-66
2020-07-22 13:09:52 +03:00
Fedor Isakov 936190bca9 Apply migrations. 2020-07-11 15:13:08 +02:00
Grigorii Kirgizov dcb8e5ac53 Fix "link out of search scope" in collections types 2020-06-09 02:19:42 +03:00
Grigorii Kirgizov 1631f77e74 Implement typechecking for j.m.bl.collections & tests for it 2020-06-08 12:29:37 +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 36a85d5c2c Add bl.collectionsExt dependency on bl.function lang; upd mpscore build script and build.xml 2020-05-04 15:16:47 +03:00