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.
NFSv4 specifies that the RPC calls be batched into a "compound" call. There is no support for this in RPCGEN. By rearranging the ONC IDL for NFSv4 into AutoGen definitions, these templates will emit the original IDL *plus* all the code to package, send, distribute, collect, return, and dispatch the results. The distributed program author merely needs to call and supply server procedures for the routines specified in the IDL. Templates for these calls and service routines is provided, too. The NFSv4 definitions are included.
AutoOpts is an integrated part of AutoGen. Based on a very simple option description file, it will process configuration files, environment variables, command line options, text strings passed by client programs, and will make the results easily accessible to the client program. It will also produce a man page and the info-doc invoking section automatically.
clo++ is a command line option parser generator. Given an XML file that contains a description of your program and its options, clo++ can generate code to parse its command line. In addition to code generation, clo++ can also generate man pages. Other languages and output formats can easily be added because clo++ generates its output using templates.
The ANTLR ANSI C and GCC source to source translation framework includes an ANSI-C parser which builds trees, a GCC parser which builds trees, a GCC tree parser (for you to subclass to do transformations), and a GCC tree emitter. The GCC parser is only for GCC's extensions to C, not C++. It is based on GCC 2.95.2.
sml/nj (Standard ML of New Jersey) consists of a compiler, compilation manager, and libraries for Standard ML. Included are CML (Concurrent ML) and eXene (a toolkit for X based on CML). The compiler produces efficient code for most popular architectures (Intel x86, Sparc, Alpha, Mips, HP-PA, PowerPC) and runs under Unix, Linux, or Windows (95,98,NT).
Knit is a new component definition and linking language that can be used with C and assembly code. Knit supports component definitions that require little or no modification to existing code. It automatically schedules component initializers and finalizers and provides an extensible constraint system to detect subtle errors in component composition. Knit provides cross-module inlining that largely eliminates the overheads of componentization, supports component hierarchies, and supports cyclic component dependencies. Knit can be used for any C program, but is especially well suited for use in systems that have many separate components, multiple implementations of the same component, intricate initialization requirements, complex component interdependencies, low-level code and embedded systems, or code that is used in radically different configurations.
The cutils collection is composed of: cdecl and cundecl (decode and encode C type declarations), cobfusc (make a C source file unreadable but compilable), chilight (highlight C source files), cunloop (unloop C loops), yyextract (extract grammar rules from yacc grammar), and yyref (generate a cross-reference for yacc input).