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.
pyratemp is probably (one of) the smallest complete template-engines for Python (with about 500 LOC). It has a very small set of special syntax in the templates. This reduces complexity and the probability of bugs and lead to an easy-to-use and intuitive user-interface. It uses embedded Python-expressions (in a "sandbox"), is well documented, has full Unicode-support, and produces very good error-messages, which is very useful when creating new templates.
CIL is a frontend for the C programming language which facilitates program analysis and transformation. CIL will parse and typecheck a program, and compile it into a simplified subset of C. For example, in CIL, all looping constructs are given a single form and expressions have no side effects. This reduces the number of cases which must be considered when manipulating a C program. CIL has been used for a variety of projects, including CCured, a tool which makes C programs memory safe. It supports ANSI C, as well as most of the extensions of the GNU C and Microsoft C compilers. A Perl script acts as a drop-in replacement for either gcc or Microsoft's cl, and allows merging of the source files in your project. Other features include support for control-flow and points-to analyses.
aime is a simple, C-like programming language and an interpreter, both designed to be embeddable in applications. The language is straightforward, trivial, and direct. Its syntax is simpler than that of C, while still providing for full object management, higher order functions, and references. The interpreter is secure and expressive, allowing comprehensive control over program execution and providing powerful methods of application integration.
The Spread Toolkit provides tools for developing reliable and robust distributed applications ranging from collaboration tools to fault-tolerant database servers to replicated Web servers. It consists of a daemon which provides multicast messaging, reliability, ordering, and membership services, and a library which applications link with. Spread provides a simple API for writing group applications and is designed to provide high performance for local and wide area networking applications.
Seed7 is a general purpose programming language. It is a higher level language compared to Ada, C++, and Java. In Seed7, new statements and operators can be declared easily. Functions with type results and type parameters are more elegant than a template or generics concept. Object orientation is used when it brings advantages and not in places when other solutions are more obvious. Although Seed7 contains several concepts of other programming languages, it is generally not considered as a direct descendant of any other programming language.