aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
...
| * refactor: simplify module name inferenceLibravatar Kristóf Marussy2024-02-04
| | | | | | | | | | We never need to infer names for modules not added by import, because importing a problem (i.e., a Resource manually added into the ResourceSet) is not allowed.
| * feat: filesystem-level import resolutionLibravatar Kristóf Marussy2024-02-04
| | | | | | | | | | Modules without an explicitly declared name get a name automatically inferred from their path.
| * feat(language): import resolutionLibravatar Kristóf Marussy2024-02-03
| |
| * refactor(language): name disambiguationLibravatar Kristóf Marussy2024-02-02
| | | | | | | | | | | | * Use fully qualified names starting with :: (as in C++) to unambiguously refer to an element. * Name shadowing within modules.
| * refactor: serialize solutions as modulesLibravatar Kristóf Marussy2024-01-31
| |
| * feat(language): validate module isolationLibravatar Kristóf Marussy2024-01-31
| |
| * refactor(language): module and node declarationsLibravatar Kristóf Marussy2024-01-31
| | | | | | | | | | | | | | | | * New default file extension: .refinery (.problem is also supported). * Add module keyword for self-contained modules. * Rename indiv declarations to atom declaration. * Add node and multi declarations for explicitly declared nodes and multi-objects, respectively.
| * fix(build): avoid cyclic dependencyLibravatar Kristóf Marussy2024-01-31
|/ | | | | | IntelliJ can handle dependencies between test configurations going in the reverse direction compared to dependencies between main configurations, but Eclipse can't. Manually copy some code over to break the reverse dependency.
* chore(deps): bump dependenciesLibravatar Kristóf Marussy2024-01-30
|
* chore(deps): bump dependenciesLibravatar Kristóf Marussy2024-01-07
|
* Merge pull request #51 from kris7t/color-identifiersLibravatar Kristóf Marussy2024-01-04
|\ | | | | Color identifiers
| * feat(web): toggle identifier coloringLibravatar Kristóf Marussy2024-01-03
| |
| * refactor(web): subtler error predicate highlightLibravatar Kristóf Marussy2024-01-03
| |
| * feat(web): color identifiers and nodesLibravatar Kristóf Marussy2024-01-03
| | | | | | | | | | We use a palette-based coloring strategy, where each class and enum gets a color from
| * refactor: matching node names in CLI and webLibravatar Kristóf Marussy2024-01-01
|/
* Merge pull request #50 from kris7t/generator-roundtripLibravatar Kristóf Marussy2023-12-25
|\ | | | | Round-trip model serialization and command line application
| * refactor(generator): scope overridesLibravatar Kristóf Marussy2023-12-25
| |
| * feat: command line model generatorLibravatar Kristóf Marussy2023-12-24
| |
| * chore(deps): bump dependenciesLibravatar Kristóf Marussy2023-12-24
| |
| * fix(language): unambigous reference serializationLibravatar Kristóf Marussy2023-12-24
| |
| * feat: solution serializerLibravatar Kristóf Marussy2023-12-24
| |
| * refactor(language): use file extension providerLibravatar Kristóf Marussy2023-12-22
| |
| * feat: state-based store for cross referencesLibravatar Kristóf Marussy2023-12-08
|/ | | | | | | Efficiently store cross references even if default ref(*, *): false. Uses propagation rules instead of view queries to reason about type constraints and multiplicity.
* chore: upgrade to Eclipse 2023-12Libravatar Kristóf Marussy2023-12-08
| | | | | | | Updates references to Eclipse in documentation (but IntelliJ is the preferred editor now). Also fixes incompatibilities with the Eclipse compiler.
* fix: typoLibravatar Kristóf Marussy2023-12-05
|
* chore(deps): Java 21Libravatar Kristóf Marussy2023-12-03
| | | | Also bumps other dependencies.
* fix: lower multiplicity objectiveLibravatar Kristóf Marussy2023-12-01
| | | | We were spuriously counting lower multiplicity errors for non-existent objects.
* Merge pull request #48 from kris7t/validatorLibravatar Kristóf Marussy2023-11-19
|\ | | | | Improve content assist and validator
| * feat(langauge): validate exists and equalsLibravatar Kristóf Marussy2023-11-19
| |
| * feat(language): arity validationLibravatar Kristóf Marussy2023-11-19
| |
| * fix: upper and lower scopesLibravatar Kristóf Marussy2023-11-19
| | | | | | | | | | | | | | | | | | Make sure the scope bound guides the best-first search and is always obeyed even if it can't be fully represented using the scoped partial model abstraction. For representable bounds (classes and unary predicate that are always fully knwon to be false or true in the initial model) this leads to duplicated computations.
| * chore(deps): bump dependenciesLibravatar Kristóf Marussy2023-11-19
| |
| * build: silence test-fixtures publication warningLibravatar Kristóf Marussy2023-11-17
| |
| * fix: contains assertionsLibravatar Kristóf Marussy2023-11-17
| |
| * feat(language): opposite reference validationLibravatar Kristóf Marussy2023-11-17
| |
| * fix: scope upper boundsLibravatar Kristóf Marussy2023-11-17
| |
| * refactor(language): opposite content assistLibravatar Kristóf Marussy2023-11-17
| | | | | | | | Only show references that may plausibly appear in an opposite declaration.
| * feat: predicates as reference typesLibravatar Kristóf Marussy2023-11-17
| | | | | | | | | | | | | | | | | | | | Now unary predicates may be used as types for cross-references. This might create circular references between predicate, but no differently than when the user manually creates predicates with circular references. The reference types of containment and container references still have to be classes, because we use the class hierarchy to encode contained types.
| * feat(language-ide): content assist filteringLibravatar Kristóf Marussy2023-11-17
| |
| * feat(language): validate unique namesLibravatar Kristóf Marussy2023-11-17
| |
| * feat(langugage): detect ambiguous referencesLibravatar Kristóf Marussy2023-11-17
|/
* build: prepare for Maven publicationLibravatar Kristóf Marussy2023-11-17
|
* Merge pull request #47 from kris7t/generator-facadeLibravatar Kristóf Marussy2023-11-03
|\ | | | | Generator facade
| * refactor: smenatics and facadesLibravatar Kristóf Marussy2023-11-03
| | | | | | | | | | Also moves model metadata into language-web, since we only use it on the frontent.
| * refactor(langauge-web): use generator facadesLibravatar Kristóf Marussy2023-11-03
| |
| * feat: model semantics facadeLibravatar Kristóf Marussy2023-11-03
| |
| * feat: model generator facadeLibravatar Kristóf Marussy2023-11-03
|/
* refactor(interpreter): aggreagator batchingLibravatar Kristóf Marussy2023-10-26
| | | | | | | | | | | | | Optimize calls to potentially costly aggregators by only extracting the value from a stateful aggregator when it is needed by subsequent RETE nodes. This optimization only works with timeless evaluation and delete-and-rederive evaluation disabled, i.e., only for queries without any recursion. Potentially, it could also be extended to other mailboxes if needed. We replace the BehaviorChangingMailbox of ColumnAggregatorNode with a DefaultMailbox to force update batching. Batched updates only extract the value from the aggregator when it has been already updated with all received tuples.
* chore(deps): dedupe Yarn dependenciesLibravatar Kristóf Marussy2023-10-20
|
* Merge pull request #46 from ↵Libravatar Kristóf Marussy2023-10-20
|\ | | | | | | | | graphs4value/dependabot/npm_and_yarn/babel/traverse-7.23.2 build(deps): bump @babel/traverse from 7.22.10 to 7.23.2