Alma is a software workshop for modeling and analyzing. It reads several sources (languages, models, etc.), helps you design for object-oriented modeling (definition of classes, relations, patterns, etc.), modifies the structure and the code, and outputs new sources, documentation, diagrams, etc. It is designed for object-oriented modeling (definition of classes and relations) and for migrating code in older languages. It meets two needs, offering a simplified software modeling workshop for small projects and making it easier to do rewrites, ports, and encapsulation of non-OO code.
AMC is a programmable compiler/preprocessor. It has a built-in programming language called CGL (Code Generation Language) that lets you add new syntactical elements to the source files that AMC processes. In addition, AMC has a module structure reminescent of the UCSD p-System compiler. AMC comes with a default package that adds a dynamic form of OOP to C.
APRIL is a symbolic programming language that is designed for writing mobile, distributed and agent-based systems especially in an Internet environment. It has advanced features such as a macro sub-language, asynchronous message sending and receiving, code mobility, pattern matching, higher-order functions and strong typing. The language is compiled to byte-code which is then interpreted by the APRIL runtime-engine. APRIL now requires the InterAgent Communications Model (ICM) to be installed before it can be installed.
ArgoUML is a pure Java open source UML CASE tool that provides cognitive support for object-oriented design. ArgoUML provides some of the same editing and code generation features of a commercial CASE tool, but it focuses on features that enhance usability and support the cognitive needs of designers. Uses XML file formats: XMI and PGML.
Awka is both a translator of AWK programs to ANSI C, and a separate library against which the C code is linked. The aims of Awka are to allow creation an executable that provides generally better performance than AWK interpretors, to allow easy inclusion of AWK logic in larger C applications, and use of external C functions within AWK scripts.
C->Haskell is an interface generator that simplifies the development of Haskell bindings to C libraries. The tool processes existing C header files that determine data layout and function signatures on the C side in conjunction with Haskell modules that specify Haskell-side type signatures and marshaling details. Hooks embedded in the Haskell code signal access to C structures and functions; they are expanded by the interfacing tool in dependence on information from the corresponding C header file.
CMUCL is a free, high performance implementation of the Common Lisp programming language which runs on most major Unix platforms. It mainly conforms to the ANSI Common Lisp standard. CMUCL provides a sophisticated native code compiler; a powerful foreign function interface; an implementation of CLOS; the Common Lisp Object System; which includes multimethods and a metaobject protocol; a source-level debugger and code profiler; and an Emacs-like editor implemented in Common Lisp. CMUCL is maintained by a team of volunteers collaborating over the Internet, and is mostly in the public domain.
Dia2Code is a small utility to make code from a Dia Diagram, and eases the programmer's work by generating the structure of the classes in an Object Oriented language (like C++ and Java) from a graphical representation of them (a la Dia Diagram). It can generate code for many languages.
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.