gnokii is a multisystem tool suite for mobile phones. It provides a library to communicate with a phone hiding the communication protocol. The library handles SMS, phonebook, calendar, phone calls, and other mobile phone capabilities. It supports Nokia-FBUS mobiles, AT-capable phones (most of the mobiles), as well as Symbian-based phones.
plumb is a shell with focus on pipes: instead of pipelines, it can build large graphs of processes (nodes) and pipes (edges). Pipes are simple unidirectional streams without side effects. Traffic can be controlled by virtual processes (which are nodes just like real processes, but are implemented in plumb for minimal overhead). Virtual processes can split, merge, regex filter/alter, and shape the streams. Timers and starting/stopping processes or even rewiring the script on the fly are also supported. It is portable (using libporty) and behaves exactly the same way on Linux, Windows, Mac OS X, many BSD variants, and older UNIX systems.
libmawk is a fork of mawk 1.3.3 restructured for embedding. It allows you to embed awk interpreters in any application written in C or in a language that can interface C libraries. This allows the application to have plugins, configuration, run control, and AI written in awk. It extends the original feature set of mawk with modularity (C-style include), save/load of compiled bytecode, function calling by name-in-string (substitute for pointers/references), and accounting and limiting of memory and CPU use. While awk as a language does not offer OOP and complex data structures, it is still reasonably powerful. A major advantage is the short learning curve for new users.