FMPP is a text file preprocessor that uses FreeMarker templates to provide macros, flow control, and expressions. It uses recursive directory processing, so it can generate complete homepages (a tree of HTML files and images). It is extendable in Java to display data from any data source (such as a database). It is usable with a command-line interface, as an Ant-task, or embedded into a Java application.
Pre Make Kit (PMK) aims to be a BSD alternative to GNU autoconf, GNU libtool, and pkg-config. It uses data files instead of scripts to limit the spreading of trojans in software packages. It's designed to be easy to use for users and developers. For better portability and efficiency, all of the components are written in C. Requirements are a POSIX system, a C compiler, a POSIX shell, and a make tool.
CMake is a cross-platform, open-source build system. It is used to control the software compilation process using simple platform and compiler independent configuration files. It generates native makefiles and workspaces that can be used in the compiler environment of your choice. CMake is quite sophisticated: it is possible to support complex environments requiring system configuration, pre-processor generation, and code generation.
RJCE enables the editing of any method at runtime, applying the changes to any combination of objects, such as an array, or a complete class. It consists of a compiler, javaprec, and an IDE, Runtime Object Modifier (ROM). javaprec is used to compile programs, enabling runtime editing, and uses both sun.tools.javac and ANLTR for compilation. ROM is a JFrame used for editing methods, browsing classes, and viewing variables at runtime. It also includes an interpreter that runs Java scripts (which circumvent normal language access control) and is run from within any Java program. Aspects are also incorporated into RJCE, to enhance runtime editing.
Brook for GPUs is a compiler and runtime implementation of the Brook stream programming language for modern graphics hardware. The goals for this project are to demonstrate general purpose programing on GPUs, to provide a useful tool for developers who want to run applications on GPUs, and to research the stream language programming model, streaming applications, and system implementations.
snip is an Ant task designed to help with the single-sourcing of program documentation. This task extracts snippets of text from files, placing them into properties in the Ant project. These properties can then be used by any other Ant task, and are particularly useful when referenced by <filter>s within the <copy> task. It was originally written to keep snippets of sample code in API documentation synchronized with the actual sample classes by automatically extracting code from the samples when the project is built.
Rundoc is an Ant task designed to help with the single- sourcing of program documentation. This task replaces special commands embedded within text files with their output in a specified format. Currently, only Docbook format is supported. It was written to keep sample code output in program documentation synchronized with the actual output of the current code, by running the referenced code when the documentation is built.
MetaClass supports runtime access to metadata associated with Java program elements or artefacts. The program elements include packages, classes, methods, and fields and each metadata element is referred to as an attribute. The attributes are usually specified in the Java source files as JavaDoc markup. The source file is then processed and the metadata is compiled into descriptors that MetaClass is capable of reading. These descriptors are then loaded at runtime to provide metadata about the program elements.