Fedor Isakov
|
255b7061f7
|
Reorganize models/packages, restructure code components responsible for program building/evaluation.
|
2019-02-15 17:15:17 +01:00 |
Fedor Isakov
|
2f8ff698b3
|
Minor refactorings in program producing code. Consolidating everything related to program producing into a single package.
|
2019-02-15 17:15:16 +01:00 |
Fedor Isakov
|
83e5ce8c26
|
Switch to the latest conreactor version.
|
2019-02-15 17:15:16 +01:00 |
Fedor Isakov
|
a240246daa
|
Ensure failures don't stop program evaluation, recover failure always at top level (when processing "main/0" constraint).
Keep track of principal origins to be used as points of failure.
Minor code cleanup/refactoring.
|
2019-02-06 12:57:47 +01:00 |
Fedor Isakov
|
49a381936d
|
Enable to specify custom matching strategy when asserting that locally inferred types are the same.
|
2019-02-02 16:09:39 +01:00 |
Fedor Isakov
|
5b255f2a02
|
Fix references and introduce languages engaged on generation to keep compat. w/191 EAP.
|
2019-02-01 11:31:35 +01:00 |
Fedor Isakov
|
92faa816f8
|
Drop superfluous log statements.
|
2019-01-31 23:47:11 +01:00 |
Fedor Isakov
|
24ac5447b3
|
Make ErrorAnnotation able to suppress errors.
|
2019-01-31 11:44:07 +01:00 |
Fedor Isakov
|
9243c00c65
|
Fix issues found by model checker (ex typesystem).
|
2019-01-31 11:30:02 +01:00 |
Fedor Isakov
|
dc1965fdc9
|
Introduce a test for running model checker on all models in the project as a part of CI.
|
2019-01-31 11:30:02 +01:00 |
Fedor Isakov
|
52348b2b38
|
Make comment look nicer with standard C-style representation.
Make Handler, MacroTable and their contents commentable.
|
2019-01-27 23:33:02 +01:00 |
Fedor Isakov
|
613e895d17
|
Fix constraint rules editor to display "activate" section always.
Constraint rule to be entered with "on" keyword.
|
2019-01-27 22:56:07 +01:00 |
Fedor Isakov
|
551a015ada
|
Fix unification predicate not doing occurrs check on tell.
|
2019-01-26 13:52:10 +01:00 |
Fedor Isakov
|
934f98b717
|
Fix UnificationPredicate to delegate logical union logic to the underlying implementation.
Test unification failure on cycle detected.
|
2019-01-25 15:02:03 +01:00 |
Fedor Isakov
|
e2ea78ef9e
|
Improve layout of constraints and dataforms. Get rid of unnecessary anchors and hacks.
|
2019-01-21 11:20:30 +01:00 |
Fedor Isakov
|
27681ef80c
|
Switch substitution to work using equals predicate instead of equals() java method. Testing substitution on tricky cases.
|
2019-01-15 20:09:16 +01:00 |
Fedor Isakov
|
0b9fc55817
|
Make equals predicate respect trivial bindings: [X -> Y] where X is unified with Y. Tests.
|
2019-01-15 19:04:07 +01:00 |
Fedor Isakov
|
161f00355d
|
Fix equals predicate: make it conform to general contract of unification without additional bindings. Testing ask/tell eq.
|
2019-01-14 12:25:27 +01:00 |
Fedor Isakov
|
6aa965c96c
|
Ignore commented out nodes while applying templates. Use node pointer to report locations of failed tests.
|
2019-01-13 15:14:14 +01:00 |
Fedor Isakov
|
197f09fb2b
|
Apply automatic migrations in the root project
|
2019-01-13 14:27:43 +01:00 |
Fedor Isakov
|
50487cd41c
|
Fix unification predicate implementation to properly process non-term arguments. Cleanup the code.
|
2019-01-13 14:26:35 +01:00 |
Fedor Isakov
|
29a44eac5d
|
Introduce automatic migration from eq to uni for basic scenario: logical on the left
|
2019-01-13 14:26:35 +01:00 |
Fedor Isakov
|
a46937b128
|
Change semantics of EqualsPredicate: ask returns true iff values are equal or the logicals are the same, tell throws exception if not
|
2019-01-13 14:26:35 +01:00 |
Fedor Isakov
|
16153a23d1
|
Correctly display value assigned to a logical.
|
2019-01-09 13:01:57 +01:00 |
Fedor Isakov
|
bcb8efa653
|
Make editor for DataForm more usable, get rid of hacks in the layout. Introduce NewLineAttribute to manually insert new lines. Deprecate ListRole.
|
2019-01-09 13:01:37 +01:00 |
Fedor Isakov
|
cc4b335286
|
Introduce checking for instances of RuntimeErrorType during tests. Refactor test typechecking launcher.
|
2019-01-04 17:47:44 +01:00 |
Fedor Isakov
|
c5daa24ee8
|
Deprecate ListLiteral and ListExpression concepts (only used in BL typesystem)
|
2019-01-04 17:44:32 +01:00 |
Fedor Isakov
|
d74ad951e3
|
Drop a hack in ListNode implementation that would disallow nested lists
|
2019-01-04 17:43:37 +01:00 |
Fedor Isakov
|
63da3a7a6c
|
Minor optimization of terms representation in UI: hide uninitialized values
|
2019-01-03 17:16:47 +01:00 |
Fedor Isakov
|
d5ed9d8fa0
|
Eliminate duplicate language aspect objects from lookup
|
2019-01-02 18:16:28 +01:00 |
Fedor Isakov
|
c87ca87a49
|
Cleanup in tests
|
2018-12-30 16:41:28 +01:00 |
Fedor Isakov
|
b4693aac3c
|
Switch to the new conreactor version.
|
2018-12-28 11:57:27 +01:00 |
Fedor Isakov
|
cb1ea46af7
|
Typechecking templates: specify data types for logicals that are used for values instead of term.
|
2018-12-28 11:57:26 +01:00 |
Fedor Isakov
|
d74ec1d2f8
|
Introduce support for unification variables of arbitrary type, not just terms. Minor refactoring and cleanup.
|
2018-12-28 11:56:27 +01:00 |
Fedor Isakov
|
82b409cb86
|
Fix SubstituteUtil to match pattern using equals() instead of unification. Tests for SubstituteUtil.
|
2018-12-14 13:35:36 +01:00 |
Fedor Isakov
|
c22520fcc8
|
Fix EQ solver returning wrong value for two distinct free logicals. Testing EQ and UNI solvers on free logicals.
|
2018-12-13 18:24:53 +01:00 |
Fedor Isakov
|
3e38d4aedd
|
Record a warning on local type inference yielding mismatched type in case ensureLocal flag is set to false.
|
2018-11-29 12:47:34 +01:00 |
Fedor Isakov
|
f0bb068750
|
Fix instances of removed concepts and broken API calls after migration to 2018.3. Rebuild project.
|
2018-11-28 16:48:59 +01:00 |
Fedor Isakov
|
19ce84f7ef
|
Switch to 2018.3 RC. Apply all migrations.
|
2018-11-28 16:48:59 +01:00 |
Fedor Isakov
|
f095c64abe
|
Rename 'isBound' predicate to 'isAssigned' (alias only, concept to be renamed still).
|
2018-11-27 15:10:48 +01:00 |
Fedor Isakov
|
8bc26f6cdd
|
Shorten the presentation of user terms in actiovation trace view. Filter out wildcards and empty lists.
|
2018-11-27 15:10:48 +01:00 |
Fedor Isakov
|
939262b4a5
|
Fix memleak by unregistering mouse listeners on treetable component dispose.
|
2018-11-27 15:10:14 +01:00 |
Fedor Isakov
|
9c4dad3e91
|
Enable use of input node in macro body. Allow specifying a subset of macro parameters in macro call.
|
2018-11-20 22:39:30 +01:00 |
Fedor Isakov
|
bfcf89e3df
|
Use stack to implement storage of template application session objects
|
2018-11-20 22:39:30 +01:00 |
Fedor Isakov
|
6778fab625
|
Use index to filter nodes on which FailureHandler should report error and clear failed state.
|
2018-11-20 22:39:30 +01:00 |
Fedor Isakov
|
fc7b9d6caf
|
Always report a failure during evaluation as a warning
|
2018-11-20 22:39:29 +01:00 |
Fedor Isakov
|
33c3f2ba03
|
Wrap text constructing code into a try-catch when called from UI
|
2018-11-20 22:39:29 +01:00 |
Fedor Isakov
|
15fcfd8044
|
Temporarily disable checking of constraint parameters's RT types. LateExpression to support RT type.
|
2018-11-20 22:39:29 +01:00 |
Fedor Isakov
|
992fa68bff
|
Ensure that if all the advised errors have been triggered during typechecking.
|
2018-11-20 22:39:29 +01:00 |
Fedor Isakov
|
c8a56558ae
|
Always use trampoline as blocking scheduler. Avoids deadlocks when two threads wait on read lock, and EDT requests write.
|
2018-11-06 14:39:01 +01:00 |
Fedor Isakov
|
3aeb5a8863
|
Fix unnecessary dependencies of coderules generator module.
Add missing annotation language to plugin bundle.
|
2018-11-05 14:49:59 +01:00 |
Fedor Isakov
|
06f95c5870
|
Update build solution to reflect latest changes.
|
2018-11-04 13:10:40 +01:00 |
Fedor Isakov
|
18fbdbd50b
|
Use error annotation in tests instead of simply relying on typechecking failure.
|
2018-11-04 13:10:40 +01:00 |
Fedor Isakov
|
0992b8358e
|
Annotation language feature: annotate a node with expected error.
|
2018-11-04 13:10:40 +01:00 |
Fedor Isakov
|
6788bcf7a1
|
Switch to latest reactor, update the API calls. Support EvaluationFailure and FailureHandler.
|
2018-11-04 13:10:40 +01:00 |
Fedor Isakov
|
0282f28a5c
|
Bring reporting in line with MPS core reporting facilities. Cleanup the API.
|
2018-11-04 12:54:32 +01:00 |
Fedor Isakov
|
f7d2129d37
|
Drop unused class
|
2018-09-11 18:40:15 +02:00 |
Fedor Isakov
|
7bc1ea7262
|
Auto-updated descriptors
|
2018-09-11 17:05:50 +02:00 |
Fedor Isakov
|
075b34e24d
|
Replacing usages of deprecated concepts. Minor fixes.
|
2018-09-11 17:01:45 +02:00 |
Fedor Isakov
|
4ec1656b1b
|
Introduce repository expression to provide context repository in rules.
|
2018-09-11 15:36:12 +02:00 |
Fedor Isakov
|
f44de16c3f
|
Introduce a method to access the context repository into Reporting interface.
|
2018-09-11 12:22:47 +02:00 |
Fedor Isakov
|
6287a1147e
|
Fix missing imports
|
2018-09-11 12:20:50 +02:00 |
Fedor Isakov
|
ec38be682e
|
Delete obsolete artefacts
|
2018-08-19 17:32:59 +02:00 |
Fedor Isakov
|
8cacd9c326
|
Ensure terms are copied "properly" without breaking Path's contract. Pending optimization.
|
2018-08-07 11:50:05 +02:00 |
Fedor Isakov
|
c8e0464739
|
Keep test_gen directory to avoid failed builds
|
2018-08-03 11:48:36 +02:00 |
Fedor Isakov
|
98dfe30756
|
Resaved all models
|
2018-08-03 11:48:36 +02:00 |
Fedor Isakov
|
78764af3dc
|
Ensure all rule builders within a single rule template have unique tags
|
2018-08-03 11:48:36 +02:00 |
Fedor Isakov
|
d26805db7d
|
Switch to the latest version of reactor lib 0.9.1
|
2018-08-03 11:48:36 +02:00 |
Fedor Isakov
|
a710832dbf
|
Avoid passing null value to a method not expecting it.
|
2018-07-22 19:13:14 +02:00 |
Fedor Isakov
|
e2a68b4012
|
Fixes necessary for compatibility with MPS 2018.2
|
2018-07-22 16:51:10 +02:00 |
Fedor Isakov
|
0bacffb611
|
Move type setting operation to typechecking lang.
|
2018-07-22 11:09:49 +02:00 |
Fedor Isakov
|
1a52d7f96a
|
Auto-updated descriptors.
|
2018-07-22 10:37:02 +02:00 |
Fedor Isakov
|
b340e6ce48
|
Cleanup generator dependencies.
|
2018-07-21 13:29:40 +02:00 |
Fedor Isakov
|
c7cc97fffb
|
Rename reporting runtim solution.
|
2018-07-21 13:29:40 +02:00 |
Fedor Isakov
|
ea9919f38a
|
Bring the hierarchy of DataForm concepts in line with the runtime.
Merge DataForm constructors into logic language.
Repackaging logic runtime.
Drop obsolete code.
|
2018-07-21 13:29:22 +02:00 |
Fedor Isakov
|
3791a3b216
|
Auto-updated descriptors.
|
2018-07-20 10:51:53 +02:00 |
Fedor Isakov
|
0a76533f33
|
Fix paths to images.
|
2018-07-19 15:17:06 +02:00 |
Fedor Isakov
|
814baf4bce
|
Update readme files.
|
2018-07-19 15:12:34 +02:00 |
Fedor Isakov
|
1c33ddca9a
|
Configure the dependency on conreactor to be resolved through local maven repo. Make travis install reactor libs locally.
|
2018-07-19 10:52:03 +02:00 |
Fedor Isakov
|
e29a0576e2
|
Rename the root project and artifacts to "coderules".
|
2018-07-18 15:54:52 +02:00 |
Fedor Isakov
|
77b578d30c
|
Add a dependency on workflow.preset to in order to fix command-line build. Rename ant targets when importing to clearly separate tasks.
https://youtrack.jetbrains.com/issue/MPS-25921
|
2018-07-17 15:09:47 +02:00 |
Fedor Isakov
|
c12bf0d96a
|
Ensure extracted baseLanguageExt stuff can be built from command line.
|
2018-07-17 15:09:47 +02:00 |
Fedor Isakov
|
8528876d2a
|
Include build module into deployed set.
|
2018-07-16 19:05:17 +02:00 |
Fedor Isakov
|
473644e389
|
Extract baseLanguageExt and its related tests to a separate project.
|
2018-07-16 18:56:36 +02:00 |
Fedor Isakov
|
4f6b8a002a
|
Auto-updated descriptors. (Again!)
|
2018-07-16 16:40:09 +02:00 |
Fedor Isakov
|
4f063cd261
|
Update test language for typechecking. Re-implement all typechecking tests using test language. Drop dependency on baseLanguageExt and samples.
|
2018-07-16 16:39:13 +02:00 |
Fedor Isakov
|
24bcd0426c
|
Ensure conflicting queries are reported as error.
|
2018-07-16 16:17:52 +02:00 |
Fedor Isakov
|
8b758be83e
|
Ensure node's own language gets included into the rules scope for application.
|
2018-07-16 13:45:00 +02:00 |
Fedor Isakov
|
d4477c519b
|
Auto-updated descriptors.
|
2018-07-16 13:44:02 +02:00 |
Fedor Isakov
|
d2de6eea33
|
Return baseLanguagExt as dependency of test modules in order to fix tests.
|
2018-07-14 17:22:32 +02:00 |
Fedor Isakov
|
79c02d2b00
|
Cleaning up dependencies in an attempt to produce a workable build.xml that doesn't break gradle.
|
2018-07-14 17:22:14 +02:00 |
Fedor Isakov
|
2b2fa47b57
|
Extract baselanguageExt sample into separate project.
|
2018-07-14 17:22:07 +02:00 |
Fedor Isakov
|
92c6ba3e12
|
Restructuring the project: consolidate code, moving samples away.
|
2018-07-14 17:22:07 +02:00 |
Fedor Isakov
|
fb27f1ddf2
|
Ensure eval() supports void and non-boolean expressions. Allow eval in guard. Fix generation of operations from collections lang.
|
2018-07-10 14:14:08 +02:00 |
Fedor Isakov
|
a18e86bbc5
|
Fix presentation of non-DataForm values.
|
2018-07-10 14:14:08 +02:00 |
Fedor Isakov
|
4dfb676349
|
Ensure the order of handlers corresponds with the "extends" relation. The handler being extended has lower priority.
|
2018-07-02 11:27:55 +02:00 |
Fedor Isakov
|
0ddd0fcaa1
|
Introduce "principal" flag for rule templates. A principal template is excluded from processing as "required".
|
2018-07-02 11:27:55 +02:00 |
Fedor Isakov
|
387e8aab31
|
Updated solution dependency.
|
2018-06-24 23:02:34 +02:00 |
Fedor Isakov
|
ab5e641c6b
|
Beautifying coderules editor.
|
2018-06-21 13:45:20 +02:00 |
Fedor Isakov
|
784b4ca810
|
Support launching control flow query with trace. Fix navigating to source location from trace view. Add shortcuts to controlflow actions.
|
2018-06-21 11:41:11 +02:00 |
Fedor Isakov
|
2cc6d44705
|
Extract reusable stuff from typechecking UI plugin into coderules UI.
|
2018-06-16 13:08:24 +02:00 |
Fedor Isakov
|
b4d0ab73bb
|
Initial boilerplate support for launching controlflow queries. Some refactorings to further uncouple coderules-related stuff.
|
2018-06-15 14:55:44 +02:00 |
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
|
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 |