Software Language Processing Suite at SourceForge.net
Software Language Processing Suite

Mission

The project facilitates exposition and comparison of approaches and techniques on language processing in a way that is relevant for CS students, teachers, scientists, engineers and practitioners.


Pages

Links


Structure

topics
fl
The Factorial Language that is used in the SLPS for prototyping various tools and approaches. Every subdirectory there is a different implementation of FL: Java, Haskell, Prolog, etc.
convergence
Grammar convergence tool (Language Convergence Infrastructure) and grammar convergence scenarios: Factorial Language, Java Language Specification, etc.
extraction
Grammar extractors: getting grammar knowledge in a form of BGF from ANTLR, DCG, Ecore, HTML, BNF dialects, source code, SDF, TXL, Rascal, XML Schema, …
recovery
Grammar recovery attempts that go beyond simple extraction: Grammar Recovery Kit, Grammar Hunter, ISO C#, VU Browsable Grammars, etc.
grammars
Extracted grammars that form the SLPS Zoo, SLPS Tank. Of many grammars located here, the most interesting ones are those of Ada, C, C++, C# and Java.
storage
Formats for storing language documentation and grammar syntax definitions: Language Document Format, BNF-like Grammar Format and similar topics. Work on metasyntax in progress.
investigation
Grammar analysis, metrics, visualisations, normalisations.
export
The reverse of extraction: mappers from BGF to elsewhere: pretty-printers, hypertext enablers, generators of Rascal and TXL, etc.
transformation
Grammar transformation and language document transformation, complete with test sets.
testing
Combinatorial test data generation framework and input data for and around the TestMatch project.
exercises
Lab exercises for the course Programming Paradigms and Formal Semantics.
parsing
Parsing-related materials for the same course (in Haskell).
semantics
Semantics-related materials for the same course (in Prolog).
documents
Language documents. Work in progress.
NielsonN07
Some encodings of semantics derived from Nielson and Nielson, 2007 (and prior versions). In particular, the denotational semantics of While language.
apimigration
API migration. Work in progress.
java
Legacy.
shared
xsd
XML Schema definitions for various DSLs used in SLPS: BTF, BGF, XBGF, LDF, XLDF, LCF, etc.
xsl
eXtensible Stylesheet Language transformations for mappers and extractors. Mostly populated with BGF-to-elsewhere mappings, but also Ecore-to-BGF, TXL-to-BGF and LDF-to-elsewhere ones are found here.
prolog
Prolog sources for some extractors and for the XBGF engine (as well as any other future Prolog sources).
python
Python sources for many different SLPS tools, of which the most interesting ones are perhaps LCI and XLDF.
tools
Shell scripts that wrap SLPS tools in a user-friendly way. People who use SLPS frequently are advised to add this directory to their system PATH.
generators
Shell wrappers for BGF-to-XBGF generators.
wrappers
Shell wrappers for running parsers and evaluators in order to generalize their interface for the LCI. These wrappers are rarely, if ever, executed by a human.
edd
EBNF Dialect Definitions. Work in progress.
download
Automated installers for third party software which is needed for SLPS stuff to work. ANTLR, FOP, JastAdd, MSV, ElementTree, GDK, PyParsing, etc.
www
Web content for this page, the FAQ, the Zoo, the XBGF manual, etc. The makefile is configured to be easily used by VZ and RL, so it seems more reasonable to contact one of them if you want anything changed there.

Statistics

Access summary during last two months

The page is maintained by Dr. Vadim Zaytsev a.k.a. @grammarware. Last updated: August 2011.
XHTML 1.0 CSS 2.1