MIT/GNU Scheme is an implementation of the Scheme programming language, providing an interpreter, compiler, source-code debugger, integrated Emacs-like editor, and a large runtime library. MIT/GNU Scheme is best suited to programming large applications with a rapid development cycle. Recent versions of the system are supported on the following platforms: GNU/Linux, *BSD, OS/2, and Windows.
MDK (MIX Development Kit) provides tools for developing and executing, in a MIX virtual machine, MIXAL programs. The MIX is Donald Knuth's mythical computer, described in the first volume of The Art of Computer Programming, which is programmed using MIXAL, the MIX assembly language. MDK includes a MIXAL assembler (mixasm), a MIX virtual machine (mixvm) with a command line interface, a Guile-based virtual machine (mixguile), a GTK+ based GUI (gmixvm), and a mixvm-Emacs interface (mixvm.el). MDK utilities are extensible using Scheme.
Motor is a text-mode integrated programming environment for Linux. It consists of an editor with syntax highlighting, a project manager, a makefile generator, gcc, ctags, gdb, autoconf/automake and grep front-ends. CVS integration is also provided. It allows one to edit, compile, and debug programs without a need to leave the IDE, automatically check in/out files from a CVS repository and import projects into CVS, and generate distribution packages (tar.gz and RPM). The color schemes are customisable.
mpatrol is a link library that attempts to diagnose run-time errors that are caused by the wrong use of dynamically allocated memory, including writing to free memory and memory leaks. Along with providing a comprehensive and configurable log of all dynamic memory operations (such as malloc(), operator new, etc.) that occurred during the lifetime of a program, the mpatrol library performs extensive checking to detect any misuse of dynamically allocated memory and has support for both memory allocation profiling and tracing. A wide variety of library settings can also be changed at run-time via an environment variable, thus removing the need to recompile or relink in order to change the library's behaviour.
mpr finds malloc/realloc memory leaks and memory allocation statistics by using a simple, brute force strategy: log all malloc/free calls to a file and post-process this log file when the program terminates. mpr keeps track of the entire call chain leading up to a malloc/free call. This is superior to conventional methods that keep track of only the immediate caller using __FILE__ and __LINE__ pre-processor tricks.
ngrep strives to provide most of GNU grep's common features, applying them to the network layer. ngrep is a pcap-aware tool that will allow you to specify extended regular or hexadecimal expressions to match against data payloads of packets. It currently recognizes IPv4/6, TCP, UDP, ICMPv4/6, IGMP and Raw across Ethernet, PPP, SLIP, FDDI, Token Ring, and null interfaces, and understands BPF filter logic in the same fashion as more common packet sniffing tools, such as tcpdump and snoop.
NJAMD (Not Just Another Malloc Debugger) is a malloc debugger that tries harder. It is completely threadsafe with immediate underflow and overflow detection, and features protecting already freed memory, heap persistence (for postmortem analysis) and excellent documentation. It traces all calls to malloc and free, even those wrapped in other libraries (i.e., widget allocation or C++ new and delete) back to your code. It does all this with minimal overhead, practically fast enough to be used as standard malloc, and without the need to even recompile or even relink your code.
perldbgui is a GUI for the standard Perl debugger. The GUI consists of two windows: one is a console window that's just like the regular perl debugger, the other is a source window that displays the executing source code. From the source window you can load other files, execute commonly used commands with buttons at the bottom, and execute almost any debugger command with keyboard shortcuts.