| 2006 June 13 |
Release v1.1:
This is a major release in terms of stability and functionality, with many application references:
- NEW:
Graphical Front-end is now available for eased configuration, running and building through simple GUIs
- IMPROV:
Documentation is clearer, more user-guiding and contains less overwhelming information.
- NEW:
Standard Makefiles can now be generated for both UNIX and Windows, as CASE tools can do it. Beside automatic file dependencies management, advanced and custom build options can be configured through GUI in a cross-platform way.
- NEW:
Advanced support for command line options through specific syntax. This includes generation of short help usage function, documentation function, the ability to organise sets of options in cascade (using the new external symbol feature), and finally the generation of Tcl/Tk forms to fully input, save and manage option values in a graphical way.
- NEW:
It can now be referred to a symbol defined in an external, not imported grammar using a writing like <grammar>.<symbol>. This avoids importing of grammars and increases modularity.
- NEW:
It can now be specified that a symbol or a constant shall not occurr using a writing like ! <symbol>.
- NEW:
Choices of constants or symbols are now supported. This allows to write much more concise grammars in some cases. For example, writing two rules which start with the different constant 'A' and 'B' can now be replaced with a single rule starting with ('A' | 'B').
- NEW:
It is now possible to specify how many times a symbol can occur (minimum and maximum)
- IMPROV:
When defining a symbol or a token extending another symbol or token, it is not necessary to specify the full namespace qualified name of the generated inherited symbol or token class.
It can now be specified that a symbol or token extends another symbol or token by using the keywords 'symbol' or 'token' instead of class. See the file.gsp file for example.
occurrence
- NEW:
There are many new .gsp grammars and examples coming with LLOOP by default.
- IMPROV:
Improved cross-platform compatibility of C++ generated code. Successfully tried and tested with gcc 3.4.5, 4.1.0 and most recent Visual C++ compiler.
- IMPROV:
Management of generated files greatly improved. Each generation project is associated with a generation directory. Any file that becomes useless in the directory are automatically cleaned up. All information related to the last generation is now stored inside the .gspc directory.
IMPROV:
Base classes, like for symbols, parsers and visitors, are groupped and defined
in the gsp namespace. Therefore, there is not a specific class generated for each input grammar anymore, but only one type. There is also a base class LLParser for all parser.
- BUG/IMPROV:
This release features many bug corrections. The API for symbols and parsers has also been improved and completed with much more services. For example, the root() function does not raise any exception anymore, but create it when it does not exist.
- BUG/IMPROV:
There are many new features brought to the extra components of the universal namespace. The useful File class component is now available for directory and file managements.
|