All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
- #4 The .dsl configuration file and the .ale source file must have the same base name
- #28 The interpreter ignores references to non-existing attributes or variables and calls to non-existing methods
- #38 The interpreter is not interrupted when an unexpected error occurs
- #39 Sirius' Behavior layer does not show dynamic information when .ale source files and the Ecore metamodel are located in different projects
- #51 Pure ALE classes are not handled by the type checker
- #64
null
cannot be assigned to variables - #67
Sequence
values can be assigned to variables which type isOrderedSet
and vice versa - #70 Paths to ALE resources (in .dsl files and projects' preferences) are not updated when the project is renamed
- #102 The editor shows an error when a method is used to define the range of a for-each loop
- #119 Cannot override static EOperations from a subclass
- #120 The
+=
operator cannot be used to concatenate two collections - #126 The interpreter evaluates an expression even if a subexpression produces an error
- #128 The interpreter allows to concatenate heterogeneous collections
- #149 Xtext validators are not resilient
- #151 Every EPackage found in project's dependencies is added to the environment
- #159 The editor shows all validation errors, even the ones that come from other ALE files
- #193 Enhance error reporting and detection of assignment on uninitialized variable or feature
- #60 An ALE Run Configuration is created when launching ALE through the contextual menu shortcut
- #86 The XMI model and the ALE entry point to execute are prompted when they can't be automatically inferred while launching the interpreter
- #86 The XMI model and the ALE entry point to execute can be set from the Launch Configuration Tab
- #92 The editor autocompletes attributes and methods of
self
- #94 The editor automatically switches to dark colors when Eclipse IDE is in dark theme
- #98 The New ALE Project wizard can be used to create ALE projects
- #110 The title of the ALE console is updated as the execution progresses
- #115 Multiple .ale source files can be taken into account when executing an ALE program
- #115 The ALE environment (the .ale source files and the .ecore metamodels) can now be stored in the project's preferences, allowing to get rid of the .dsl configuration file [breaking change]
- #115 The interpreter can be run by right-clicking on an ALE project
- #129 The editor warns when the
+=
and-=
operators ared used on theresult
variable in a void method - #131 The editor autocompletes attributes and methods of local variables and method parameters (support limited to model instances)
- #143 The eclipse-projectSet.psf makes easier to start collaborating on the project (File > Import... > Team > Team Project Set)
- #153 The editor shows a warning when editing an .ale source file that is not part of the project's ALE environment. A quick fix allows to automatically add the .ale source file to the project's ALE environment
- #169 The editor shows documentation about the open and behavior keywords on hover
- #169 The editor shows the fully qualified name of an open class on hover as well as information about its EPackage
- #93 More tokens are available to tailor editor's syntax coloring
- #94 The editor's dark theme has better colors
- #89 The bare
List<ParseResult>
objects are abstracted asDslSemantics
instances [breaking change] - #115 The .ale source files are generated in the
src-ale/
directory - #115 The .dsl configuration file is generated at the root of the project
- #124 The errors shown in the ALE console are now clean, red stacktraces with hyperlinks to source files
- #136 The public API is easier to use [breaking change]
- #141 Move to ANTLR 4.7.1
- #26 Use
ecore
andale
keys instead ofsyntax
andsemantics
in .dsl files [breaking change] - #56 The interpreter now affects a default value to variables declared without an initial one
- #3 The editor shows errors when a parameter of type Sequence is used in a method
- #10 The editor shows an error when a Sequence instance is used to defined the range of a for-each loop
- #20 The interpreter cannot resolve methods taking a Sequence as parameter
- #56 The interpreter crashes when a variable is declared without any initial value
- #88 The logo.standalone example project does not compile anymore
- #81 The editor shows an error when variables of incompatible types are used as operands of the
+=
and-=
operators - #81 The editor shows an error when a variable declared within a for-each loop is used where its type is forbidden
- #81 The editor shows an error when
result
is assigned a value which type is incompatible with method's return type - The
Dsl
class now exposes all the key/value mappings defined in the underlying .dsl configuration file
- #83 A new
ALEDynamicExpressionEvaluator
aimed at easing interpretation of single string expressions in a standalone environment
- Xtext-based editor
- Interpreter (executable from .dsl)
- Java API to execute the interpreter