Mup produces very high quality PostScript printed music or a MIDI file from a text input file. It can handle almost any kind of music, instrumental or vocal, including tablature, shaped notes, guitar grids, alternate tunings, user-defined symbols, and much more. Mup has been under active development since 1992.
Minnow is a concurrent programming language with a Ruby-like syntax. It compiles to an executable and uses a companion library to allow fully-rebalanced microthreads. Minnow gains a lot of strength from its actor model, which uses message passing, as opposed to threads and locking, as its concurrency model. Taking a cue from Erlang, actor creation and message passing is extremely lightweight (often on the order of a few nanoseconds). The language has a built-in foreign function interface that allows developers to leverage existing C-based libraries in a simple SWIG-like manner. Minnow's object model is based on "melding" features together to form objects.
DromeAudio is a small audio manipulation and playback library. It features a simple API for loading, generating, processing, and playing audio. Some of its features include loading and saving WAV sounds, loading Ogg Vorbis sounds, audio mixing/playback, and dynamic audio processing effects such as pitch shifting and echo.
Factor is a dynamically-typed stack-based programming language. Factor runs on various OSes and CPU architectures, and provides an optimizing compiler, interactive development environment, powerful collections, higher order programming, continuations, and a growing library of contributed code.
Nemerle is a hybrid (functional, object-oriented and imperative) programming language for the .NET platform. The key features of the language include C#-like syntax, easy access to functional, object-oriented, and imperative features, powerful code-generating macros, variants, pattern matching, static and on-demand dynamic typing, and type inference.
LibGC is a small, fast, portable, multi-threaded garbage collection library for C++. It is highly customizable, as it can be multithreaded or single threaded, and the memory size to use for the collector may be changed at compile time. It is precise, as it only scans pointers that exist as members on the stack or as global variables. It's very easy to use, since it has only two classes, Object (the base class for garbage-collected objects) and Pointer (for garbage-collected pointers).