Fedor Isakov
a74f00f688
Introduce controlflow language and corresponding solutions as another example of applying code rules in practice.
2018-06-14 16:19:06 +02:00
Fedor Isakov
20c107e428
Introduce j.m.lang.typechecking lang to provide typechecking aspect-related services. Abstract away aspect generation/discovery logic to make it reusable.
2018-06-14 15:02:22 +02:00
Fedor Isakov
fda586c45c
Extract generic support for launching code rules into a separate plugin solution.
2018-06-13 14:34:41 +02:00
Fedor Isakov
c6a3b94f9a
Bump up plugin version to 0.5.
2018-06-12 18:12:05 +02:00
Fedor Isakov
a8e6c565b5
Rename the language and runtime solution: typesystem2 -> coderules. Move typechecking-related stuff to typechecking solution. Reorganize modules, delete obsolete stuck files.
2018-06-12 18:00:30 +02:00
Fedor Isakov
ecdaa8a486
Drop deprecated and obsolete runtime classes.
2018-06-12 13:39:39 +02:00
Fedor Isakov
760ec4e736
Fix a dependency problem.
2018-06-12 13:06:30 +02:00
Fedor Isakov
3f67662683
Dropped deprecated constructs in typesystem2 lang.
2018-06-12 13:01:44 +02:00
Fedor Isakov
a58caa24ef
Drop support for HandlingStage. Stages no longer necessary in presence of queries.
2018-06-11 19:15:46 +02:00
Fedor Isakov
494fecff51
More deprecated constructs in typesystem2 language and runtime.
2018-06-11 13:48:07 +02:00
Fedor Isakov
3698fdd1a5
Typechecking templates: manually migrated hard rules to rule templates.
2018-06-07 16:31:02 +02:00
Fedor Isakov
3310b6cd12
Sample lang: automatically migrated simple rules to rule templates.
2018-06-07 15:48:32 +02:00
Fedor Isakov
6707f67fca
Typechecking templates: automatically migrated simple rules to rule templates.
2018-06-07 15:48:19 +02:00
Fedor Isakov
dfa819c7d6
Fix show type action, drop obsolete code.
2018-06-06 12:44:33 +02:00
Fedor Isakov
655f39987b
Fix not reloadable templates by listening to SRepository (moduleRemoved).
2018-06-06 12:31:31 +02:00
Fedor Isakov
c84e86bbb2
Use correct query kind in testlang.
2018-06-06 12:30:56 +02:00
Fedor Isakov
eb75184949
Typechecking templates: switch to single stage. Use query's conjunction to order check and recover.
2018-06-06 11:34:45 +02:00
Fedor Isakov
acbe631b57
Finally support query parameters. Test "CONVERTS" query.
2018-06-05 15:10:43 +02:00
Fedor Isakov
c0477d8686
Typechecking templates: rename "SubtypeOf" query to "ConvertsTo". Use the "converts" constraint.
2018-06-05 15:07:38 +02:00
Fedor Isakov
2de4d69781
Introduce QueryKind. Fix the kinds of typechecking queries. Avoid directly linking the queries in types aspect.
2018-06-04 18:45:08 +02:00
Fedor Isakov
49296df88f
Fix the dependencies to avoid breaking the build.
2018-05-24 12:47:25 +02:00
Fedor Isakov
44fb682ee1
Sample test language.
2018-05-24 12:00:44 +02:00
Fedor Isakov
26e6df3983
Typechecking templates: drop auto rules that launch "checkAll" and "recoverAll", switch to queries instead.
2018-05-24 11:54:02 +02:00
Fedor Isakov
ce688b3672
Refactor ProgramProducer to use query templates.
...
Switch to using queries to launch program stages.
Refactor typesystem2 lang and runtime to break queries into stages.
Rename ChrProgram to LogicProgram.
2018-05-24 11:54:01 +02:00
Fedor Isakov
bc1f865eeb
Switch to using queries in UI actions. Rule application accepts only list of nodes, drop the "root" use case.
2018-05-17 12:07:51 +02:00
Fedor Isakov
e056befb4e
Establish module dependencies that make sense.
2018-05-17 12:07:50 +02:00
Fedor Isakov
b4b56f20b9
Typechecking templates: default query "main".
2018-05-17 12:07:50 +02:00
Fedor Isakov
1b564b3057
Implementing QueryTemplate API and support in the evaluation environment.
2018-05-17 12:07:50 +02:00
Fedor Isakov
fec79ebde3
Refactoring in typesystem2 runtime and template APIs: cleaning up the code and preparing to introduce queries. Support for extended handler templates.
2018-05-17 12:07:50 +02:00
Fedor Isakov
0713c80a27
Typechecking templates: drop internal "typeOf" constraint, replace with custom declaration.
2018-04-25 16:34:24 +02:00
Fedor Isakov
2f6efaa10a
Drop "auto" constraint rules with empty Head.
2018-04-24 17:19:53 +02:00
Fedor Isakov
51297a956f
Typechecking templates: specify "extends" where necessary.
2018-04-24 17:19:53 +02:00
Fedor Isakov
849116d2e4
Applied the migration.
2018-04-19 16:30:41 +02:00
Fedor Isakov
c01e1d76c9
Refactoring: moving term-related concepts into a separate language, use dataform nomenclature instead of term where possible. Create migration.
2018-04-19 16:30:23 +02:00
Fedor Isakov
085918e21a
Refactoring: rename treeform to dataform everywhere in the runtime.
2018-04-17 13:56:32 +02:00
Fedor Isakov
4ec6bff2e2
Typechecking templates: ran the migration.
2018-04-10 16:17:43 +02:00
Fedor Isakov
487ddddff3
Switched to MPS 2018.1
2018-04-10 14:22:48 +02:00
Fedor Isakov
bfe74e3c7c
Bumped up plugin version to 0.4
2018-04-05 12:40:17 +02:00
Fedor Isakov
a6c31b64b7
Reporting errors with SNode operation, support for reporting from constraint rules.
2018-04-05 12:29:39 +02:00
Fedor Isakov
f730641327
Extract "reporting" solution and interface.
2018-04-04 10:52:14 +02:00
Fedor Isakov
c60f92b7d8
Drop obsolete constructs.
2018-04-03 15:16:23 +02:00
Fedor Isakov
638333989b
Typechecking templates: migrate to assign type operation, drop typeNode/2 constraint.
2018-04-03 15:16:19 +02:00
Fedor Isakov
e30c5e268b
Extend typesystem2 lang with "assign type" operation. TypecheckingSessionSolver to be used for reporting the calculated type. Manual migration required.
2018-04-03 15:16:14 +02:00
Fedor Isakov
28d412997c
Ensure all program's predicate symbols and corresponding solvers are registered.
2018-04-03 12:16:48 +02:00
Fedor Isakov
5f842657b0
Typechecking templates: get rid of RecoverSolver hacks.
2018-04-03 12:16:48 +02:00
Fedor Isakov
9c832b73b3
Testing RuleTemplate with constraint rules in a sandbox.
2018-04-03 12:16:48 +02:00
Fedor Isakov
476b8ad2ee
Migration applied.
2018-04-03 12:16:47 +02:00
Fedor Isakov
ccb46e8ce1
Simplify constraint rules editor. Use "!" to mark kept constraints in the head.
2018-04-03 12:16:47 +02:00
Fedor Isakov
213f01f47d
Require statement to replace "required block".
2018-04-03 12:16:47 +02:00
Fedor Isakov
1112b940a1
Test language for the RuleTemplate.
2018-04-03 12:16:44 +02:00