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.
drsync is a Perl wrapper for rsync which keeps track of the filelist between synchronizations. If you delete a file in one place, it will delete it in the other place; if you add a file, it copies to the other place. It is ideal for notebook users who want to keep data in two (or more) different places. It is also good for the Linux PDAs (Agenda, iPAQ, Yopi, etc.), to keep data synchronized with the desktop. The requirements are designed to be minimum.
The dump package contains both dump and restore. Dump examines files in a filesystem, determines which ones need to be backed up, and copies those files to a specified disk, tape or other storage medium. The restore command performs the inverse function of dump; it can restore a full backup of a filesystem. Subsequent incremental backups can then be layered on top of the full backup. Single files and directory subtrees may also be restored from full or partial backups.
dvgrab receives audio and video data from a digital camcorder via an IEEE 1394 (widely known as FireWire) link and stores them into an AVI file. It features autosplit of long video sequences into several files, and supports saving the data as raw frames, AVI type 1, AVI type 2, and image files.
Dynamic Probes (Dprobes) is a generic and pervasive system debugging facility that will operate under the most extreme software conditions such as debugging a deep-rooted operating system problem in a live environment. Dprobes allows the insertion of fully automated breakpoints or probepoints anywhere in the system and user space. Each probepoint has an associated set of probe instructions that are interpreted when the probe fires. These instructions allow memory and CPU registers to be examined and altered using conditional logic. When the probe command terminates, prior to returning to the probed code, a syslog record may be optionally generated.