Links:
6502dis a disassembler for 6502 binaries Acogc Acogc is a simple garbage collector. It can coexist with other allocation strategies, as it is implemented on top of malloc/free. It uses a stop-and-copy algorithm. AdaControl AdaControl is a tool that detects the use of various kinds of constructs in Ada programs. Its first goal is to control proper usage of style or programming rules, but it can also be used as a powerful tool to search for the use (or non-use) of various forms of programming styles or design patterns. Searched elements range from very simple, like the occurrence of certain entities, declarations, or statements, to very sophisticated, like verifying that certain programming patterns are being obeyed. Which elements or constructs are searched is defined by a set of user-definable rules. AlphaBeta AlphaBeta is a framework that implements MiniMax search with Alpha-Beta pruning. It aims to make it simple to create two-player zero-sum perfect information games in Objective-C. Both fixed-depth and iterative search are supported. Android an open source testing tool for GUI programs. It can watch you work with a GUI program and as you do it will write a script that will enable you to precisely replicate your session AnyDBM AnyDBM is a generic interface to DBM-like databases for Haskell. It lets you store String-to-String mappings in various formats, from a simple in-memory Map to a high-performance DBM database or even a SQL database. Application Version Management designed to enable multiple versions of the same application (i.e. Mozilla) to be accessible to a user or developer on the same machine Appomattox Appomattox is a project to build a set of cross-platform mapping objects for the .Net framework. It is also a desktop GIS application which runs on both Linux and Windows. Appomattox is a collaboration with the monoGIS project, and relies upon their GIS libraries. It is currently hosted at Novell Forge. The code is written entirely in C# and is released under the MIT X11 license. apvsys a general open-source wrapper designed for engineering Unix/Linux environments. It provides a way to use and to manage simultaneously different versions of applications ( engineering tools, compilers, debuggers simulators, ... ) Apydia Apydia is an API reference documentation generator for Python. It's designed as an instantly serviceable replacement for Pudge's API documentation generator. However, it won't generate complete Web sites from reST like Pudge does. Apydia is only about the API. ARSCIF a technique by which ECMAScript code in a browser can connect to a server without reloading a page. Asynchronous remote-script callback invocation allows you to create pages with sophisticated, dynamical features. ARSCIF is a powerful framework that makes it trivial to use this technique, working out for you problems such as data and character encoding, concurrency control, browser implementations and so on ASM Workbench ASM Workbench is a tool environment for supporting the design and validation of abstract state machine (ASM) specifications. AsmSrc AsmSrc generates assembler assembler source files from Linux executables. Library calls are detected along with symbols and other information found in ELF executable files. Generated source file is in nasm format. Astroconst Astroconst is a set of header files in various languages (currently C, Fortran, Perl, Java, IDL and Gnuplot) that provide a variety of useful astrophysical constants without constantly needing to look them up. at51programmer a universal, intelligent programmer for Atmel's 8051 devices, parallel flash, and e2prom memories Atlantis Installer Atlantis Installer is an installation wizard built to simplify installing PHP-GTK2 applications on multiple platforms as an alternate solution to using PEAR. This allows you to build your application with the structure you want and drop it nicely as one package. Autoconf Macro Archive provides documented and tested macros that are useful to many software writers using the autoconf tool, but too specific to be included into autoconf itself AutoGen designed to simplify the creation and maintenance of programs that contain large amounts of repetitious text. It is especially valuable in programs that have several blocks of text that must be kept synchronized Autoglade autoglade is a tool that automagically creates a fully working application from a GUI Glade definition plus some declarative information with no programming. AutoLink a tool designed to transfer dynamic data-types (like graphs) using MPI AVR-Ada AVR-Ada aims to make the Ada part of gcc usable on AVR microcontrollers. This includes the three elements: the Ada compiler, the Ada run time system, and the AVR support library Some sample programs will be provided as well. Bare Bones BareBones is an interpreter for the "Bare Bones" programming language defined in Chapter 11 of "Computer Science: An Overview", 9th Edition, by J. Glenn Brookshear. binfmtc binfmtc implements handlers for C and other languages, which are usually compiled. binmay a command line binary search and replace program. It allows one to specify a binary string (in hex) to search for and, optionally, a binary string to replace it with binutils a collection of binary utilities including gas (the assembler), ld (the linker), nm, ranlib, objdump, objcopy, readelf, etc. Most of these programs use the Binary File Descriptor (BFD) library to do low-level manipulation. The binutils have been ported to most major Unix variants as well as Wintel systems BitRock InstallBuilder (commercial) allows you to create easy-to-use installers for Linux applications. The generated installer for an application can be run in GUI, text, and unattended modes BlueSense SDK BlueSense SDK is a software development kit for communicating with BlueSense equipment. It allows you to read out sensors or control actuators. A user-space USB driver for all platforms is included. BOND a rapid application development tool for creating database applications brace brace is a dialect of C that looks a bit like python. It is compatible with C. It has coroutines, hygenic macros, automatic prototypes and headers, data structures, graphics and sound, etc. brainwash brainwash is an optimizing interpreter for the Brainf*ck programming language written in C. It is developed with speed, low memory footprint, functionality and portability in mind. breloc breloc is a small program that does binary edits on files to relocate compiled-in "prefix"es, padding with extra slashes to make up for differences in the length of the prefixes. Brutus Brutus is an Exchange connector and development framework that offers access to all of MAPI and therefore to all versions of Microsoft Exchange from version 5.5 onwards. It is a complete wrapping of all of MAPI into a (large) set of CORBA interfaces. bsdiff bsdiff and bspatch are tools for building and applying patches to binary files. By using suffix sorting (specifically, Larsson and Sadakane's qsufsort) and taking advantage of how executable files change, bsdiff routinely produces binary patches 50-80% smaller than those produced by Xdelta, and 15% smaller than those produced by .RTPatch (a $2750/seat commercial patch tool). BuildNumber BuildNumber is a utility to add auto-incrementing build numbers to C/C++ projects. It is written in pure C for maximum portability but can also be used with C++ projects, and should compile on any platform. Every time you rebuild your project, BuildNumber will automatically update its build number for you: set it up once, and it just works. You can compile individual files without incrementing the build number, because it only updates when you actually build or make your project. C Code Analyzer The C Code Analyzer (CCA) is a static analysis tool for detecting potential security problems in C source code. C++ XML Objects C++ XML Objects is a framework for persisting hierarchies of C++ objects to and from XML. Boost, the STL, and patterns are used extensively. C-Pluff C-Pluff is a plug-in framework for C programs. It has been strongly inspired by the Java plug-in framework in Eclipse. C-Pluff focuses on providing core services for plug-in interaction and plug-in management. It aims to be platform neutral and supports dynamic changes to plug-in configuration without stopping the whole application or framework. It does not yet provide special facilities for distribution such as signed plug-in packages or remote plug-in repositories, but it is possible to build such features on top of the current framework. C99-snprintf C99-snprintf is a free, portable, and C99 compliant implementation of the snprintf(3), vsnprintf(3), asprintf(3), and vasprintf(3) functions. It can be included with software packages as replacement code for systems which don't provide (C99 compliant versions of) these functions. c_count c_count counts lines, statements, other simple measures of C/C++ source programs. It isn't lex/yacc based, and is easily portable to a variety of systems. calltree a static calltree generator for C programs Candygram a Python implementation of Erlang concurrency primitives. Erlang is widely respected for its elegant built-in facilities for concurrent programming. This package attempts to emulate those facilities as closely as possible in Python cCLiP CLiP offers a very flexible structure that can be used to parse input commands. In fact, CLiP allows you to parse command line inputs, add or remove allowed options and arguments, forbid the user from specifying too many arguments or options, switch between long and short option prefixes, define your own long or short prefix, and much more. CCView CCView is a C++ project and class viewer for GNOME. The program can integrate with any editor that has a remote control mechanism (Emacs, for example) view member functions of C++ classes, and add new member functions. cencode cencode encodes a stream or a file into quoted c-string escape sequences, suitable for use directly in C code. It is a universal alternative to dedicated export formats like XPM, unportable resource forks, linker flags, and Windows resources where dynamic loading of external data is not possible or undesired. Cflow2Cflow Cflow2Cflow is a small utility to quickly manipulate the output of a large cflow output file. The cflow utility is a tool which take one or more C sources files and produce a calltree file. cflow2vcg converts the result of the cflow utility to a VCG format cfunge cfunge is a fast interpreter for the Befunge98 esoteric language. It is standard conforming. Chaos Classes a collection of C++ classes for use in the study of dynamical systems. The goals are to provide a framework in which to write generalized analysis tools that can be applied to arbitrary dynamical systems and to combine the speed and customizability of custom numerical code with the ease-of-use and short startup time of an application Chump a table-driven assembler and dissembler with a very fast new architecture input format. Both the assembler and disassembler are created using a single description cinfo to provide users with more information on the contents of the various caches of their kernel clig clig is a Command Line Interpreter Generator. CMT++ an easy-to-use code metrics tool for C and C++ languages. Also assembly code can be measured. CMT++ is intended for mature software development organizations striving for productive development process resulting in high quality products Code Browser a folding and outlining editor for Linux and Windows. The editor is between a traditional text editor, a smalltalk class browser and a web browser like mozilla. It displays a structured text file (marker-based folding) hierarchically using multiple panes CodeViz a call graph generation utility for C/C++ CodeWrestler CodeWrestler is a tool to massage a code base in different ways. Its main function is to traverse a source tree, identify the file types (e.g. source code, scripts, xml files, properties files) and run different processing classes on them. Coil an MVC framework for Python. It is based on the design of Struts, and supports many of the same API's ColorDiff a wrapper for 'diff' and produces the same output but with pretty 'syntax' highlighting. Colours schemes can be customized comparator a pair of tools for rapidly finding common code segments in large source trees. They can be useful as tools for detecting copyright infringement compilercache a wrapperscript around your C and C++ compilers. Eachtime you compile something, the wrapperscript puts the result of the compilation into a cache Config Maker Config Maker is a tool to automatically create C++ classes that parse configuration files. Only a few lines of text that describe the possible entries in the configuration file are needed, and the complete class will be generated ready for use. constraint a constraint satisfaction problem solver written in python Copland an Inversion of Control (IoC) container, written in Ruby, for use in Ruby programs. In a nutshell, it allows you to simplify the instantiation and initialization of your classes cpdetector a framework for configurable code page-detection of documents. It may be used to detect the code page of documents retrieved from remote hosts cproto generates function prototypes for functions defined in the specified C source files to the standard output. The function definitions may be in K&R or ANSI C style, or in lint-library form. cproto can also convert function definitions in the specified files from the K&R style to the ANSI C style Cross Module Inliner an optimizing frontend for gcc which allows gcc to inline across module boundaries without requiring you to put inline functions in header files or even mark inline functions for inlining crosstool crosstool is a set of scripts that make it easy to build cross-development toolchains based on gcc, glibc, and Linux. The goal is to make it easy to build and test cross-toolchains for all architectures supported by glibc. crosstool-NG crosstool-NG is a versatile toolchain generator. It supports multiple target architectures, different components such as compilers and C libraries. It aims at being highly configurable. crucible A system for testing open source applications. Allows uploading or scheduling retrieval of software and its dependencies, and running different kinds of tests on it. CTC++ CTC++ is a powerful instrumentation-based test coverage and dynamic analysis tool for C and C++ code. As a coverage tool, CTC++ shows the coverage all the way to the Modified Condition/Decision Coverage (MC/DC) level as required by DO-178B projects. As a dynamic analysis tool, CTC++ shows the execution counters in the code, i.e. more than plain boolean coverage information.You can also use CTC++ to measure function execution costs (normally time) and to enable function entry/exit tracing at test time. Ctcompare Ctcompare allows you to compare several sets of C code trees on a token basis, rather than on a line by line basis. These programs help to identify code copying and similarities between snippets of code in both trees. Cuiterm CUI (Composite User Interface) is a compound type of user interface which incorporates the features of the GUI (Graphical User Interface) and the CLI (Command Line Interface) by realizing both interface in one area at the same time. It is absolutely substantial that the CUI contains GUI elements and control language in the same area of the screen at the same time, so the incorporation is complete. CUI is not an optional, alternatively selectable combination of the two communication method but a truly new approach. CUnit a Unit Test framework for 'C'. This is not intended for C++, there are other frameworks that specifically support C++. cxmon cxmon is an interactive command-driven file manipulation tool that is inspired by the "Amiga Monitor" by Timo Rossi. It has commands and features similar to a machine code monitor/debugger, but it lacks any functions for running/tracing code. There are, however, built-in PowerPC, 680x0, 80x86 (including x86-64), 6502 and Z80 disassemblers, and special support for disassembling MacOS code. DACS DACS is a general-purpose, distributed system that combines Single Sign-On capability and role-based access control for web services, which are any static and computational resources provided by a web server through HTTP. The DACS design is open and built from industry-standard protocols and APIs, making porting to new environments straightforward. Daikon Daikon is an implementation of dynamic detection of likely invariants; that is, the Daikon invariant detector reports likely program invariants. An invariant is a property that holds at a certain point or points in a program; these are often seen in assert statements, documentation, and formal specifications. Invariants can be useful in program understanding and a host of other applications Delphi Yacc & Lex a parser generator toolset for Delphi and Kylix, based on Turbo Pascal Lex and Yacc Devel::Profiler a Perl profiler designed as a drop-in replacement for Devel::DProf. It outputs data in the same format as Devel::DProf and supports the dprofpp frontend. Dia2Code a small utility used to generate code from a Dia diagram DIPC can be used to build and program multi-computers Discrete Event Calculus Reasoner The Discrete Event Calculus Reasoner allows a programmer to add common-sense reasoning capabilities to programs. It supports deduction/temporal projection, abduction/planning, postdiction, and model finding. It allows default reasoning about action, change, space, and mental states. Dissy Dissy is a disassembler (graphical frontend to objdump) for multiple architectures. It allows fast navigation through the disassembled code and easy searching for addresses and symbols. Dissy is written in Python and available under the GNU GPL. Distance Disassembler Distance Disassembler allows you to specify labels for addresses in the program being disassembled or for memory-mapped I/O registers and and ROM routines. distcc distributes compilation of C code across several machines on a network. distcc should always generate the same results as a local compile, is simple to install and use, and is often significantly faster than a local compile Distel Distel extends Emacs Lisp with Erlang-style processes and message passing, and the Erlang distribution protocol. With this you can write Emacs Lisp processes and have them communicate with normal Erlang processes in real nodes. DndSkan a helper for developers that want to add drag and drop or clipboard support to their applications eAccelerator eAccelerator is a further development from mmcache PHP Accelerator & Encoder. It increases performance of PHP scripts by caching them in compiled state, so that the overhead of compiling is almost completely eliminated. Easymenu a shell script used to generate menu systems Ecere SDK The Ecere SDK is a cross-platform toolkit for building software applications. It currently runs on Windows and Linux. With the Ecere SDK, you can develop applications once and deploy them on all supported platforms alongside a lightweight runtime environment. It introduces eC, an object oriented language derived from and fully compatible with C, compromising neither runtime performance nor ease of use. A built-in 3D engine supporting both Direct3D and OpenGL is fully integrated. ECLI an Eiffel wrapper around the X/Open ISO/CLI (Call Level Interface). This interfaces defines an API to RDBMS drivers, and uses SQL92 ECMerge Pro (commercial) ECMerge compares and merges files and folders, side-by-side or 3-way. It provides syntax coloring for C/C++, Java, HTML, ASP, PHP, and many other programming languages. It can save your work at an intermediate state and restart it later. It can generate Unix patches between files. A shell extension is provided under Windows. EDelta EDelta is a fast XDelta-style binary differ, but optimized for executables which have a very systematic way of changing between versions. It has not been thoroughly evaluated so far, but on one example (two versions of Vim) it produces a 30kB delta where XDelta needs 250kB. eglade eglade is an Eiffel code generator that parses XML files produced by Glade. Eiffel Wrapper Generator a tool that generates Eiffel wrapper classes for C libraries. It can be used to create libraries that bridge the gap between Eiffel and C. It aims to work for arbitrary ANSI C and with all common Eiffel compilers elf allows a user (be it a script or a human) to analyze the contents of an ELF object file header. This header contains various integral values such as the virtual entry point of the object file, the machine architecture it was compiled for and more. Using elf's interactive readline-based or command-line interface, users may easily view the contents of the header elf a comfortable command-line ELF object file header analyzer. Unlike many other similar projects, this project is aimed at the analysis of the ELF header, so as a large feature-set as possible is planned ELF statifier Executable files may be linked statically or dynamically. Dynamically linked executables use less disk space and memory, but require appropriative dynamic libraries present in order to run. ELF statifier makes one executable file with no run-time dependencies from a dynamically linked executable and all its libraries. This file can be copied and run on another machine with no need for all of the libraries. elfvector a package for generating and using a transfer vector for subroutine linkage between an ELF executable and an ELF shared library under Linux on x86, in order to save space and application startup time Ember replaces the Lite / W3-mSQL scripting package previously distributed with mSQL encdec encodes and decode a wide range of C objects. This module may be used to encode and decode C objects such as integers, floats, doubles, times, and internationalized strings to and from a wide variety of binary formats as they might appear in portable file formats or network messages ePerl allows you to expand perl statements inside of text files. It was originally written in C by Ralf S. Engelschall EPP Interpreter a tool which supports the authoring and execution of EPP scripts using any BSF supported scripting language Error Class Converter takes a text file that defines the error types, constant names and messages, levels and responses associated with it and generates classes in the supported languages that can be used to consistently handle the errors eTcl eTcl is a "batteries-included", thread-enabled Tcl/Tk runtime, available as a single standalone executable. It includes several popular extensions (Thread, Sqlite, Zlib, ...), together with a Tcl wrapper for the Pixane image processing library. EtTcl EtTcl is an extended Tcl interpreter based on Tcl-7.6 (chosen because it is smaller in memory footprint than newer versions). Expect-lite Expect-lite is a wrapper for expect, created to make expect programming even easier. The wrapper permits the creation of expect script command files by using special character(s) at the beginning of each line to indicate the expect-lite action. Basic expect-lite scripts can be created by simply cutting and pasting text from a terminal window into a script, and adding '>' ' eXtensible Programming System XPS is a programming system based on the LLVM compiler infrastructure that aims to support extensible programming. Its main purpose is to aid in the definition of domain specific languages which will allow programs to be constructed at higher levels of abstraction than is the current practice. extractdiff for extracting patches from patch files eZBabel a translation tool for eZ publish and eZ trade FEAR::API FEAR::API is a tool that helps reduce the time you spend creating site scraping scripts and helps you do it in a much more elegant way. FEAR::API combines many strong and powerful features from various CPAN modules, such as LWP::UserAgent, WWW::Mechanize, Template::Extract, Encode, HTML::Parser, etc. Fnyx Fnyx creates setup scripts for source packages. Its primary target is standard GNU packages but the script can be modified manually to create setup scripts for many types of packages. FormHandler a set of scripts which handle the input of a form froofyJIT froofyJIT is a C++ 'syntactic sugar' front-end for Paolo Bonzini's GNU lightning library for dynamic native code generation. It uses C++'s powerful language facilities to allow GNU lightning instructions to be expressed in a more concise way that approximates a 'real' assembly language. FunnelWeb a literate-programming tool with a number of advanced features, including parametrized scraps, and fine control over the generated data Fuzzled Fuzzled is a powerful fuzzing framework for Perl programs. Fuzzled includes helper functions, namespaces, and factories which allow a wide variety of fuzzing tools to be developed. Fuzzled comes with several example protocols and drivers for them. G-Inspector G-Inspector is a GLib(GTK+) object/class inspector. G-Wrap tool (and Guile library) for generating function wrappers for inter-language calls. It currently only supports generating Guile wrappers for C functions gaa helps programmers to analyze the arguments given to their program from the command line or from a configuration file. You will only have to write a text file in GAA language, and GAA will provide you .c and .h files to manage arguments gc-utils gc-utils is a small set of scripts that let you import and update CVS repositories into git very easy and let you export patches back into a CVS working copy. To makes the exchange easy, gc-utils stores the CVS working copy into a subdirectory and receives all information from there whenever necessary. GCC Introspector consists of a patch to the gcc compiler to output the internal compiler tree nodes in RDF/XML and programs to process that RDF/XML gDSPsim Gnu Digital Signal Processor Simulator: a DSP Simulator for Linux Gen_proto appends prototypes for your .c files at the bottom of an include file so you don't have to tweek it alot to work fluently gengetopt generates a C main function that uses getopt_long function to parse the options, validate them and do certain tasks in response getpg a simple pair of C functions designed to be a drop-in replacement for getpwnam() and getpwuid(). They provide for authentication against ggcov a GTK+ GUI for exploring test coverage data produced by C programs compiled with gcc -fprofile-arcs -ftest-coverage. So it's basically a GUI replacement for the gcov program that comes with gcc. glade-- a C++ frontend for glade, the GUI designer for Gtk GLobal Application Network Glan is a toolkit for developing network GUI applications. It consists of an Universal Client Application and a Qt-based Application Server development platform for creating GUI oriented client-server applications. It allows the developer to just write code using the Qt programming style for the server side and forget about the client side. GLP-Solve GLP-Solve is a visual application for the resolution of problems of the scope of linear programming. It consists of a graphical interface for the linear programming software LP-Solve. This project tries to increase the usability of the LP-Solve tool with a familiar graphical interface, as well as with integration with the GNOME desktop. glrParser glrParser is for the creation of syntactical analysers which work with the GLR(0) algorithm. The library can handle wide ambiguous grammars containing the epsilon-rules. Gnasher Gnasher creates SHA1 hash files for local repository Maven2 dependencies. It also produces the missing pom metadata files for the same dependencies if they are missing, as well as producing SHA1 hash files for those poms. Gnocchi Gnocchi is a complexity analyzer for C++ code. It calculates cyclomatic and the NPATH complexity measures. It reads the coverage information produced by GCC and determines the complexity of all functions. If code is compiled with -fprofile-arcs or -ftest-coverage (depending on compiler version), GCC creates a .gcno file for every object file. Go-HotSwap (commercial) Go-HotSwap is a PICMG 2.1 R2.0 compliant, cross platform, Hot Swap software infrastructure. Using the Go-HotSwap architecture reduces time-to-market, enabling developers to focus on core technologies instead of going through all the effort involved in developing in-house hot swap software. GPAC GPAC is a multimedia framework based on the MPEG-4 Systems standard (ISO/IEC 14496-1) developed from scratch in ANSI C. GPAC also features MPEG-4 Systems encoders/multiplexers, publishing tools for content distribution for MP4 and 3GPP(2) files and many tools for scene descriptions (MPEG4<->VRML<->X3D converters, SWF->MPEG-4, etc...). gperf a perfect hash function generator. For a given list of strings, it produces a hash function and hash table, in form of C or C++ code, for looking up a value depending on the input string. The hash function is perfect, which means that the hash table has no collisions, and the hash table lookup needs a single string comparison only GPIB-Tcl an extension to the Tcl programming language to allow communication with measurement equipment through the industry-standard IEEE-488 (GPIB) bus GPLify a Perl script that adds notice of the GPL to a collection of source files gquilt gquilt is a PyGTK GUI wrapper for quilt and mq. quilt and the mq extension to Mercurial (hg) are tools for managing a series of patches by keeping track of the changes each patch makes. Greensocs Greensocs is a development kit for producing systems on a chip using SystemC (a C++ derivative) as opposed to Verilog or VHDL. greq lets you build GTK+-dialogs (or requesters in AMIGA lingo) from within a shell script. This is useful if you are writing shell scripts that need to get input from a user by way of a GUI Grouch Grouch is a system for describing and enforcing a Python object schema. GSLgen GSLgen is a general-purpose file generator. It generates source code, data, or other files from an XML file and a schema file. The XML file defines a particular set of data. The schema file tells GSLgen what to do with that data. GtkJentchina a simplified GTK front-end library for Jentchina. It has a filter selection dialog and uses LibIGen to display forms gtksourceviewmm gtksourceviewmm is a C++ wrapper for the gtksourceview text widget. It supports undo/redo, syntax highlighting, and other features typical of a source editor. gtranslator gtranslator is an enhanced gettext po file editor for the GNOME desktop environment. It handles all forms of gettext po files like compiled gettext po files (gmo/mo files), compressed po files (po.gz/po.bz2 etc.) and features many comfortable everyday usage features likeFind/Replace, Auto Translation, Message Translation Learning, Messages Table (for having an overview of the translations/messages in the po file), Easy Navigation and Editing of translation messages & comments of the translation where accurate. Guglhupf XML Transformation Engine A set of tools for transforming XML files. It is meant to be a simpler way of transforming xml than XSLT is. You can use XTE either as a command line tool, or as a Java framework to extend the functionality of your Java application. h2incn h2incn tries to directly convert C/C++ headers to Nasm-style include files, and can be used in a makefile. It is useful if you want to use the same structures or external variable declarations in C and assembler code, and you don't want to use two separate files and update both each time you change something. It is written in a mix of C and C++ code. It currently works for simple files. HDLLint (commercial) a powerful Lint program for Verilog and VHDL Heap Layers provides a flexible infrastructure for composing high-performance memory allocators out of C++ "layers". Heap Layers makes it easy to write high-quality custom and general-purpose memory allocators histofile displays a histogram of the used byte-values in a given file. In other words, how many As, how many Bs, how many Cs, etc., for the entire range from 0 to 255. It includes a graphic view and a table view hl a simple and easy to use interactive color terminal application. It is a kind of 'less', highlighting source code in the specific language, allowing you to browse with cursor keys within the file Hogmem Hogmem is a program for managing memory status in development or test environments. It will reserve a specific amount of system memory and prevent the VMM from swapping the reserved memory to disk. This can be beneficial in various test cases where resource limits are not a meaningfull method for memory status management. HOL a programming environment in which theorems can be proved and proof tools implemented. Built-in decision procedures and theorem provers can automatically establish many simple theorems HOL-TestGen HOL-TestGen allows one to write test specifications in Higher-order logics (HOL). It can (semi-) automatically partition the input space, resulting in abstract test cases, and automatically select concrete test data. Automatic generation of test harnesses (in SML) is supported, and using a foreign language interface, implementations in arbitrary languages (e.g. C) can be tested. HTML Document Object allows a programmer to quickly and easily generate dynamic HTML documents without having to deal with all the HTML overhead at every step of the way HTML::Merge a scripting tool for Embedded HTML/SQL/Perl I'm Cross! I'm Cross! is a script that installs a C/C++ cross-compiler toolchain that targets Microsoft Windows on a developer's Linux workstation. i2py i2py provides tools for converting programs and scripts written in Research System Inc.'s IDL programming language to Python. It is not an IDL-compatible front end for the Python interpreter, nor does it make any attempt to replicate the functionality of the IDL standard library. Rather, its only purpose is to perform source-to-source conversion of legacy IDL code to Python. Currently, it supports only procedural IDL, although support for object-oriented code may be added in the future. IBM Grid Toolbox an integrated set of tools and software that facilitate the creation of grids and applications that can exploit the advanced capabilities of the grid using a combination of this toolbox and other technologies IComplete IComplete is a generic command line program for Linux that lists possible code completions for a certain position in C/C++ source code. IDA an interprocedural analyser for Fortran 90 and High Performance Fortran programs IF# will be a language syntax and set of class libraries that compile to the .NET Framework or Mono IMSettings IMSettings is a framework that delivers Input Method settings and applies the changes immediately, so it will take effect without restarting applications and the desktop. Intel2GAS a converter that will convert assembler source files written for NASM to files that can be assembled using the GNU Assembler (GAS), on the i386 platform. It provides support for basic MMX instructions as well interdiff generates an incremental patch from two patches against a common source Inti-GConf an Inti binding for GConf (the GNOME Configuration System). It makes accessing the GConf database from your Inti applications easy and intuitive. Its API and documentation are complete and it comes with several examples Intland Source Explorer (commercial) a Source Code Engineering tool suited for C, C++ and Java developer, project manager, and quality assurance enginee Intlize Intlize allows the developer to use catgets without its normally bulky syntax and without having to mind the details of correct indices. Catgets is the built-in internationalization suite of C compilers. Alternatively, Intlize can produce a compact file format optimized for fast access. Intermediate files are in gettext po format, so there are many comfortable tools available to do the translations. Runtime files are provided for C and C++ and for both catgets and intlize native support. irrXML irrXML is a simple and fast open source xml parser for C++. The strenghts of irrXML are its speed and its simplicity. It ideally fits into realtime projects which need to read xml data without overhead, like games. irrXML was originally written as part of the Irrlicht Engine but after it has become quite mature it now has become a separate project. Jail Chroot Jail Chroot is an attempt of write a tool that builds a chrooted environment. The main goal of Jail is to be as simple as possible, and highly portable. Java for C++ Java for C++ is a tool to generate C++ wrapper classes for existing Java classes. This tool reads a list of Java class names and creates source code for C++ classes to wrap them. JetPAG JetPAG is a flexible full-LL(k) parser and lexical analyzer generator focused on high performance, efficiency, usability, and readability of generated code. It generates powerful recursive-descent recognizers, and supplies a small library that can be used to do minimal parsing needs. Generated code is nicely structured and distributed over several files for easier management and integration into larger projects. JetPAG offers a wide range of customizations for the supplied grammars, allowing a great deal of control over the generated source code, and preventing many of the possible modifications on the generated code. JiTI86 a just-in-time instrumentation tool for Intel binaries. The tool allows you to create a dynamic loadable library that can be attached to a dynamic linkable program running under Linux Jpass a password generator to add passwords to the signup form of a php/mysql based admin system jPrintf (shareware) a port of printf to Java. It features precompiled format strings and an object-oriented design, and has helped hundreds of programmers port legacy C applications to Java Jultaf a collection of Tcl and [incr Tcl] scripts and provides procedures resp. classes with various purpose Kamaelia Kamaelia is designed as a testbed for network experimentation using a component architecture designed to simplify creation and testing of new protocols for large scale media delivery systems. Kat Kat Desktop Search Environment is an open source framework designed to allow KDE applications to index and retrieve files. Metadata, fulltext and thumbnails are extracted from documents, images, mp3 and other media allowing quick and accurate information retrieval. Kat is similar to the Windows application Google Desktop Search and the Mac OSX utility Spotlight. It is completely written in C++, using Qt3, KDE and KIO libraries. KBabel KBabel is an advanced and easy to use PO-file (gnu gettext message catalogs) editor. It has many features, that makes editing and managing your PO-files easy. This includes full navigation capatibilities, extensive editing functionality, search functions, syntax checking and statistics function. Kbview designed to allow you to browse most executable formats. At present only ELF is supported Kelbt Kelbt generates backtracking LALR parsers. It is different from other backtracking LR systems in two ways. Firstly, it introduces a class of actions called undo actions, which are invoked as the backtracker undoes parsing. These allow the user to revert any side effects of forward semantic actions, making it possible to backtrack over language constructs which must modify global state in preparation for handling context dependencies. Secondly, it enables a user-controlled parsing strategy approximating that of generalized recursive-descent parsing. This makes it easy to resolve language ambiguities by ordering the grammar productions of a nonterminal according to their precedence. A partial C++ parser composed of a scanner, a name lookup stage, and a grammar with standard semantic actions and semantic undo actions is included. Kexi KFormDesigner an integrated environment for managing data. It helps creating database schemas, inserting, querying and processing data kodepaster a command line tool to post code(c++ etc) to websites and use the link to share it with others, very helpful in IRC channels. so no need to open the browser, copy the text from the file, hit 'paste' etc. everything is done in one step kparalleleport kparalleleport is a program for programmers who wish to use the parallel port. It makes it possible to view the values registered or read on the parallel port. KProf KProf is a visual tool for developers that displays the execution profiling output generated by gprof. Kumulate Kumulate gives a graphical overview of progress on a tree of translation (.po) files. For each one, as well as showing the actual statistics, it will show a box: the horizontal (left-right) axis is a color-coded representation of progress on the translation, and the vertical (up-down) axis represents the relative size of the module or file. Kylix Libs Packaging tries to package the required Kylix libs for the most popular Linux distributions so that you have to distribute only your application any care about the required kylix libraries Kyra a simple, fully featured, industrial strength Sprite engine written in C++. It is built on top of SDL and has been tested on Windows and Linux. It is provided free for non commercial use ldapdiff combines classical LibSysCTr a utility library that can be used to intercept system call functions on a Linux system. Process monitoring and sandboxing are just two of the potential usages of LibSysCTr linoleum_linux32 linoleum_linux32 is a run-time module for the L.in.o.l.e.u.m. universal low-level programming language. This module allows compilation of Linoleum programs to run in the 32-bit versions of the GNU/Linux operating system. Linux Trace Toolkit catalogs system events in minute detail, and allows a user to determine exactly what is happening lisp-network-server lisp-network-server is a simple framework for writing Common Lisp network applications. It takes care of listening on the network, accepting the connection, and starting a new thread with handler functions of your network-aware application. LoginServer a multi-client TCP server class with username/password access control Lokalize Lokalize is a computer-aided translation system that focuses on productivity and performance. It implies paragraph-by-paragraph translation approach (when translating documentation) and message-by-message approach (when translating GUI). Lokalize is a replacement for KDE4 of KBabel. LSB-VSX for the POSIX.1 coverage for the Linux Standard Base. LSB-VSX is built using the VSXgen (the generic VSX test framework), with the VSX-PCTS90 4.4.4 test set merged into it. The test coverage corresponds to the core "classic" POSIX.1 LuaRocks LuaRocks is a deployment and management system for modules in the Lua programming language. It aims to provide facilities for Lua such as those from module systems of other scripting languages, such as Ruby's RubyGems or Perl's CPAN. m4 GNU m4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible, although it has some extensions (for example, handling more than 9 positional parameters to macros). GNU m4 also has built-in functions for including files, running shell commands, doing arithmetic, etc. Magick++ the object-oriented C++ API to the ImageMagick image-processing library. MARST an Algol-to-C translator. It automatically translates programs written on the algorithmic language Algol 60 to the C programming language Matwrap a tool for interfacing C++ code into matrix-oriented scripting languages such as Matlab 5, Octave, and tela. It generates all the code to convert from the scripting language's internal types into the types that your C++ code understands MCML2 will compile CML2 (rulebase) to C or Java. It is mainly developed for configuring Linux kernel Memory Pool System a very general, adaptable, flexible, reliable, and efficient memory management system. It permits the flexible combination of memory management techniques, supporting manual and automatic memory management, in-line allocation, finalization, weakness, and multiple concurrent co-operating incremental generational garbage collections MemProf a tool for profiling memory usage and detecting memory leaks. It can be used with existing binaries without need for recompilation Method Support Method Support is a program for supporting procedures by defining online forms. In other words, it provides the equivalent of a set of paper forms. This can be used to support defined procedures or processes, such as required for methods, methodologies, and processes such as SDLCs, the CMMI, or for SOX. The emphasis of this approach is to make it easy to set up a set of forms and to modify the forms over time. MfGames.Node MfGames.Node is an I/O abstraction layer that creates a consistent interface for DotNET filesystem interfaces along with the internal contents of zip files. MIB Smithy SDK a dynamic Tcl/Tk extension for developing your own SNMP management scripts and SMI conversion tools (with or without a GUI). MIB Smithy SDK is based on the core library that MIB Smithy Professional and Standard are built upon, providing the user an API with all of the internal capabilities of MIB Smithy (and benefits thereof) without the GUI MindMap and Knowledgemanager a knowledge visualisation and archiving tool. MindMapping is displaying the knowledge in a tree structure so that the associations and links between knowledge MiniCppUnit MiniCppUnit another C++ port of the famous JUnit framework for unit testing. Unlike CppUnit, MiniCppUnit follows a minimalistic aproach: The basic features are the same but in only bout 500 lines of code! No library instalation is needed, etc. mixal an assembler and interpreter for Donald Knuth's mythical MIX computer mktclapp a tool for combining C/C++ code with Tcl/Tk to build a standalone executable that will run on machines without Tcl/Tk installed MpegTV SDK a Software Development Kit that gives access to MpegTV's MPEG decoding engine on various platforms MRPC Modular Remote Procedure Call: an open source remote procedure call system. It consists of a code generator and a transport interface. Sample transport code is provided and new transports are easy to define multitask multitask allows Python programs to use generators (a.k.a. coroutines) to perform cooperative multitasking and asynchronous I/O. Applications written using multitask consist of a set of cooperating tasks that yield to a shared task manager whenever they perform a (potentially) blocking operation, such as I/O on a socket or getting data from a queue. The task manager temporarily suspends the task (allowing other tasks to run in the meantime) and then restarts it when the blocking operation is complete. Such an approach is suitable for applications that would otherwise have to use select() and/or multiple threads to achieve concurrency. MySmartCI MySmartCI is a small and simple command interpreter which can be extended with Python modules. ncursesxx provides a set of widgets for text user interface like menubars, popup menus, various dialog boxes, and controls (push buttons, check buttons etc.). Using this library you can easy create a powerfull console program with compicated interface NoodleInstaller a free, easy to use, configurable install program for use in distributing your programs. It it available for both DOS and Linux NUnit a simple framework to write repeatable tests in any .Net language. NUnit has only been tested with the Beta 2 .Net SDK, build 2914. C#, VB and JScript examples are supplied nwbintools nwbintools is a machine code tool-chain containing an assembler and various related development tools. It will thus be similar to GNU's binutils, but no attempts are made to duplicate its functionality, organization, or interfaces. The assembler works on x86 ELF-based Linux and FreeBSD systems. Object Prelinking for C++ object files a code transformation tool that attempts to optimize C++ shared libraries in order to speed up the runtime linker ObjecTrieve (commercial) an advanced ISAM file manager, in the form of a library of C function that efficiently manage ISAM files. ObjecTrieve allows a developer to build robust database management applications that allow direct and fast access to records. Using ObjecTrieve, applications can be built with C or C++ to handle non-conventional, unstructured and large data, in addition to conventional and structured data that fits a record-and-file metaphor. As it is available under multiple platforms, a developer can build applications that can easily be ported across different environments. odirect When reading a lot of data from a disk or network filesystem, e.g. during a backup, buffer cache pollution can be a substantial performance problem for other processes on the machines involved. odirect is intended to provide a convenient way of avoiding that on systems that offer an O_DIRECT value for open(). The project provides a C library, a C++ wrapper, and SWIG code to make it easy to use from your favorite scripting language. Open Track a flexible issue tracking tool originally developed at the Open Software Foundation for tracking issues on OSF/1, DCE, Motif, DME, ODE, and a slew of other projects OpenCCG a collection of natural language processing components and tools which provide support for parsing and realization with Combinatory Categorial Grammar (CCG) p4.pl p4 is a Perl-based macro processor that is useful when cpp and m4 are insufficient. p4delta summarizes the difference between a Perforce depot/repository project and its local version. It detects files that have been added and removed, and of existing files it counts the number of lines that have been added, deleted, and changed PAG Program Analyzer Generator: provides for a generation of efficient analyzers from concise specifications. PAG-generated interprocedural analyzers can be easily integrated into existing compilers Pandora Engine an all-purpose object oriented SDK, aimed at assisting developers in all areas of the technology industry Patch Maker Patch Maker helps you manage multiple in-progress source code patches to software. It remembers which files are part of which patch, and keeps them disentangled during the development process. It speeds up common operations and housekeeping tasks, allowing you to focus on writing code. It is a command-line tool written in Perl, and so is usable on (at least) Windows, Linux and Mac OS X. patchutils a small collection of programs that operate on patch files. Currently it contains interdiff and filterdiff pdist a tool for automating the process of creating software packages, much like a similar tool called bdist. Like bdist, pdist creates standard packages in program-version.tar.gz form according to a user supplied definition. pdist is written in Perl, and based partly on bdist, a shell script Pedeto Pedeto is a plugin for Eclipse that provides a fully featured IDE for Perl. It features full Eclipse integration, content assist, background syntax checking, code folding, syntax highlighting, a debugger, and much more. pENC (commercial) a source code encryptor for Perl. It generates a license file, which must be present for the encrypted code to run Percolator a toolbox to help when developing EJB based data layers. Some of its components may be used for other activities, but the main target of Percolator is to be used in an architecture where not only the presentation layer is separate from the business layer (i.e. 3 tier solutions), but where the presentation layer, the application layer and the data layer are three different things Perl Console Perl Console is a small program that lets you evaluate Perl code interactively. It uses Readline to grab input, and provides completion with all the namespaces loaded during your session. It allows you to load a module in your session and test a function exported by it. pgtcl This is a project to evolve and upgrade libpgtcl, the Tcl client interface to PostgreSQL. Enhancements will include converting all commands to use Tcl 8-style objects, an interface to asynchronous query processing, more rigorous checking of command arguments, and more standardized processing of numeric arguments and error reporting. PHP AnyXML AnyXML is an XML read-only class that offers PHP 5 SimpleXML's capabilities on any host, even those with PHP 4 or lacking the expat extension. It will automatically and transparently fail back to the fastest available solution, always offering a consistent API. Pin Dynamic Instrumentation Tool