Spoofax 2.5.17 (06-07-2022)¶
Spoofax 2.5.17 contains the incremental Statix solver, Stratego 2, and several small improvements and dependency updates.
Changes¶
- Fix issues with the
implodePT
andsdf2table
Docker substitution scripts for MacOS 64-bit - Update Apache Commons Compress dependency to 1.21
- Update Apache Commons IO dependency to 2.11.0
- Update Guice dependencies to 4.2.3
- Update Guava dependency to 30.1
- Add Guava FailureAccess dependency, required by Guava >= 27.0
Statix¶
- Integrate the Incremental Solver in Spoofax.
- Add menu options to inspect Term Properties.
- Fix issue where edges were closed twice in incremental solver when having debug log enabled.
- Deprecate the
concurrent
property in favor of themode
(for language projects) ormodes
(for example projects) properties. - Allow singleton properties to be set to the same value multiple times.
- Reduce number of cascading messages (can be disabled using
runtime.statix.suppress-cascading-errors: false
). - Show delay reasons and prevented completions on messages for unsolved constraints.
- Add
eq(term)
lambda sugar. - Add
runtime.statix.test-log
option to show Statix test logging in the console. - Fix bug where solver with return-on-first-error enabled would also return if the first failing constraint had a non-error message kind.
- Fix several serialization issues.
Stratego¶
- Stratego 2 was introduced as a new meta-language based on Stratego 1, the incremental compiler for Stratego, and the gradual type system developed for Stratego, packaged as one project under a single name. There is a migration guide from Stratego (1) to Stratego 2 under the How-Tos. This gradually typed version of Stratego comes with a standard library that also has gradual types. The editor will give underline where casts are inserted with notes.
- Stratego 2: Added the
<*
("left try-some") strategy combinator that tries to apply the left strategy, then the right, and only fails if both fail.a <* b
is sugar fora < b <+ id + b
. - Origin tracking is now documented in a page in the Background section of the website.
SDF¶
- Signature generator does not generate signatures for files whose module name ends with
_StrategoMix
.
Downloads¶
Eclipse plugin¶
Premade Eclipse installations¶
With embedded JRE:
- macOS 64-bit with embedded JVM
- Linux 64-bit with embedded JVM
- Windows 64-bit with embedded JVM
- Windows 32-bit with embedded JVM
Without embedded JRE:
Update site¶
- Eclipse update site:
https://artifacts.metaborg.org/content/unzip/releases-unzipped/org/metaborg/org.metaborg.spoofax.eclipse.updatesite/2.5.17/org.metaborg.spoofax.eclipse.updatesite-2.5.17-assembly.zip-unzip/
- Eclipse update site archive
IntelliJ plugin¶
- IntelliJ update site:
https://artifacts.metaborg.org/service/local/artifact/maven/redirect?r=releases&g=org.metaborg&a=org.metaborg.intellij.dist&p=zip&v=2.5.17
- IntelliJ update site archive
Command-line utilities¶
Core API¶
- Spoofax Core Uber JAR
- Spoofax Core uber Maven artifact:
org.metaborg:org.metaborg.spoofax.core.uber:2.5.17
StrategoXT¶
Maven artifacts¶
Maven artifacts can be found on our artifact server.
The Maven version used for this release is 2.5.17
.
Last update:
October 1, 2024
Created: October 1, 2024
Created: October 1, 2024