Scsh is a systems-programming environment for POSIX systems and Win32, embedded in the Scheme programming language. It includes a high-level process notation for writing shell-script like programs, with pipelines and redirections. Scsh additionally provides low-level access to POSIX primitives, plus important non-POSIX extensions such as sockets. Scsh is implemented on top of Scheme48, a portable bytecode implementation of Scheme. A number of user-contributed extensions are available, including an extensible HTTP and FTP server, a socket-level PostgreSQL interface, a programmable text formatting language, and a Postscript generation language.
basE91 is an advanced method for encoding binary data as ASCII characters. It is similar to UUencode or base64, but is more efficient. The overhead produced by basE91 depends on the input data. It amounts at most to 23% (versus 33% for base64) and can range down to 14%, which typically occurs on 0-byte blocks. This makes basE91 very useful for transferring larger files over binary unsafe connections like e-mail or terminal lines.
Plait (pronounced "play") is a command-line jukebox and music player front end. It understands brief, easy to type queries that pick a single song, mix queries that combine works from multiple artists, and stream queries that find Shoutcast radio streams. A variety of filters are available to pick just the music you want to hear. In order to actually play the music it finds, Plait automatically hands off a playlist to one of the supported music players, or creates a playlist that you can manually load.
ibistools is a small set of command-line tools that aid a PCB designer working with IBIS models. It currently consists of a full IBIS v4.1 parser and an IBIS to SPICE translator. IBIS (I/O Buffer Information Specification) is a standard, human-readable, machine-readable format for publishing IC specifications.
cygbuild is a porting tool for making Cygwin net releases. It helps Cygwin source and binary package maintainers to configure, build, strip, produce diffs, and generate Cygwin specific files. To put it simply, it converts any freely available program or package into a complete Cygwin net release distribution.
Dim is a utility to help you track the changes of items (sets composed of multiple files). It provides commands to handle the complete lifecycle of version control operations: create a library, register users (code authors), create items, save local versions, branch, clone, export, import, remove, merge, archive, replicate library content over the network or the filesystem, and access the full history and browse differences at the library, item, file, line, or word level. Dim is a single self-documented POSIX shell script. It just uses standard Unix utilities like awk, diff, tar, and openssl.
Newfangle is a literate programming technique for LyX (or LaTeX) inspired by notangle. It comes in two parts. The weave part that produces the formatted document is implemented entirely in LaTeX, and the tangle that generates the source code is implemented in awk for portability. Naturally, newfangle is written using literate programming techniques, using itself, and so the source is also the documentation. The source is written using the LyX document editor, an excellent front end to LaTeX. LyX is not required, but newfangle provides formatting support for LyX. Literate programming makes you write good code, because if you can't write a good justification or explanation for your code, it makes you think again and write something that you can explain.
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.