Fedor Isakov
f0a9ac3bab
Drop abandoned functionality: controlflow
2024-06-24 10:56:00 +02:00
Fedor Isakov
87bb67cee3
Drop usages of SessionToken
2024-06-21 22:44:23 +02:00
Fedor Isakov
34c5643d0d
Turn on printing of empty list as []
2024-06-21 21:51:35 +02:00
Fedor Isakov
a19d02b8ae
Switch initialization to use ModuleActivator; drop unused imports
2024-06-16 16:11:38 +02:00
Fedor Isakov
ba6f509909
Reimplement occursCheck with DataFormWalk
2024-06-13 20:11:19 +02:00
Fedor Isakov
658f9a48c0
Enable DataFormWalk to walk variables checking for cycles
2024-06-13 20:10:39 +02:00
Fedor Isakov
9aa9680ba1
Refactor DataForm.Visitor to use default methods; drop Stub
2024-06-13 17:40:23 +02:00
Fedor Isakov
d63d261044
Drop usages of "usages count" feature of MutableLogical
2024-06-13 15:49:51 +02:00
Fedor Isakov
adb38f1a2c
Drop optimization hack; Correctly handle non-term logicals
2024-06-13 15:46:13 +02:00
Fedor Isakov
b053cd7c3e
Drop the rest of "incremental" stuff
2024-06-13 12:22:57 +02:00
Clement de La Bourdonnaye
0776351977
Ran CleanStubForeignMethodIds migration
2024-01-23 16:33:23 +01:00
Clement de La Bourdonnaye
c96f65ec64
NewUI - restore old ui icons for usage when new UI disabled
2024-01-11 14:38:03 +01:00
Vaclav
5114fd8f7c
NewUI - add new svg icons replacing the old png ones. Update the icon resources using these icons.
2023-12-14 16:10:32 +01:00
Fedor Isakov
04416a927b
Make all expand template params optional
...
As part of migration add NullLiteral as init field to all
expand macro parameters so that the generation runs smoothly.
The user is then expected to remove init fields for required params.
2023-10-16 11:55:32 +02:00
Fedor Isakov
fc8451e63d
Run migration
2023-10-13 18:13:09 +02:00
Fedor Isakov
20a0bedd81
Refactor call macro cstr: keep arguments in binding list
...
The idea is to have default parameters in (regular) macro definition.
Refactoring and corresponding migration.
2023-10-13 18:13:09 +02:00
Fedor Isakov
8d9b3d4730
Fix behaviour method signature
2023-10-13 18:13:09 +02:00
Fedor Isakov
fd0430a6eb
Better editors and substitute actions for macroses
...
Now all invocations of a macro start with "apply" keyword.
An "expand" macro has an additional parameter after "with" -- the input.
2023-10-13 18:13:09 +02:00
Fedor Isakov
607e54a290
Macro fails to generate if logical or parameters are inconsistent
...
In addition to a typechecking rule make generator report an error.
2023-10-13 18:13:09 +02:00
Fedor Isakov
de9fd05c45
Intentions and methods to facilitate working with macros
2023-10-13 18:13:09 +02:00
Fedor Isakov
5fafd1b0dc
Code review: mark things to be done
2023-10-13 18:13:08 +02:00
Fedor Isakov
87a1b413d1
Ensure ancestors of a changed node are in changeset
...
This fixes incremental update in some situations.
2023-10-13 18:13:08 +02:00
Fedor Isakov
4e77530d20
Drop usages of deprecated feature: ApplicableConcept
2023-10-13 18:13:08 +02:00
Fedor Isakov
f3010743c1
Migration: FixExpandMacroTemplate
2023-10-13 18:13:08 +02:00
Fedor Isakov
530ace6399
Rework editor for expand macro template and prototype
...
Expand macro prototype: "virtual macro".
Expand macro template: "override".
Override macro displays parameters declared in the prototype as R/O.
Introduce "usages" of prototype parameters to serve as local anchors;
this avoids problems with generation.
The existing code is going to work as before, but marked as erroneous
until migrated.
2023-10-04 12:52:09 +02:00
Fedor Isakov
504ae89af3
Consider only LogicalVars when looking for arguments to LateExpr
2023-09-28 12:10:39 +02:00
Fedor Isakov
a85d570604
Enable entering DataNodeExpr within LateExpr
2023-09-28 12:10:39 +02:00
Fedor Isakov
3cf666e633
Apply migrations and make project
2023-07-31 12:57:24 +02:00
Fedor Isakov
e5538bc39f
A bunch of refactorings and cleanups in trace view
...
- cleanup the code, rename symbols for better readability
- drop dead code
- support for optionally showing empty template trace nodes
- display node path for source nodes
2023-06-21 15:27:05 +02:00
Fedor Isakov
0e2c64e587
Fix resolve info
2023-06-12 12:20:35 +02:00
Fedor Isakov
6a849f82f2
Apply migrations and rebuild project
2023-06-12 12:01:02 +02:00
Fedor Isakov
11a1037860
Minor refactoring and code cleanup
2023-06-12 12:01:02 +02:00
Fedor Isakov
6150702e92
Drop references to template dropped upstream
2023-05-03 10:50:10 +02:00
Fedor Isakov
08733317ef
Null guard. MPSCR-126
2023-02-23 17:29:02 +01: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
8f42a025bc
Rewrite topo sorting of macro tables
2022-09-08 14:07:06 +02:00
Fedor Isakov
6030332107
Introduce profiling into program produce/evaluation steps
2022-09-02 15:49:30 +02:00
Fedor Isakov
bb47403b0c
Fix generating of synth recover terms table
2022-08-22 11:19:59 +02:00
Fedor Isakov
26a3bd12dd
Fix how output models are searched for checkpoints
2022-08-16 18:11:49 +02:00
Fedor Isakov
40dd4bb31a
Avoid dependency on a non-runtime solution
2022-07-28 10:30:38 +02:00
Fedor Isakov
83daafe180
Fix feature reference constraint
2022-07-28 10:30:38 +02:00
Fedor Isakov
f9eb52a60f
Introduce checkpoint for typechecking "strut" templates
...
The templates that typechecking relies upon are generated
into the user model as synthetic constructs. These later
need to be discovered by the generator to establish
correct references.
2022-07-28 10:30:38 +02:00
Fedor Isakov
33b472f560
Switch to using plain FQN strings to identify templates
...
SNodeReference are too unreliable to be used.
2022-07-28 10:30:38 +02:00
Fedor Isakov
4bd681f3ee
Fix support for require/requireAll statements in queries, MPSCR-108
2022-07-15 19:46:32 +02:00
Fedor Isakov
837f7303a8
Fix test language broken after refactoring
2022-06-18 15:56:54 +02:00
Fedor Isakov
186c7b6a28
Fix auto-recovery of types with expect/assign/recover pseudo-constraints
2022-06-18 12:53:14 +02:00
Fedor Isakov
dd0b9b2842
Intention to convert term table to types term table
2022-06-18 12:53:14 +02:00
Fedor Isakov
77eb3f30c7
Implement a missing BH method
2022-06-13 11:11:57 +02:00
Fedor Isakov
b46373701f
WIP Reorganizing code
2022-06-08 10:23:43 +02:00
Fedor Isakov
88aaf7898c
Ensure only relevant aspects selected for certain queries
...
While check/checkTypeOf queries are required to
process a whole root, other types of queries
can be sensitive to what aspects to include in
the processing.
Aspects are sorted in strongly-connected components,
among which the relevant one is selected.
2022-06-06 13:00:52 +02:00
Fedor Isakov
585f8f57f5
Switch to generating FQ names for constraint symbols
2022-05-26 12:52:25 +02:00
Fedor Isakov
c112a59116
Switch to collection of QueryTemplate instead of single instance
...
The deisgn decision to have only one instance of QueryTemplate
leads to the necessity to keep AspectClique separated for
every "typesystem". Whereas QueryTemplate are really perfectly
composable, and thus only one AspectClique is neeeded.
Also drop a rudimentary unused feature.
2022-05-26 09:58:31 +02:00
Fedor Isakov
874a2a4b4e
Ensure rule tags have unique group name
2022-05-25 13:49:11 +02:00
Fedor Isakov
b6c190c35c
Introduce ruleInput parameter to call macro
...
Accessing the rule input allows to track dependencies
necessary for correctly updating the feedback.
2022-05-09 17:02:12 +02:00
Fedor Isakov
ddce418ba4
Ensure new list is initialized when recovering
2022-05-03 10:26:43 +02:00
Fedor Isakov
bd249c5d0c
Drop obsolete feature: incremental specification
2022-04-21 16:05:31 +02:00
Fedor Isakov
1d54b8ffeb
Fix NPE on first update of empty rules query
2022-02-17 17:05:41 +01:00
Fedor Isakov
98fef4c95d
Fix NPE on newRules array being empty
2022-02-15 10:35:53 +01:00
Fedor Isakov
d8a180bfe2
Test list feature recovery
2022-02-08 10:09:40 +01:00
Fedor Isakov
2f34591b0b
Support list feature in recovery
2022-02-08 10:09:40 +01:00
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
4e70300ea7
Update language imports
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
c5f2902cd6
Drop background color from backquote
2021-11-16 12:04:32 +01:00
Fedor Isakov
9b8946ce67
Support recovering of children features in typechecking term table
2021-11-15 13:00:03 +01:00
Fedor Isakov
8f4dd4a1c1
Fix the order of synthetic recover rules
2021-11-12 13:25:47 +01:00
Fedor Isakov
365883a099
Fix broken representation of terms with specification
2021-10-27 12:03:49 +02:00
Fedor Isakov
cf04a60cc9
Minor improvements in displaying terms and activation trace
2021-10-26 17:46:41 +02: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
0840e5ecfb
Replace quotation with "node builder" to satisfy generator
2021-09-22 17:08:25 +02:00
Fedor Isakov
17c2c73aeb
Minor code cleanup
2021-09-22 17:08:25 +02:00
Fedor Isakov
ae2492ab57
Update types aspect of the test language
2021-09-21 17:54:51 +02:00
Fedor Isakov
ac89cbb3b6
New features in typechecking lang to facilitate working with types
...
Introduce TypeTermTable as an alternative to TermTable dedicated to
types. A "type term" declaration has a type builder: an expression
which creates the corresponding SNode.
To access term's features on can use FeatureReferenceExpression.
The new _ExpectType_ _RecoverType_ rule tables are automatically added
to the user's 'types' aspect and serve to extract types from types.
AssignType and RecoverType pseudo-constraints can be used to
extract/assign or just extract the type, correspondingly.
2021-09-21 17:54:51 +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
837be3fe64
Fix reference to query classifier to be a node, initialize TypecheckingQueries
2021-08-04 13:24:59 +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
f83757b69a
Rollback aspect devkit for bootstrap languages
2021-06-29 18:10:21 +02:00
Fedor Isakov
17e1bc4589
Applied migration
2021-06-29 14:51:10 +02:00