Fedor Isakov
2e5d73b31e
Add icons for typechecking roots and the aspect
2021-11-25 18:09:22 +01:00
Fedor Isakov
d7f54a35fb
Minor editor fixes
2021-11-25 12:07:43 +01:00
Fedor Isakov
2d48fb57f2
Fix editor: ensure correct constraints in head/guard/body
2021-11-25 12:07:43 +01:00
Fedor Isakov
c27cafdf30
Fix editor: support changing isFree <-> isNonfree
2021-11-24 16:22:17 +01:00
Fedor Isakov
d0d44b98c5
Minor editor fixes
2021-11-24 16:22:17 +01:00
Fedor Isakov
690e8e919c
Fix editor: caret position and first argument to constraint
2021-11-24 16:22:17 +01:00
Fedor Isakov
9b59925e4f
Fix editor: editable=false for keywords, focus attraction
2021-11-24 16:22:17 +01:00
Fedor Isakov
257bc196c3
Re-save all models
2021-10-26 17:46:40 +02:00
Fedor Isakov
8dbf94c7da
Fix broken withParam() invocation of query template
2021-10-14 18:28:43 +02:00
Fedor Isakov
f3c12ec4af
Fix missing dependency
2021-09-23 15:16:17 +02:00
Fedor Isakov
2d52921561
Fix and optimize dependencies
2021-09-22 17:08:25 +02:00
Fedor Isakov
177e55820e
Move label definition to the language that uses it
2021-09-22 17:08:25 +02:00
Fedor Isakov
17c2c73aeb
Minor code cleanup
2021-09-22 17:08:25 +02:00
Fedor Isakov
b122872890
Refactor Result to be able to clear the cause
2021-09-21 17:54:51 +02:00
Fedor Isakov
3f606ba63c
Refactor the way parameters are passed to expand macro
...
Instead of the hack that that uses session parameters to pass
parameters to expandMacro, use directly `withParams` method
on macro token. All parameters are mapped to corresponding fields.
Introduce CustomSessionParameter to access parameters in
TemplateApplicationSession.
2021-09-21 17:54:51 +02:00
Fedor Isakov
21cbd6e926
Simplify a generator template query
2021-09-21 17:54:51 +02:00
Fedor Isakov
42d9970172
Extend ValueFeature with type, deprecate getter
2021-09-21 17:54:50 +02:00
Fedor Isakov
f96211273c
Drop hack for finding refs in LateParameter, switch to internal var ref
2021-08-17 09:30:49 +02:00
Fedor Isakov
5bd41f1098
Introduce typechecking term table
2021-08-17 09:30:35 +02:00
Fedor Isakov
c6453b7293
Introduce hack for finding refs in LateParameter
2021-08-17 09:29:57 +02:00
Fedor Isakov
6b0526ba31
Introduce language j.m.l.types to contain aspect-related generator mappings
2021-08-17 09:29:21 +02:00
Fedor Isakov
4b64377ac6
Introduce dsl constructs for typechecking queries
...
A root TypecheckingQueries is to replace the generic Queries
from j.m.lang.coderules.
2021-07-29 12:46:57 +02:00
Fedor Isakov
4f22a7959d
Fix LateExpression generator: avoid interfering with other gen templates
2021-07-29 12:46:57 +02:00
Fedor Isakov
4d06adf85b
Rename isAssigned to isNonfree for consistency
2021-07-22 15:46:21 +02:00
Fedor Isakov
4ea1d0cadd
Feature: isGround and isNonground predicates, MPSCR-94
2021-07-22 13:59:19 +02:00
Fedor Isakov
4e02433491
Make rule input and session variables available in rule methods
2021-07-06 13:42:41 +02:00
Fedor Isakov
2425fe933a
Ensure dependency is tracked for nested expand macro applications
...
Expand macro passes the rule's input to nested macro calls.
This adds the macro input as the dependency of the rule's input.
As a result, incremental processing starts working in some cases.
2021-06-30 18:25:46 +02:00
Fedor Isakov
9527a097b8
Migrate to the latest MPS release, apply migrations
2021-06-18 18:41:01 +02:00
Fedor Isakov
e03a65760c
Adjust style for fail constraint
2021-06-18 18:41:00 +02:00
Fedor Isakov
1d620cdd63
Drop obsolete unused features, cleanup the code
2021-05-18 12:32:03 +02:00
Fedor Isakov
4ee3869b45
Introduce a means to use direct reference to INamedConcept in rules
2021-05-13 15:54:42 +02:00
Fedor Isakov
0a7623fa3b
Migration to LogicalItem for the rest of expressions
2021-05-04 18:24:30 +02:00
Fedor Isakov
a9fc3db841
Migrate to TermFeatureOverrid to LogicalItem
...
Deprecate TFO.getter
Disable entering LogicalItemExpression
2021-05-04 18:24:29 +02:00
Fedor Isakov
abed4bd3e1
Avoid failing on an error in template application, allow recover
2021-04-28 08:54:25 +02:00
Fedor Isakov
cff18e7ca5
Optimize RulePlanHandler
...
Avoid iterating over LinkedHashMap (ineffective).
Do topo-sort only once on creating the object.
2021-04-21 10:40:51 +02:00
Fedor Isakov
394cb720c1
Optimize program producing: drop checking of constraints
...
Constraints arity is no longer checked.
Checking for null arguments to constraints is done
in AbstractConstraint's constructor.
2021-04-19 22:55:09 +02:00
Fedor Isakov
ff6b5ec6ae
Apply migrations and rebuild project
2021-04-14 13:19:50 +02:00
Fedor Isakov
93fd42365a
Fix NodeWalker ignoring annotations
2021-04-13 22:57:06 +02:00
Fedor Isakov
49357ab87a
Drop all usages of "principal store" and "preamble" feature
2021-04-13 22:57:06 +02:00
Fedor Isakov
077e1564b4
Refactor and optimize RulePlanHandler, drop obsolete contracts
...
RulePlanHandler does not rely anymore on fixed total order of
input nodes in a given rule template. An update constitutes a list
of rules/reqs generated for a pair template+input node.
All hacks that use sets of rule IDs removed.
Also, support for "new" and "dropped" rules removed, incremental algorithm
no longer supported.
2021-04-12 12:47:44 +02:00
Fedor Isakov
1d1db7cba5
Disable all preamble-related stuff
2021-04-12 12:47:44 +02:00
Fedor Isakov
28dd6c7a12
Implement feedback invalidation based on (in)validated rules
...
Refactor supervisor/feedback consumer to support feedback basis.
Track (in)validated rules tags in RulePlanHandler.
Both (in)- and validated rules cause associated feedback to be cleared.
Disable passing SessionToken in WatchingIncremental strategy;
this forces the correct journal recording but turns off incrementality.
2021-04-08 08:51:40 +02:00
Fedor Isakov
7c89dfdffd
Refactoring in program producing: getting ready to drop incrementality
...
Optionally produce partial program in incremental mode.
A partial program includes all "static" rules plus the "required closure"
of all changed nodes.
Produce program for required nodes unconditionally.
Mark all rule updates as validated only if exlicitly asked for it.
2021-04-08 08:51:39 +02:00
Fedor Isakov
99e248c5b3
Fix incremental update of reported feedback
...
Correctly detect cache up-to-date.
Refactor feedback reporting, provide origin node as the key.
Drop invalidated feedback correctly.
Code cleanup.
2021-03-23 12:48:06 +01:00
Fedor Isakov
2977b4dd19
Extend expand macro operation with rule input parameter, fix tracking dependencies
...
Enable recording the dependencies while expanding macro.
Rename/refactor operations in UpdatesRecorder to reflect the intent
of adding the dependencies.
2021-03-23 12:48:06 +01:00
Fedor Isakov
c62b7ee3c1
Fix model check errors in generator model
2021-02-04 18:04:06 +01:00
Fedor Isakov
7fe5a5ad7a
Auto-updated files after migrating to MPS 2021.1 EAP
2021-02-04 12:26:59 +01:00
Fedor Isakov
c450462fa5
Drop "final" flag on term feature: unused
2021-01-23 16:59:45 +01:00
Fedor Isakov
2ab8d41b0c
Minor refactoring: move term specication to the end of feature list
...
It's only natural to have the specification to come after
all upper-level features have been specified in a term.
2021-01-23 16:59:45 +01:00
Fedor Isakov
536e1aa1c2
Introduce helper methods to factor out creation of terms
2021-01-23 16:59:45 +01:00