Releases: qwertie/ecsharp
Releases · qwertie/ecsharp
Several new macros; LLLPG & LESv3 have been refined
Please visit the following links to learn about recent changes:
Loyc.Essentials.dll split into Loyc.Essentials.dll and Loyc.Math.dll. Minor API changes.
Please visit the following links to learn about recent changes:
Comments and newlines are now preserved. Some APIs changed.
Please visit the following links to learn about recent changes:
Added `#ecs`, LLLPG now supports `any token`
Please visit the following links for more information
1.7.6: Quick binding with `::`, ANTLR syntax style for LLLPG
Please visit the following links regarding
The main new features are
#useSequenceExpressions;
, which is used near the top of an EC# file to enable the quick-bind operator::
and in-situ declaration ofout
andref
variables as inint.TryParse(s, out int x)
- LLLPG now supports an ANTLR-style input mode in which grammars can look very similar to ANTLR grammars (see here for more information)
LeMP & LLLPG: Working Really Smoothly Now
- Unveiled the Macro Reference Manual
- Added macros:
includeFile
(aka#include
),#set
(aka#setScopedProperty
),#snippet
(aka#setScopedPropertyQuote
),#get
(aka#getScopedProperty
), andreplacePP
(replace
plus preprocessing of initial parameters). MacroProcessorTask
introduces two global-scoped Symbols,#inputFolder
and#inputFile
.- Eliminated
#haveContractRewriter
and#setAssertMethod
macros, since you can now just use#set #haveContractRewriter
and#snippet #assertMethod = AssertMethod;
- Renamed
on_error_catch
toon_throw_catch
so that it's made of keywords. - Code contracts:
- Introduced
[ensuresFinally]
, which checks a postcondition infinally
- Changed Contract Attribute error messages to match MS Code Contracts
- Code contract attributes now support lambda functions
- Introduced
- Changed public interface of
LeMP.Compiler
to make it a bit more flexible and easier to use ParsingService
: added global language "registration" feature.- Loyc.Essentials: added
TryGetValue
extension method forIReadOnlyDictionary
. - Misc., e.g. renamed some members of
Loyc.Ecs.Parser.TokenType
- Bug fix to
IMacroContext
: made macro dictionary fully immutable
Instructions: Please extract the zip file to its own folder. Run mono LeMP.exe --editor
to try it out on Linux. To use in Visual Studio, run LoycFileGeneratorForVs.exe to install VS Custom Tool, and run LoycSyntaxForVs.vsix to install the syntax highlighter.