Fedor Isakov
cc2484bbc4
Switch to latest MPS build
2021-09-22 17:08:25 +02:00
Fedor Isakov
17c2c73aeb
Minor code cleanup
2021-09-22 17:08:25 +02:00
Fedor Isakov
2420685b19
Disable an obsolete test
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
82b04c23ae
Introduce TYPE_COLLECTOR parameter to pass to template application session
...
The older technique that passed "typeCollector" to query is replaced
with passing this object as a session parameter.
Can be accessed with "CustomSessionParameter".
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
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
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
b8f627d0a9
Add .mps-caches to .gitignore
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
210f30be1b
Prefer node builder to quotation
2021-09-21 17:54:50 +02:00
Fedor Isakov
a5105e666a
Update build scripts
2021-09-21 17:54:50 +02:00
Fedor Isakov
42d9970172
Extend ValueFeature with type, deprecate getter
2021-09-21 17:54:50 +02:00
Fedor Isakov
de7c9c9cb1
Regenerated build.xml
2021-08-17 09:30:49 +02:00
Fedor Isakov
8fd9f1d156
Switch to the latest MPS build
2021-08-17 09:30:49 +02:00
Fedor Isakov
a22d360c13
Add reexport on coderules.runtime in controlflow sample, fix build
2021-08-17 09:30:49 +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
d941435963
Restore language module smodel.queryExt in the project
2021-08-17 09:30:48 +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
74ceb5cbfb
Types aspect for j.m.lang.typechecking (in Ext language)
2021-08-04 13:24:59 +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
b1fbf7265e
Update plugin version and platform compatibility
2021-07-29 15:17:18 +02:00
Fedor Isakov
23d6bf34a5
Update build number
2021-07-29 15:17:18 +02:00
Fedor Isakov
1b44d634b8
Rgenerate build scripts with MPS 2021.2 EAP
2021-07-29 14:46:40 +02:00
Fedor Isakov
f8365e91eb
Switch to MPS 2021.2 EAP for building the project
2021-07-29 14:46:40 +02:00
Fedor Isakov
c4db4fcafe
Set generator options: strict=false in build scripts
2021-07-29 14:18:29 +02:00
Fedor Isakov
617a7d77a5
Fix build script
2021-07-29 12:46:57 +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
78c9b16f13
Auto-fix: change reference to default constructor
2021-07-22 15:46:21 +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
73d50ef39c
Add typing rules for string operations in BL
2021-07-22 13:59:19 +02:00
Fedor Isakov
7e132a8604
Drop creating blockmap file
2021-07-22 13:59:19 +02:00
Fedor Isakov
c344b384f3
Update site to refer to Github's release assets (again)
2021-07-07 12:55:25 +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
d1f7932aae
Generate blockmap and hash for plugin update site
2021-06-29 18:10:21 +02:00
Fedor Isakov
bad065229f
Rebuild project
2021-06-29 18:10:21 +02:00
Fedor Isakov
17e1bc4589
Applied migration
2021-06-29 14:51:10 +02:00
Fedor Isakov
c4811d7d74
Migration of types aspect
...
Add types aspect devkit, remove engaged in generation.
2021-06-29 14:51:10 +02:00
Fedor Isakov
dd8c5ffb07
Introduce types aspect devkit and genplan
2021-06-29 14:51:10 +02:00
Fedor Isakov
2963dd93b6
Update project's README with up-to-date information
2021-06-25 18:28:58 +02:00
Fedor Isakov
a8a62ddaaa
Specify clean task dependencies in gradle script
2021-06-22 13:50:45 +02:00
Fedor Isakov
11a0bd7097
Fix groovy's markup builder
2021-06-22 13:12:58 +02:00
Fedor Isakov
f3bc89aef7
Nice presentation of plugins in updatePlugins.xml
2021-06-21 19:13:00 +02:00