Fedor Isakov
|
d3a4e21ca9
|
Migrated to MPS2017.3.
|
2017-12-06 16:36:28 +01:00 |
Fedor Isakov
|
ab8f4709ee
|
Make checking for garbage optional by default. Garbage is always reported though.
|
2017-12-04 12:30:21 +01:00 |
Fedor Isakov
|
323cfdf080
|
Introduce environment variable to control whether to report garbage constraints.
Fix NPE on missing rules for a stage during rules application.
|
2017-11-15 11:46:44 +01:00 |
Fedor Isakov
|
1ba6449525
|
NPE guards for broken typesystem manifest.
|
2017-11-14 15:20:53 +01:00 |
Fedor Isakov
|
83b52e8b45
|
Drop usages of java expression solver, deprecate the API calls that require it.
|
2017-11-14 15:09:33 +01:00 |
Fedor Isakov
|
6ba936e584
|
Introduce prototype for term declarations. Use term symbols to differentiate terms instead of "final" features. Simplify the editor.
|
2017-11-12 16:45:04 +01:00 |
Fedor Isakov
|
b0f9150482
|
Typesystem2 lang: migration to clear term declarations using the arguments; drop term arguments suppport; default implementation for term features in the generator; fix term editor.
|
2017-11-10 12:13:24 +01:00 |
Fedor Isakov
|
5c6457b01a
|
Typesystem2 lang: migration to get rid of parameters to term invocations. Fix a generator template for pattern terms.
|
2017-11-10 10:32:48 +01:00 |
Fedor Isakov
|
ae40717078
|
Typesystem2 lang: Structure change to move constraint declarations closer to where they are used.
|
2017-11-09 14:06:39 +01:00 |
Fedor Isakov
|
c9af35e14b
|
Typesystem2 lang and runtime: introduce CopyItem to copy terms recursively; specify MetaLogical type explicitly in the runtime interfaces; optimize generator templates.
|
2017-11-07 14:13:07 +01:00 |
Fedor Isakov
|
1b86c47cac
|
Typesystem2 lang: Deprecate LogicalExpression, migration to replace with the one from Logic lang. Support generation of ValueOf in LateExpressions.
|
2017-11-01 10:51:42 +01:00 |
Fedor Isakov
|
26cd2c0416
|
Fix: LateExpression to accept LogicalContext, return the missing generation template for logical context.
|
2017-10-30 13:18:08 +01:00 |
Fedor Isakov
|
7f1e07ebe7
|
Typesystem2 lang: Switch to using LateExpression for handling Java code in logical clauses; Introduce ExpressionItem, create a migration that replaces LogicalValue with ExpressionItem; Migration to replace LogicalValue; Drop generation of ExpressionSolver.
|
2017-10-27 16:30:28 +02:00 |
Fedor Isakov
|
0ead14f24b
|
Applied migration in Logic lang.
|
2017-10-25 16:33:09 +02:00 |
Fedor Isakov
|
57b5017c74
|
Typesystem2 lang: Support arbitrary data types for logicals; Specify data type of a constraint argument; Intentions to convert clause list to/from template form; Refactoring in Logic lang.
|
2017-10-25 16:33:09 +02:00 |
Fedor Isakov
|
4d2f6c4720
|
Drop usages of hardcoded "node" symbol. Rely on finders.
|
2017-10-24 16:05:05 +02:00 |
Fedor Isakov
|
4f5d2c62fe
|
Typesystem2 lang: Deprecate an obsolete superfluos language construct.
|
2017-10-23 13:58:47 +02:00 |
Fedor Isakov
|
bc3ff79a9c
|
Migration applied: extract ListRole.
|
2017-10-23 12:08:50 +02:00 |
Fedor Isakov
|
e9a35f4fae
|
Fix module dependencies
|
2017-10-23 10:23:12 +02:00 |
Fedor Isakov
|
c94be5ac3b
|
Typesystem2 language: drop unused (superfluous) concept, drop string hacks. Getting rid of hardcoded term features.
|
2017-10-19 17:54:59 +02:00 |
Fedor Isakov
|
7aef68dfc3
|
Typesystem2 language refactoring: Delete obsolete unused code. Rename the runtime model (type->macro).
|
2017-10-18 12:41:49 +02:00 |
Fedor Isakov
|
19af096768
|
Typesystem2 language: new nomenclature, "Macro Table" instead of "Type Table", call/expand operations instead of newType/asType, specify applicable concept as MacroInputDeclaration's type, replace TypeNodeExpression with MacroInputParameter, migration.
|
2017-10-16 13:55:32 +02:00 |
Fedor Isakov
|
e60bfc4158
|
Typesystem2 lang: Use NodeAnchor to make a reference to a node explicit. Replace LogicalValue with Expression where applicable. Drop the type-dependent hacks, git rid of constructing terms by hand in AnchorUtil. Migrations.
|
2017-10-13 11:51:18 +02:00 |
Fedor Isakov
|
1a284c9c58
|
Typechecking templates: Ensure required nodes are specified by the rules. Raw classifier types support.
|
2017-10-13 11:49:45 +02:00 |
Fedor Isakov
|
7cdbb939ef
|
Include into the processing the required node for standalone rules.
|
2017-10-09 13:15:13 +02:00 |
Fedor Isakov
|
6aadc5a9b5
|
Fix the list of constraints not considered garbage.
|
2017-10-04 15:47:02 +02:00 |
Fedor Isakov
|
941e62fa55
|
Fix generation of 'for' and other inheritors of IContainStatementList.
Skip body clauses from building the list of required nodes.
|
2017-10-01 14:37:33 +02:00 |
Fedor Isakov
|
6f95100696
|
Standardise term symbol names.
Typechecking UI: display variable values in the activation trace view as condensed terms.
|
2017-09-20 16:23:31 +02:00 |
Fedor Isakov
|
2b123d9f42
|
Apply rule templates from all stages in one pass.
A heuristic to collect nodes required for local typechecking.
Minor changes in typesystem2 runtime.
|
2017-09-14 18:54:19 +02:00 |
Fedor Isakov
|
a6fffb46c9
|
Drop LogicalSubstitution type and runtime class.
|
2017-08-22 11:47:35 +02:00 |
Fedor Isakov
|
2aa4717ae7
|
Typesystem2 lang: move the context parameter declarations to a separate root.
|
2017-08-22 11:47:35 +02:00 |
Fedor Isakov
|
6c56623987
|
Minor refactoring in CHR program producing code: avoid passing stage as a parameter.
|
2017-08-22 11:47:35 +02:00 |
Fedor Isakov
|
7d926f5cdf
|
Extract typechecking dependencies from all node anchors in typeof, asType and newType constraints.
|
2017-08-22 11:47:34 +02:00 |
Fedor Isakov
|
78c7f71e9a
|
Refactoring the code that launches typechecking to better separate concerns.
Extract TypeAspectRuntime.
Support building typechecking program for sequence of nodes.
Moving classes/models around to get rid of cyclic deps.
|
2017-08-16 15:29:23 +02:00 |
Fedor Isakov
|
243932d6a1
|
Collect required nodes from TypeofConstraint anchors.
|
2017-08-15 15:14:36 +02:00 |
Fedor Isakov
|
64546445ef
|
Merge two generator templates for rule templates into one, simplify the internal rule application API.
|
2017-08-14 16:00:09 +02:00 |
Fedor Isakov
|
9a9dc9bd08
|
Refactoring rule application API and generator: consolidate all logic into token, make token a private API, switch to prototype extension of rule templates. Cleaning up the generator.
|
2017-08-14 13:33:50 +02:00 |
Fedor Isakov
|
9e5eb91089
|
Minor refactoring of rules application logic: extract specific subclasses of NodeWalker for different kinds of walks.
|
2017-08-08 11:56:19 +02:00 |
Fedor Isakov
|
60ef0acb6a
|
Remove dependency on guava.
|
2017-07-28 20:33:10 +02:00 |
Fedor Isakov
|
5c4fb50a63
|
Reorganize and repackage the code to better reflect purpose of the modules.
|
2017-07-28 19:13:48 +02:00 |
Fedor Isakov
|
aac95b2b25
|
Move typesystem2.helper.plugin to typechecking.plugin. Drop typesystem2.helper solution.
|
2017-07-28 13:58:37 +02:00 |
Fedor Isakov
|
804cc9140b
|
Refactoring typechecking API: extract cache component to the plugin, change the cache updater contract to factory, simplify TestLaunchTypechecking.
|
2017-07-28 13:51:15 +02:00 |
Fedor Isakov
|
757d869cf3
|
Rewrite tests without using NodeTestCase's header. Update TypeNodeManager and Typechecker to both be initialized async, add a dispose call for Typechecker.
|
2017-07-27 15:18:20 +02:00 |
Fedor Isakov
|
2908543afe
|
Refactoring typechecking steps to extract the core part. Get rid of the persistency-dependent model, use a bare EditableSModelBase for types.
|
2017-07-25 13:55:55 +02:00 |
Fedor Isakov
|
e970b2443a
|
Extract typechecking-related stuff to a separate solution 'j.m.typechecking'
|
2017-07-25 10:30:29 +02:00 |
Fedor Isakov
|
20622554f2
|
Switch to MPS 172 latest RC build. Fix a couple of parent-invariant violations in the type system, remove obsolete intention.
|
2017-07-19 16:22:59 +02:00 |
Fedor Isakov
|
7d422d4921
|
Avoid requesting SNode's presentation for the constraints program: too slow.
|
2017-07-18 11:25:31 +02:00 |
Fedor Isakov
|
9e8c5145d3
|
Add a missing dependency, fix the error.
|
2017-06-12 21:55:53 +02:00 |
Fedor Isakov
|
0a615c8490
|
Rename solution "typesystem2.test" to "typechecking.test".
|
2017-06-12 19:01:49 +02:00 |
Fedor Isakov
|
51263e9b8b
|
Reorganizing the code, optimize the number of solutions. Delete empty solutions.
|
2017-06-12 18:55:55 +02:00 |