PropXX provides a property/configuration mechanism for C++ applications. Properties can be defined in files similar to but more flexible than Java properties. Property files are defined in a type-safe, modular way and offer the full expressiveness of the Lua scripting language. The design of PropXX combines flexibility with high performance for the C++ code that accesses property values. The property values are stored in objects of special property classes, which are automatically generated from the property set definitions. Performance-critical code can be inlined by the compiler, and a typical access to a property value is as cheap as reading a single variable from the memory. No costly data structures like hashes, balanced trees, etc. are involved.
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.
BRL-CAD is a powerful constructive solid geometry solid modeling system that includes an interactive geometry editor, ray-tracing support for rendering and geometric analysis, path-tracing for realistic image synthesis, network distributed framebuffer support, and image and signal-processing tools.
The GOBLIN project consists of a C++ class library for a large series of graph optimization problems, GOSH, an extension of the Tcl/Tk scripting language to graph objects, and GOBLET, a graphical user interface to the library functions. GOBLET includes a graph editor and supports the standard graph layout methods.
Urwid is a Python library for making text console applications. It has many features including fluid interface resizing, support for UTF-8 and CJK encodings, standard and custom text layout modes, simple markup for setting text attributes, and a powerful, dynamic list box that handles a mix of widget types. It is flexible, modular, and leaves the developer in control.
libconfig is a compact, portable library for reading, manipulating, and writing structured configuration files. The library includes bindings for both the C and C++ languages, and works on Linux, Mac OS X, and other POSIX-compliant operating systems, as well as Windows. A complete manual with API documentation is included.
OpenGUI is a high-level multi-platform, thread-safe C/C++ windowing and graphics library built upon a fast, low-level graphics kernel. It provides 2D drawing primitives and an event-driven windowing API for easy application development. The benefit of this library is speed, power, and a well-designed API with a narrow learning curve. It supports the BMP, JPG, TGA, PNG, TIFF, and PCX image file formats, color gradients, and TTF fonts. There is also basic XML file support and a smart persistence wrapper. OpenGUI supports the keyboard and mouse as event sources, the Linux framebuffer, SVGAlib, and XFree86/DGA2 (HW accelerated) as drawing backends, Mesa3D under Linux, and 8, 15, 16, and 32-bpp color modes.