Berkeley DB (libdb) is a programmatic toolkit that provides embedded database support for both traditional and client/server applications. It includes b+tree, queue, extended linear hashing, fixed, and variable-length record access methods, transactions, locking, logging, shared memory caching, database recovery, and replication for highly available systems. DB supports C, C++, C#, Java, PHP, and Perl APIs. It supports key-value pair (NoSQL), SQL, and Java Object formatted data. It is available for a wide variety of Unix platforms as well as QNX, Android, Mac OS X, and several varieties of Windows.
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 BRU Backup and Restore Utility features data-verified backups, scalability, configurability, and ease of use for Linux and Unix. Versions are available for Linux, FreeBSD, and most UNIX variants. It works via an X11 interface, command line interactive, or through a scripted, scheduled (CRON) mechanism.
The EnRus dictionary tools are TCL/Tk scripts for reading a textual (plain or compressed by gzip or bzip2) dictionary base and compiling new dictionary bases from plain text files. It consists of a few TCL console scripts and a Tk interface to them. It is configurable for different languages. The dictionary base may contain proper formatting and output procedures.
Ficl (Forth inspired command language) is an ANS Forth interpreter written in C. Unlike traditional Forths, this interpreter is designed to be embedded into other systems as a command/macro/development prototype language. Ficl provides object extensions that can be used to wrap methods and structures of the host system without altering them.
Memchan is an extension library to the script language Tcl, as created by John Ousterhout. It provides two new channel types for in-memory channels and the appropriate commands for their creation. They are useful to transfer large amounts of data between procedures or interpreters, and additionally provide an easy interface to on-the-fly generation of code too. No need to set or append to a string, just do a simple puts.