Racket (formerly PLT Scheme) is a programming language suitable for implementation tasks ranging from scripting to application development, including GUIs, Web services, etc. It includes the DrRacket programming environment, a virtual machine with a just-in-time compiler, tools for creating stand-alone executables, the Racket Web server, extensive libraries, documentation for both beginners and experts, and more. It supports the creation of new programming languages through a rich, expressive syntax system. Example languages include Typed Racket, ACL2, FrTime, and Lazy Racket.
Dragon produces a consequent, object-oriented, integrated scanner and parser solution and scales for very large grammar definitions. It provides LR(1) and LALR grammar analysis methods and combines the lexical and syntactical analysis and the corresponding code generation. Either C++ or Java code can be generated. The resulting parser code is readable and clean, and can easily be integrated into any C++ or Java application.
Snippetory is a general Java template engine based on passive templates. In passive templates, template code and logic are clearly separated from each other. The templates contains very simple mark up. By removing logic, templates are directly accessible, fully parametrized, and free of context, and can easily be reused. Navigation, code competition, and structuring of the code with methods and classes are supported.
Marathon is a GUI test tool that allows you to play and record scripts against a Java Swing UI. It's written in Java, and uses Python and Ruby as its scripting language (the emphasis being on an extremely simple, readable syntax that customers/testers/analysts feel comfortable with). Marathon includes a recorder, editor, player, and debugger to simplify working with test scripts.
Styx is a scanner/parser generator designed to address some shortcomings of the traditional lex/yacc combination. It has unique features like automatic derivation of depth grammar, production of the derivation tree, including it's C interface, preservation of full source information, pretty printing to faciliate source-source translation, and persistence to aid rapid interpreter writing. It also supports reentrancy. Styx works well under several different OSes, including serveral Unixes, DOS, and Windows.
The libjit library implements just-in-time compilation functionality. Unlike other JITs, this one is designed to be independent of any particular virtual machine bytecode format or language. Currently, libjit is used as the JIT backend for the DotGNU Portable.NET project (in addition to its default CVM backend). However, the hope is that other Free Software projects can use this library rather than spending large amounts of time writing their own JIT from scratch.