Commit Graph

70 Commits

Author SHA1 Message Date
Fedor Isakov aa9826e2e3 Typechecking facade. Tests. 2016-11-10 16:35:03 +01:00
Fedor Isakov 57bfd6433e Refactoring out the typechecking code from the sample plugin. 2016-11-07 15:07:16 +01:00
Fedor Isakov abce7d2cb7 Use the SRepository interface instead of Project in typechecking aspect 2016-11-02 12:21:10 +01:00
Fedor Isakov c21df9b8a2 Migrated to the latest MPS build. 2016-10-31 10:03:31 +01:00
Fedor Isakov 5692b4ad86 Displaying the rendered type node in the tooltip 2016-10-31 10:03:13 +01:00
Fedor Isakov 10dc206260 Better reporting of errors during typechecking rule templates application 2016-10-19 16:08:55 +02:00
Fedor Isakov cd61b0f1b8 Fix the access modifier in the typesystem2 generation API 2016-10-19 16:08:24 +02:00
Fedor Isakov 36a9bf6c7e Ensure the type term initialization happens after the term is constructed. 2016-10-13 13:38:51 +02:00
Fedor Isakov 16a8541b3e Refactor error reporting while applygin typechecking templates. Trigger headless rules with the "main" constraint instead of merging everything into one huge conjunction. 2016-10-06 11:48:06 +02:00
Fedor Isakov 236ba853d7 Refactor the way the template and origin node reference are processed. 2016-10-04 15:59:18 +02:00
Fedor Isakov dd1f2f28a5 Refactoring and cleaning up type/rule template API, introduce RecoverySession. Type table has recovery feature. Return type terms from the sample typechecking. Simple test. 2016-09-19 12:17:40 +02:00
Fedor Isakov 817af227f1 Fix the "confusing" LABEL macros in the templates generator, allow to use the "interpreted" generator. 2016-09-17 14:57:56 +02:00
Fedor Isakov 7d959dc154 Refactor the type templates generation and usage. Enable to use type templates outside of the application session. 2016-09-17 14:57:55 +02:00
Fedor Isakov 64a664f5a9 Remove obsolete module. 2016-09-17 14:57:55 +02:00
Fedor Isakov b03e8578e5 Resave all models containing obsolete resolve info. Fix all mentions of the old api class. 2016-09-17 14:57:55 +02:00
Fedor Isakov 9312b7d30e MPS suddenly decided to remove references to the deleted solution. 2016-09-01 11:03:36 +02:00
Fedor Isakov 414a60fffc Moving the reactor API to the separate project.
Switch to java_stub models for the reactor api.
2016-09-01 11:03:35 +02:00
Fedor Isakov 4b6ac48a41 Merging TreeForm model into the reactor solution.
Move unification lib tnd treeform api model to reactor solution.
Remove obsolete solution.
2016-09-01 11:03:35 +02:00
Fedor Isakov a27cdecc67 Renamings and refactorings in the logic api.
Use TreeForm name for the tree abstraction.
Rename Atom, Func etc. and the usages.
2016-09-01 11:03:21 +02:00
Fedor Isakov 9064c6bbb8 Minor fixes, code restructuring, fixing the dependencies, removing obsolete file. 2016-08-30 17:04:11 +02:00
Fedor Isakov b1ca25b235 Migrated to build 162.1310 2016-08-26 12:27:49 +02:00
Fedor Isakov f0184de4c5 Extracting the JCHR-related stuff to drop it later.
Cleaning up the obsolete modules.
Get rid of dependencies on JCHR stuff.
2016-08-25 13:48:02 +02:00
Fedor Isakov b1b7a85c39 Fix types aspect generation in the sampleLang lang. 2016-08-22 16:13:04 +02:00
Fedor Isakov 0018ee7154 Implementing types language aspect generation and runtime support. 2016-08-17 11:02:33 +02:00
Fedor Isakov 22c954f88e Logic and typechecking2 lang editors: updating colors and styles for better readability (cont'd) 2016-08-15 11:54:02 +02:00
Fedor Isakov 72463c7951 Auto-migrated to the new actions using build 162.1007. 2016-08-12 13:35:44 +02:00
Fedor Isakov 77375a946d Logic and typechecking2 lang editors: updating colors and styles for better readability. 2016-08-11 17:21:30 +02:00
Fedor Isakov ff065b0df6 Term list expression to avoid constructing lists with terms. Some editor improvements in logic and typesystem2 langs. 2016-08-09 12:14:52 +02:00
Fedor Isakov 6d37fc39b6 Typesystem2 language: new feature allowing the use of type declarations in constructing type terms. 2016-08-05 12:39:39 +02:00
Fedor Isakov 8ee9c2a8bb Typesystem2 language: support for type templates in the runtime.
Type declarations in the type table.
New "with context" statement for use when manipulating with types.
2016-07-28 12:43:41 +02:00
Fedor Isakov 17b0f4d0a7 Automatic lang version updates after migrating to EAP3. 2016-07-28 12:43:33 +02:00
Fedor Isakov 9f32f8bf42 Typesystem2 language: enable to use iterating parameter in the let block. Pseudo constraints "new type" and "as type".
Support for logical substitutions in pseudo constraints.
Application session passed as parameter to rule templates and methods.
Support for type templates in the runtime.
2016-07-28 12:41:53 +02:00
Fedor Isakov 77f07271af Remove obsolete code. 2016-07-01 12:44:49 +02:00
Fedor Isakov 89ff4ddbe6 Renamed the model j.m.lang.typesystem2.{runtime,generation} 2016-07-01 12:42:29 +02:00
Fedor Isakov 710bd28fd7 Auto-updated the mds files. Removed unused broken imports from models. 2016-06-30 09:44:17 +02:00
Fedor Isakov 0aee630b0a Setup memoizer before running the reactor. 2016-06-30 09:42:55 +02:00
Fedor Isakov 7fb44b7a6b Support for calling instance methods from rule templates 2016-06-24 14:36:23 +02:00
Fedor Isakov bc4d3a975e Support for feature getters in type table. 2016-06-10 14:28:48 +02:00
Fedor Isakov 1b5e55f4a6 Migrated to MPS 3.4 EAP2. 2016-06-08 13:46:19 +02:00
Fedor Isakov 2f69b52350 A feature in typesystem2 language: specify the value for a variable constraint argument. The variable gets assigned the moment constraint is matched against a rule's head. 2016-05-29 15:50:37 +02:00
Fedor Isakov a3d2d81048 New feature: constraint occurrence used as pattern in rule's head has a list of logicals to be bound on successful match. Export unification predicates to be applied. 2016-05-29 15:50:30 +02:00
Fedor Isakov a85baaff55 Refactor constraint and predicate creation into builders 2016-05-24 12:56:06 +02:00
Fedor Isakov 8bb7fea288 Fix memory leaks. 2016-05-10 11:25:36 +02:00
Fedor Isakov 86e6237c77 Simple memoization for repetative calculations while appying typechecking templates. 2016-04-15 15:53:45 +02:00
Fedor Isakov c2fb02a88e Support body alternation: multiple rule body parts correspond to alternatives (disjuncts). 2016-04-15 15:53:44 +02:00
Fedor Isakov ddb1d668c1 Support for body alternation in the reactor API. 2016-04-11 15:33:29 +02:00
Fedor Isakov 5bcf1ce3d6 Displaying failures as error nodes in the activation trace, navigate to the first failure. Minor fixes. 2016-04-04 16:03:36 +02:00
Fedor Isakov 7907fad349 Type declarations have references to type concept. Swith to using concept refs instead of conceptNode in the templates. Still relying on the "declaration node" of a concept. 2016-03-31 13:57:58 +02:00
Fedor Isakov 812accabd4 Switched from using conceptNode to concept type in rule templates. 2016-03-30 18:23:33 +02:00
Fedor Isakov 4d67bf4796 Automatically updated file after having opened the project with the latest build. 2016-03-18 19:22:26 +01:00