Semantic search

Jump to: navigation, search
Search

Edit query Show embed code

The query [[Concept:Library]] was answered by the SMWSQLStore3 in 0.0614 seconds.


Results 21 – 270    (Previous 250 | Next 250)   (20 | 50 | 100 | 250 | 500)   (JSON | CSV | RSS | RDF)


Ada Components
A component library for the Ada language. The four main categories are data structures, math, Ada programming tools, and OS interface.
Ada Motif binding library
SERC's Ada/Motif is a complete binding to X Windows and OSF/Motif for the Ada programming language it was based in part upon the SAIC/Unisys (STARS) public-domain bindings it incorporates many of the bug fixes and additional capabilities beyond the public-domain releases in Ada/Motif. Most noteworthy are the capabilities included in Ada/Motif for Ada tasking, callback registration, memory leak detection/prevention and capabilities for developing customized widgets. Paramax/STARS considers Ada/Motif to be the commercial version of their STARS bindings, according to SERC.
AdaSockets
'AdaSockets' is a library that lets you use sockets in Ada 95. It supports unicast and multicast sockets, and uses object oriented structures to ease sockets manipulation.
AdaUnits
'AdaUnits' provides an implementation of dimensioned values for Ada. Unit checks are made at run-time, if not optimized out by the compiler. The package supports SI and irregular measurement units and shifted units (like degrees Celsius). Conversions from and back to strings are provided for all various irregular units.
Adns Heckert gnu.tiny.png
GNU adns is a C library that provides easy-to-use DNS resolution functionality. The library is asynchronous, allowing several concurrent calls. The package also includes several command-line utilities for use in scripts.
Aften
Aften is a simple A/52 (AC-3) audio encoder based on the FFMpeg libraries. The name is an acronym for A/Fifty-Two ENcoder. It is also Danish and Norwegian word for 'evening'. It is able to create stereo and multi-channel AC3-compatible audio streams.
Ags
Advanced GTK+ Sequencer (AGS) is intended to use for music composition. It features a piano roll, as well a synth, matrix editor, drum machine, soundfont2 player, mixer and an output panel. Further it has LADSPA, DSSI and Lv2 plugin support. It's designed to be highly configurable. You may add effects to its effect chain; and add or remove audio channels/pads. You may set up a fully functional network of engines, thus there is a link editor for linking audio lines. AGS requires a realtime kernel and ALSA support. AGS uses conditional locks to keep several threads in sync that's why you need at least a preemptable kernel. LADSPA support has been added to version 0.4.2 as well export to WAV. Version 0.5.x brings you first concurrent audio tree processing support. Version 0.6.x is dedicated to accessibility. You might control GSequencer by keyboard. As you move to a note it provides you an audible feedback. Version 0.7.x gives you the benefit of providing the libraries libags, libags-thread, libags-server, libags-audio and libgsequencer. It contains for now an automation editor. Open Sound System (OSS4) and JACK Audio Connection Kit support has been added recently. Now you may configure multiple soundcards. Since 0.7.111 there is MIDI input available. Let you record your MIDI instrument and doing live performance. Version 0.8.x extended MIDI support to import/export SMF. A built-in envelope editor and additional editing functionality like move/crop selected notes.
Airhook
Airhook is a reliable data delivery protocol, like TCP. Unlike TCP, Airhook gracefully handles intermittent, unreliable, or delayed networks. Other features include session recovery, queue control, and delivery status notification. Airhook is useful for keeping connections running over bad wireless networks (like CDPD), intermittent dial-up connections, and any other network that doesn't work very well. The implementation includes a TCP proxy (so you can use HTTP, SSH, etc.) and a protocol library for applications that want more control (real-time media delivery, games, etc).
Aisleriot
Aisleriot is a suite of Solitaire card games which are easy to play with the aid of a mouse. This package includes popular variants such as spider, freecell, klondike, thirteen (pyramid), yukon, canfield and many more.
Alchemist
This package provides a functional, Ruby Domain-Specific Language (DSL) for casting, transforming and transposing objects. The project's README file provides the following explanation of the purpose of this library:

Rationale


Casting complex objects from one type to another can be an uncomfortable process to express well. Objects that we use on a daily basis are not always in our control, and, even when they are, some don't lend themselves to simple construction. Remote service communication objects or complex data structures from libraries we use in our applications can result in large piles of casting code.

This circumstance often produces large swaths of procedural code, even if split up into separate function calls. This code can be not only difficult to understand, but difficult to test if an object requires a great deal of set up. Field or method assignments midway through can change and break the entire operation.

The goal of this project is to provide a method of defining easily digestible specifications for object translation that are also easily testable and changeable. The project focuses on writing specifications for transformations and not doing direct mutation in the recipes. The result is something that should seem somewhat functional, but also exceedingly separable.

Aletheia
In short, Aletheia is software for getting science published and into the hands of everyone, for free. It's a decentralised and distributed database used as a publishing platform for scientific research. So, Aletheia is software. But software without people is nothing. To comprehensively answer the question what is Aletheia, Aletheia is software surrounded by a community of people who want to change the world through open access to scientific knowledge. For a more in depth explanation, Aletheia is an Ethereum Blockchain application utilising IPFS for decentralised storage that anyone can upload documents to, download documents from, that also handles the academic peer review process. The application runs on individual PCs, all forming part of the IPFS database. This gives us an open source platform that cannot be bought out by the large publishers (and any derivitive works must also be open source) that should also be hard to take down due to the database being spread across the globe in multiple legal jurisdictions. Aletheia is designed to be a resilient platform run transparently by the community, not some black box corporation or editorial board, meaning all users can see the decisions Aletheia is making and have a stake in that decision making process if they so desire. By this nature, Aletheia is decentralised, it has no key person risk. Should the core group who invented Aletheia dissapear Aletheia won't cease to exist, it will continue to be run by the community. The community moderates content through various mechanisms (peer review, reputation scores etc.,) to ensure quality of content.
Alexis FTP (aftp)
aftp is an FTP library and a background FTP tool. The aftp tool is a good example on how to use the library. You need FTP functionality in your software? Use the aftp library!
Algart
AlgART are free software Java libraries, supporting generalized smart arrays and matrices with elements of any types (1 bit, 8/16/32/64-bit integers, 32/64-bit floating point values and any other Java types), including a wide set of of 2D-, 3D- and multidimensional image processing and other algorithms, working with arrays and matrices.

Main Features

  • The libraries use 63-bit addressing of array elements (all indexes and length are represented by 64-bit long type). So, it's theoretically possible to create and process arrays and matrices containing up to 2^63-1 (~10^19) elements of any primitive or non-primitive types, if OS and hardware can provide necessary amount of memory or disk space.
  • Memory model concept allows storing AlgART arrays in different schemes, from simple Java arrays to mapped disk files; all necessary data transfers are performed automatically while every access to an element or a block of elements.
  • Most of algorithms are based on wide usage of lazy evaluations. Typical operations, like elementwise summing or geometrical matrix transformations, are implemented via lazy views of the source array or matrix.
    • For example, you can take a multidimensional matrix, rotate it (or perform any other affine or projective transform), and then extract a submatrix from the result. All these operations will be performed virtually (not requiring time), and actual calculations will be performed only at the moment of accessing elements, usually while copying the resulting matrix to a newly created one. Moreover, in many cases the libraries will "understand" itself, that the user wants to perform rotation or another transform, and will split the matrix into suitable rectangular blocks (fitting in RAM) and choose the best algorithm for this task at the moment of copying operation.
  • The libraries contain a wide set of image processing algorithms over matrices: linear filtering, mathematical morphology, rank operations, spectral transformation (FFT), etc.
  • There is also skeletonization and measuring of binary images.
Allegro
Allegro is multi-platform game programming library for C/C++ developers distributed freely, that provides many functions for graphics, sounds, player input (keyboard, mouse and joystick) and timers. It also provides fixed and floating point mathematical functions, 3d functions, file management functions, compressed datafile and a GUI. It can also be used for other types of multimedia programming.
Alliance
Complete set of free CAD tools and portable libraries for VLSI design. It includes a VHDL compiler and simulator, logic synthesis tools, and automatic place and route tools. Advanced verification tools for functional abstraction and static timing analysis are part of the system. A complete set of portable CMOS libraries is provided, including a RAM generator, a ROM generator, and a data-path compiler.
Alogg
'alogg' is a library which makes it easier to use Ogg/Vorbis streams with Allegro. It offers facilities to decode, stream, and encode Ogg/Vorbis streams, and integrates those facilities with Allegro's datafile and sample loading routines. 'alogg' comes with a sample player, streamer, and encoder based on Allegro's sound routines.
Alpine3D
Alpine3D is a spatially distributed (surface), three dimensional (atmospheric) model for analyzing and predicting dynamics of snow-dominated surface processes in mountainous topography. It includes models for snow cover (SNOWPACK), vegetation and soil, snow transport, radiation transfer and runoff which can be enabled or disabled on demand.
Alpy
Alpy provides a Python binding to the C Allegro game programming library. This binding is mostly focused with providing a basic "raw" interface to the library, trying to preserve most of the Python API similar to the C version to ease the transition to C programmers.
Amara
Library for XML processing in Python, designed to balance the native idioms of Python with the native character of XML.
An Gramadoir
An Gramadóir is intended as a platform for the development of sophisticated natural language processing tools for languages with limited computational resources. It is currently implemented for the Irish language (Gaeilge); this is, to the best of my knowledge, the first grammar checker developed for any minority language. Ports for Afrikaans, Cornish, Esperanto, Walloon, and Welsh are currently underway. The grammar checker can be called from emacs, vim, or OpenOffice. Various components of the engine can be bootstrapped using statistical methods based on text corpora.
Anemone
Anemone is a Ruby library that makes it quick and painless to write programs that spider a website. It provides a simple DSL for performing actions on every page of a site, skipping certain URLs, and calculating the shortest path to a given page on a site. The multi-threaded design makes Anemone fast. The API makes it simple. And the expressiveness of Ruby makes it powerful.
AngelScript
The AngelCode Scripting Library, or AngelScript as it is also known, is an extremely flexible cross-platform scripting library designed to allow applications to extend their functionality through external scripts. Featuring a syntax similar to C/C++, it has been designed from the beginning to be an easy to use component, both for the application programmer and the script writer.
AntTweakBar
AntTweakBar allows programmers to quickly add a light and intuitive graphical user interface into graphic programs to interactively tweak them. It is a small and easy to use C/C++ library that can be readily integrated into OpenGL and DirectX applications. It targets graphical programs that need an easy way to tweak parameters and see the result in real-time like 3D demos, light inline game editors, small 3D applications, prototypes, debug facilities of weighter graphical programs, etc. Programmers are not required to design the graphical interface by providing coordinates or by using a visual UI editor. Controls are automatically organized following an optional given hierarchy. In most cases, only one line of code is needed to add a new variable to a tweak bar. AntTweakBar can be easily integrated with your own windowing system or with existing toolkits. Examples of integration with GLFW, SDL, GLU are provided.
Antidote
Antidote is an open source implementation of the IEEE 11073-20601 standard. It also contains the implementation of a D-Bus based 11073 manager service.
Apophenia
'Apophenia' is a statistical library for C. It provides functions on the same level as those of the typical stats package (OLS, probit, singular value decomposition, &c.) but doesn't tie the user to an ad hoc language or environment. It uses the GNU Scientific Library for number crunching and SQLite for data management, so the library itself focuses on model estimation and quickly processing data.
App
'App' is a C++ preprocessor for that accepts as input arbitrary C++ code that may contain embedded constructs for specifying algebraic data types and associated pattern matching operations, and produces as output the same code with all such constructs translated to normal C++. 'app' provides for C++ the same capabilities that functional languages have regarding algebraic types. 'Applib' is the associated runtime library that supports the core run time requirements of the translated code, and which provides additional utilities.
AppTools
The AppTools project includes a set of packages that Enthought has found useful in creating a number of applications. They implement functionality that is commonly needed by many applications
  • enthought.appscripting: Framework for scripting applications.
  • enthought.help: Provides a plugin for displaying documents and examples and running demos in Envisage Workbench applications.
  • enthought.io: Provides an abstraction for files and folders in a file system.
  • enthought.naming: Manages naming contexts, supporting non-string data types and scoped preferences.
  • enthought.permissions: Supports limiting access to parts of an application unless the user is appropriately authorised (not full-blown security).
  • enthought.persistence: Supports pickling the state of a Python object to a dictionary, which can then be flexibly applied in restoring the state of the object.
  • enthought.preferences: Manages application preferences.
  • enthought.resource: Manages application resources such as images and sounds.
  • enthought.scripting: A framework for automatic recording of Python scripts.
  • enthought.sweet_pickle: Handles class-level versioning, to support loading of saved data that exist over several generations of internal class structures.
  • enthought.template: Supports creating templatizable object hierarchies.
  • enthought.type_manager: Manages type extensions, including factories to generate adapters, and hooks for methods and functions.
  • enthought.undo: Supports undoing and scripting application commands.
Argtable
Argtable is a freely available C/C++ programmer's library for parsing the command line arguments. Having only a few functions and a simple set of rules, it is capable of handling most aspects of command line parsing and error reporting with a minimum of fuss.
Armadillo: C++ library
Armadillo is a C++ linear algebra library (matrix and vector maths) aiming towards a good balance between efficiency and ease of use while staying lean. This library is useful if C++ has been decided as the language of choice (due to speed and/or integration capabilities), rather than another language like Matlab ® or GNU Octave. Armadillo uses a delayed evaluation approach in order to combine several operations into one and reduce (or eliminate) the need for temporaries. This is accomplished through extensive use of recursive templates and template meta-programming.
Aspell Heckert gnu.tiny.png
GNU Aspell is a spell checker that can be used either as a library or as an independent spell checker. It does a much better job of coming up with possible suggestions than other English language spell checkers. Other technical enhancements over Ispell include shared memory for dictionaries and intelligent handling of personal dictionaries when more than one Aspell process is open.
Astronomical Papers Library
A C library containing theories of motion of solar system objects that have been published in various astronomical journals such as Astronomy & Astrophysics, the Astronomical Journal, and Astronimcal Papers prepared for the use of the American Ephemeris. Currently this includes such theories as Newcomb's "Tables of the Sun" and all the planets as well as the theory known as "The Improved Lunar Ephemeris".
At-spi
'at-spi' is a part of the Gnome Accessibility Project. It provides a Service Provider Interface for the Assistive Technologies available on the GNOME platform, and a library against which applications can be linked.
Atomthreads
Atomthreads is a free, lightweight, portable, real-time scheduler for embedded systems. It is targeted at systems that need only a scheduler and the usual RTOS primitives. No file system, IP stack or device drivers are included, but developers can bolt on their own as required. Atomthreads will always be a small number of C files which are easy to port to any platforms that require threading by adding a simple architecture-specific file.
Aubio
aubio is a library for audio labeling. Its features include segmenting a sound file before each of its attacks, performing pitch detection, tapping the beat and producing midi streams from live audio. The name aubio comes from 'audio' with a typo: several transcription errors are likely to be found in the results too. The aim of this project is to provide these automatic labeling features to other audio softwares. Functions can be used off-line in sound editors and software samplers, or online in audio effects and virtual instruments.
Autogen Heckert gnu.tiny.png
'AutoGen' generates program files that contain repetitive text with varied substitutions. It simplifies the maintenance of programs with large amounts of repetitive text, which is useful if several blocks of such text must be synchronized. It includes:
  • AutoOpts - automates the handling of command line, environment and config file options, including usage text, man pages, and the invoking section of an info doc
  • getdefs - extracts AutoGen definitions from stylized comments embedded in source code
  • columns - tabularizes lists for improved output appearance
  • AutoXDR - NFSv4 specifies that its remote procedure calls be batched. AutoGen generates the code for marshalling and unmarshalling the arguments on both sides of the RPC request
  • AutoFSM - produces a transition table and prototype finite state machine where it is possible to determine a state transition type (token code) without reference to the current state
  • xml2ag - lets AutoGen use any XML file as if it were a set of AutoGen definitions
Autotrace
Autotrace is a program which converts bitmap images to vector images. It can import images in BMP, TGA, PNM, PPM, PGM, PBM and those supported by ImageMagick, and can output Postscript, svg, xfig, swf, pstoedit, emf, dxf, cgm, mif, p2e and sk
Avaneya: Viking Lander Remastered DVD
Whether you are a fan of science fiction, a space–science enthusiast, hobbyist, photographer, gamer or a patron of grass–roots libre arts and technology, you are sure to find the first successful images from the surface of Mars highly captivating. These mind blowing images were taken by NASA's Viking landers during the highly ambitious, billion–dollar mission first launched in 1975. However, many images were nearly lost to history due to magnetic tape deterioration and archaic proprietary technology. With NASA's blessing, our team developed the technology to recover many of these images. This research tool was part of the design phase of our parent project, Avaneya — our upcoming libre cerebral science fiction game for the GNU operating system set on Mars, described in the words of Richard Stallman as an exciting, pioneering project. Originally an internal research tool, overwhelming public interest compelled us to release the technology on this DVD for all. Now everyone can relive the original breathtaking experience that captured the world's attention and marked the first successful moment in history that humanity saw Mars — not as a distant, impersonal, celestial body, beheld through a telescope for centuries, but as a tangible and alien world well within its reach.
Avl Heckert gnu.tiny.png
libavl is a balanced tree library that comes with full documentation. It includes unthreaded, right threaded, and fully threaded variants of AVL tree, as well as unthreaded red-black trees. It features self-test routines as well as insertion, deletion, tree count, tree copy, tree walking and traversal, search, and threading and unthreading routines. Each function has a comment describing its interface, and each step in the algoritms the program uses has a comment also. Each source code file includes a built-in test routine.
B-Forms
'B-Forms' is an object-oriented PHP library for developing Webform-based applications. It supports tabular forms with multiple records of the same type being edited simultaneously, and provides security mechanism against data tampering. The library provides two base layouts that cover the the vast majority of cases. Only in very tricky form layouts would you have to write HTML code to specify the form layout. It also automatically saves and restores hidden fields. 'B-Forms' divides a script into three logical areas: form definition, data management, and form presentation. Forms have a powerful block architecture, each block typically representing a different data object within the form. Each block can be used to edit several objects at once- the library handles record management.
BLAS
The BLAS (Basic Linear Algebra Subprograms) are routines that provide standard building blocks for performing basic vector and matrix operations. The Level 1 BLAS perform scalar, vector and vector-vector operations, the Level 2 BLAS perform matrix-vector operations, and the Level 3 BLAS perform matrix-matrix operations. Because the BLAS are efficient, portable, and widely available, they are commonly used in the development of high quality linear algebra software, LAPACK for example.
BRL-CAD
BRL-CAD includes an interactive geometry editor, parallel ray-tracing support for rendering and geometric analysis, path-tracing for realistic image synthesis, network distributed framebuffer support, image-processing and signal-processing tools.
Babel
A collection of tools for internationalizing Python applications Babel is composed of two major parts:
  • tools to build and work with gettext message catalogs
  • a Python interface to the CLDR (Common Locale Data Repository), providing access to various locale display names, localized number and date formatting, etc.
Backbone.js
Backbone.js gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.
Badger
Badger is a library used to generate badge sheets for events, given a PDF template and data for the badges.
Barcode Heckert gnu.tiny.png
GNU barcode is a tool to convert text strings to printed bars. It supports a variety of standard code to represent the strings and creates postscript output. Features include:
  • available as both a library and a command line frontend (so you can include barcode printing in your application)
  • supports UPC, EAN, ISBN, CODE39, and other encoding standards
  • Postscript and encapsulated postscript output (other backends can be added as needed)
  • Accepts sizes and positions as inches, millimeters, and centimeters
  • Can create tables of barcodes (to print labels on sticker pages)
Bcfg2
Bcfg2 allows you to describe and deploy complex configurations across pools of GNU/Linux and Unix systems, leading to a consistent, reproducible, and verifiable description of your environment. Bcfg2's visualization and reporting tools aid in your day-to-day administrative tasks. Its unique analysis features help you cope with the ever-increasing complexity of your networks.
Beanstalkc
beanstalkc is a simple beanstalkd client library for Python. beanstalkd is a fast, distributed, in-memory workqueue service.
BeeCrypt
BeeCrypt is a cryptography library that contains highly optimized C and assembler implementations of many well-known algorithms including Blowfish, MD5, SHA-1, Diffie-Hellman, and ElGamal. Unlike some other crypto libraries, BeeCrypt is not designed to solve one specific problem, like file encryption, but to be a general purpose toolkit which can be used in a variety of applications. There are also no patent or royalty issues associated with BeeCrypt.
Bennu
Bennu is a software library written in PHP that implements the functionality of the IETF iCalendar 2.0 specification (RFC 2445). Its purpose is to enable applications which have an interest in this format (e.g. calendaring, scheduler and organizer programs) to support iCalendar in an easy, powerful, and extensible way.
BigMath
Based partly on Knuth's Seminumerical Algorithms and written in C, BigMath aims to be light-weight and fast. Its original implementation was for use within a kernel extension - thus size and speed were essential. BigMath supports only integer math, including add, sub, mul, div, mod, modpow, modinv, pow, gcd, factorial, radix conversion, scientific notation and various comparisons.
Bill's OpenGL Library
BOGL - an OpenGL scenegraph/renderer supporting modern hardware (vertex and pixel programs via Cg, buffer objects, etc), freetype fonts, XML resource files, bezier patches, state sorting, separate render and simulation threads.
Binary I O library
'libbinio' uses its own protocol to store and retrieve binary data portably. It uses an fprintf/fscanf interface, exporting eight functions: fputf, vfputf, fgetf, vfgetf, fwputf, vfwputf, fwgetf, and vfwgetf. Rather than using data types such as "16 bits", it uses standard C types and uses printf/scanf-style argument lists (it even uses GNU argument checking if available). It should be a drop-in replacement for printf/scanf and still work perfectly well. It aims to be portable to every C89-conforming implementation, but can use C99 and GNU extensions if available.
Bioinformatics Template Library
This library focuses on the data structures and algorithms used in bioinformatics and molecular modelling, following closely the approach of the Standard Template Library (STL) to implement efficient generic programming modules using compile time mechanisms. Although the BTL was designed with biomolecular applications in mind it contains classes of more general utility: for instance, the Matrix class could be used for matrix algebra in many contexts.
BirdFont
BirdFont is a font editor which can generate fonts in SVG, EOT and TTF format.
Biskit
Biskit is a python library for structural bioinformatics research. It simplifies the analysis of macromolecular structures, protein complexes, and molecular dynamics trajectories and offers a platform for the rapid integration of external programs.
Bit Vector
Bit::Vector is a (stand-alone) C library and an object-oriented Perl module (with overloaded operators) which allows you to handle bit vectors, sets (of integers), "big integer arithmetic" (e.g. for cryptography), and boolean matrices (all of arbitrary size) very efficiently. The package also includes an object-oriented Perl module for accessing the C library from Perl (the library can also be used by itself, without Perl). Optionally, it features overloaded operators for maximum ease of use.
BitPacket
BitPacket is a Python module to represent bit field structures in an easy object-oriented way. BitPacket provides three classes: BitField, BitStructure and BitVariableStructure which represent simple bit fields, and fixed and variable structures of bit fields respectively. BitStructure and BitVariableStructure are BitField themselves and all of them can be used together in order to build packets. That is, we can add any BitField subclass into a BitStructure or BitVariableStructure.
Bitap
The bitap library is a clean implementation of regular expression (regex/grep) string matching using the bitap algorithm. Approximate (a.k.a. fuzzy) matching is allowed. This is the same algorithm as the one used in Glimpse and agrep, but it is much more complete with regard to regular expression syntax, and is much cleaner. It is quite fast compared to other greps due to the bitap algoritm and modern CPU architechture. Modifying code for special cases speeds things up even futher. Note that the complete 'search' string must be matched by the pattern. If you want to search for substrings of the search string, prefix and postfix the pattern with '.*'.
Bitstring
bitstring is a pure Python module designed to help make the creation and analysis of binary data as simple and natural as possible. BitStrings can be constructed from integers (big and little endian), hex, octal, binary, strings or files. They can be sliced, joined, reversed, inserted into, overwritten, etc. with simple functions or slice notation. They can also be read from, searched and replaced, and navigated in, similar to a file or stream.
Bitwise enums
A very simple, 0-overhead, and yet type-safe 1-file library for doing bitwise operations between masks represented by enums. Please note: This library has been subsumed into MiLi and is no longer being maintained individually.
Blib
'blib' is the Blinkenlights Library, a programming library that gives you a kick start into development with Blinkenlights/Arcade. 'blib' also provides the Game API with which games for Arcade can be developed. 'blib' provides functions to read and write BLM, BML, and MNG animations, and to receive and send the Blinkenlights protocol.
Blip Buffer
Blip_Buffer implements efficient band-limited sound synthesis buffers, allowing high-quality emulation of video game sound chips. After setting the source clock rate and output sampling rate, waveforms are generated by specifying the time points where amplitude changes occur. Treble and bass adjustments are also supported. Many examples are included that show basic waveform generation, sample buffering schemes, and more advanced topics. They can be made to write output to a wave sound file, or optionally use the SDL multimedia library for real-time playback, waveform display, and mouse control of parameters.
BlockCanvas
The BlockCanvas project provides a visual environment for creating simulation experiments, where function and data are separated. Thus, you can define your simulation algorithm by visually connecting function blocks into a data flow network, and then run it with various data sets (known as "contexts"); likewise, you can use the same context in a different functional simulation. The project provides support for plotting, function searching and inspection, and optimization. It includes a stand-alone application that demonstrates the block-canvas environment, but the same functionality can be incorporated into other applications. The BlockCanvas project relies on included libraries that allow multiple data sets using Numeric arrays to be incorporated in a Traits-based model in a way that is simple, fast, efficient, and consistent.
Bmrblib
Bmrblib is a Python API abstracting the Biological Magnetic Resonance Data Bank (BioMagResBank or BMRB) NMR-STAR format (http://www.bmrb.wisc.edu/). It allows the writing of NMR-STAR files for BMRB data deposition and the reading and easy extraction of data from files residing in the BMRB data bank, all without knowledge of the Self-Defining Text Archive and Retrieval (STAR) format.
Boehm garbage collector
A conservative garbage collector which can be used as a garbage collecting replacement for C malloc or C++ new and as a malloc leak detector.
Bond
BOND (building object network databases) is a rapid application development tool which allows you to develop GUI front ends to PostgreSQL databases. It uses XML to define widget layout and how to obtain information from databases. This project is designed to simplify the process of developing database applications for GTK.
Booleano
Booleano is an interpreter of boolean expressions, a library to define and run filters available as text (e.g., in a natural language) or in Python code. In order to handle text-based filters, Booleano ships with a fully-featured parser whose grammar is adaptive: Its properties can be overridden using simple configuration directives.
Boost
Boost is a repository of portable and peer-reviewed C++ libraries.
Accumulators 
Framework for incremental calculation, and collection of statistical accumulators. Math and numerics
Algorithm 
A collection of useful generic algorithms. Algorithms
Any 
Safe, generic container for single values of different value types. Data structures
Array 
STL compliant container wrapper for arrays of constant size. Containers
Asio 
Portable networking, including sockets, timers, hostname resolution and socket iostreams. Concurrent Programming
Assign 
Filling containers with constant or generated data has never been easier. Input/Output
Bimap 
Bidirectional maps library for C++. With Boost.Bimap you can create associative containers in which both types can be used as key. Containers
Bind 
boost::bind is a generalization of the standard functions std::bind1st and std::bind2nd. It supports arbitrary function objects, functions, function pointers, and member function pointers, and is able to bind any argument to a specific value or route input arguments into arbitrary positions. Function objects and higher-order programming
Call Traits 
Defines types for passing parameters. Generic Programming
Chrono 
Useful time utilities. Domain Specific
Circular Buffer 
A STL compliant container also known as ring or cyclic buffer. Containers
Compatibility 
Help for non-conforming standard libraries. Broken compiler workarounds
Compressed Pair 
Empty member optimization. Data structures
Concept Check 
Tools for generic programming. Generic Programming
Config 
Helps Boost library developers adapt to compiler idiosyncrasies; not intended for library users. Broken compiler workarounds
Container 
Standard library containers and extensions. Containers
Context 
Context switching library. Concurrent Programming
Conversion 
Polymorphic and lexical casts. String and text processing
CRC 
The Boost CRC Library provides two implementations of CRC (cyclic redundancy code) computation objects and two implementations of CRC computation functions. The implementations are template-based. Domain Specific
Date Time 
A set of date-time libraries based on generic programming concepts. Domain Specific
Dynamic Bitset 
The dynamic_bitset class represents a set of bits. It provides accesses to the value of individual bits via an operator[] and provides all of the bitwise operators that one can apply to builtin integers, such as operator& and operator<<. The number of bits in the set is specified at runtime via a parameter to the constructor of the dynamic_bitset. Containers
Enable If 
Selective inclusion of function template overloads. Generic Programming
Exception 
The Boost Exception library supports transporting of arbitrary data in exception objects, and transporting of exceptions between threads. Language Features Emulation
Filesystem 
The Boost Filesystem Library provides portable facilities to query and manipulate paths, files, and directories. System
Flyweight 
Design pattern to manage large quantities of highly redundant objects. Patterns and Idioms
Foreach 
In C++, writing a loop that iterates over a sequence is tedious. We can either use iterators, which requires a considerable amount of boiler-plate, or we can use the std::for_each() algorithm and move our loop body into a predicate, which requires no less boiler-plate and forces us to move our logic far from where it will be used. In contrast, some other languages, like Perl, provide a dedicated "foreach" construct that automates this process. BOOST_FOREACH is just such a construct for C++. It iterates over sequences for us, freeing us from having to deal directly with iterators or write predicates. Algorithms
Format 
The format library provides a class for formatting arguments according to a format-string, as does printf, but with two major differences: format sends the arguments to an internal stream, and so is entirely type-safe and naturally supports all user-defined types; the ellipsis (...) can not be used correctly in the strongly typed context of format, and thus the function call with arbitrary arguments is replaced by successive calls to an argument feeding operator%. String and text processing
Function 
Function object wrappers for deferred calls or callbacks. Function objects and higher-order programming
Function Types 
Boost.FunctionTypes provides functionality to classify, decompose and synthesize function, function pointer, function reference and pointer to member types. Generic Programming
Functional 
The Boost.Function library contains a family of class templates that are function object wrappers. Function objects and higher-order programming
Functional/Factory 
Function object templates for dynamic and static object creation Function objects and higher-order programming
Functional/Forward 
Adapters to allow generic function objects to accept arbitrary arguments Function objects and higher-order programming
Functional/Hash 
A TR1 hash function object that can be extended to hash user defined types. Function objects and higher-order programming
Functional/Overloaded Function 
Overload different functions into a single function object. Function objects and higher-order programming
Fusion 
Library for working with tuples, including various containers, algorithms, etc. Template Metaprogramming
Geometry 
Geometry Library. Algorithms
GIL 
Generic Image Library Containers
Graph 
The BGL graph interface and graph components are generic, in the same sense as the the Standard Template Library (STL). Containers
Heap 
Priority queue data structures. Data structures
ICL 
Interval Container Library, interval sets and maps and aggregation of associated values Containers
Identity Type 
Wrap types within round parenthesis so they can always be passed as macro parameters. Preprocessor Metaprogramming
In Place Factory, Typed In Place Factory 
Generic in-place construction of contained objects with a variadic argument-list. Generic Programming
Integer 
The organization of boost integer headers and classes is designed to take advantage of <stdint.h> types from the 1999 C standard without resorting to undefined behavior in terms of the 1998 C++ standard. The header <boost/cstdint.hpp> makes the standard integer types safely available in namespace boost without placing any names in namespace std. Math and numerics
Interprocess 
Shared memory, memory mapped files, process-shared mutexes, condition variables, containers and allocators. Concurrent Programming
Interval 
Extends the usual arithmetic functions to mathematical intervals. Math and numerics
Intrusive 
Intrusive containers and algorithms. Containers
IO State Savers 
The I/O sub-library of Boost helps segregate the large number of Boost headers. This sub-library should contain various items to use with/for the standard I/O library. Input/Output
Iostreams 
Boost.IOStreams provides a framework for defining streams, stream buffers and i/o filters. String and text processing
Iterators 
The Boost Iterator Library contains two parts. The first is a system of concepts which extend the C++ standard iterator requirements. The second is a framework of components for building iterators based on these extended concepts and includes several useful iterator adaptors. Iterators
Lambda 
Define small unnamed function objects at the actual call site, and more. Function objects and higher-order programming
Lexical Cast 
General literal text conversions, such as an int represented a string, or vice-versa, from Kevlin Henney. String and text processing
Local Function 
Program functions locally, within other functions, directly within the scope where they are needed. Function objects and higher-order programming
Locale 
Provide localization and Unicode handling tools for C++. String and text processing
Math 
Boost.Math includes several contributions in the domain of mathematics: The Greatest Common Divisor and Least Common Multiple library provides run-time and compile-time evaluation of the greatest common divisor (GCD) or least common multiple (LCM) of two integers. The Special Functions library currently provides eight templated special functions, in namespace boost. The Complex Number Inverse Trigonometric Functions are the inverses of trigonometric functions currently present in the C++ standard. Quaternions are a relative of complex numbers often used to parameterise rotations in three dimentional space. Octonions, like quaternions, are a relative of complex numbers. Math and numerics
Math Common Factor 
Greatest common divisor and least common multiple. Math and numerics
Math Octonion 
Octonions. Math and numerics
Math Quaternion 
Quaternions. Math and numerics
Math/Special Functions 
A wide selection of mathematical special functions. Math and numerics
Math/Statistical Distributions 
A wide selection of univariate statistical distributions and functions that operate on them. Math and numerics
Member Function 
Generalized binders for function/object/pointers and member functions. Function objects and higher-order programming
Meta State Machine 
A very high-performance library for expressive UML2 finite state machines. State Machines
Min-Max 
Standard library extensions for simultaneous min/max and min/max element computations. Algorithms
Move 
Portable move semantics for C++03 and C++11 compilers. Language Features Emulation
MPI 
Message Passing Interface library, for use in distributed-memory parallel application programming. Concurrent Programming
MPL 
The Boost.MPL library is a general-purpose, high-level C++ template metaprogramming framework of compile-time algorithms, sequences and metafunctions. It provides a conceptual foundation and an extensive set of powerful and coherent tools that make doing explict metaprogramming in C++ as easy and enjoyable as possible within the current language. Template Metaprogramming
Multi-Array 
Boost.MultiArray provides a generic N-dimensional array concept definition and common implementations of that interface. Containers
Multi-Index 
The Boost Multi-index Containers Library provides a class template named multi_index_container which enables the construction of containers maintaining one or more indices with different sorting and access semantics. Containers
Numeric Conversion 
Optimized Policy-based Numeric Conversions. Math and numerics
Operators 
Templates ease arithmetic classes and iterators. Iterators
Optional 
Discriminated-union wrapper for optional values. Miscellaneous
Parameter 
Boost.Parameter Library - Write functions that accept arguments by name. Programming Interfaces
Phoenix 
Define small unnamed function objects at the actual call site, and more. Function objects and higher-order programming
Pointer Container 
Containers for storing heap-allocated polymorphic objects to ease OO-programming. Containers
Polygon 
Booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates. Miscellaneous
Pool 
Memory pool management. Memory
Preprocessor 
Preprocessor metaprogramming tools including repetition and recursion. Preprocessor Metaprogramming
Program Options 
The program_options library allows program developers to obtain program options, that is (name, value) pairs from the user, via conventional methods such as command line and config file. Input/Output
Property Map 
Concepts defining interfaces which map key objects to value objects. Containers
Property Tree 
A tree data structure especially suited to storing configuration data. Containers
Proto 
Expression template library and compiler construction toolkit for domain-specific embedded languages. Template Metaprogramming
Python 
The Boost Python Library is a framework for interfacing Python and C++. It allows you to quickly and seamlessly expose C++ classes functions and objects to Python, and vice-versa, using no special tools -- just your C++ compiler. Inter-language support
Random 
A complete system for random number generation. Math and numerics
Range 
A new infrastructure for generic algorithms that builds on top of the new iterator concepts. Algorithms
Ratio 
Compile time rational arithmetic. Math and numerics
Rational 
A rational number class. Math and numerics
Ref 
A utility library for passing references to generic functions. Function objects and higher-order programming
Regex 
Regular expression library. String and text processing
Result Of 
Determines the type of a function call expression. Function objects and higher-order programming
Scope Exit 
Execute arbitrary code at scope exit. Language Features Emulation
Serialization 
Serialization for persistence and marshalling. Input/Output
Signals 
Managed signals & slots callback implementation. Function objects and higher-order programming
Signals2 
Managed signals & slots callback implementation (thread-safe version 2). Function objects and higher-order programming
Smart Ptr 
Smart pointer class templates. Memory
Spirit 
LL parser framework represents parsers directly as EBNF grammars in inlined C++. String and text processing
Statechart 
Boost.Statechart - Arbitrarily complex finite state machines can be implemented in easily readable and maintainable C++ code. State Machines
Static Assert 
Static assertions (compile time assertions). Generic Programming
String Algo 
String algorithms library. String and text processing
Swap 
Enhanced generic swap function. Miscellaneous
System 
Operating system support, including the diagnostics support that will be part of the C++0x standard library. System
Test 
Support for simple program testing, full unit testing, and for program execution monitoring. Correctness and testing
Thread 
Portable C++ multi-threading. Concurrent Programming
Timer 
Event timer, progress timer, and progress display classes. Miscellaneous
Tokenizer 
Break of a string or other character sequence into a series of tokens. String and text processing
TR1 
The TR1 library provides an implementation of the C++ Technical Report on Standard Library Extensions. This library does not itself implement the TR1 components, rather it's a thin wrapper that will include your standard library's TR1 implementation (if it has one), otherwise it will include the Boost Library equivalents, and import them into namespace std::tr1. Miscellaneous
Tribool 
3-state boolean type library. Miscellaneous
Tuple 
Ease definition of functions returning multiple values, and more. Data structures
Type Traits 
Templates for fundamental properties of types. Generic Programming
Typeof 
Typeof operator emulation. Language Features Emulation
uBLAS 
uBLAS provides matrix and vector classes as well as basic linear algebra routines. Several dense, packed and sparse storage schemes are supported. Math and numerics
Units 
Zero-overhead dimensional analysis and unit/quantity manipulation and conversion. Domain Specific
Unordered 
Unordered associative containers. Containers
Utility 
Class noncopyable plus checked_delete(), checked_array_delete(), next(), prior() function templates, plus base-from-member idiom. Algorithms
Uuid 
A universally unique identifier. Data structures
Value Initialized 
Wrapper for uniform-syntax value initialization, based on the original idea of David Abrahams. Miscellaneous
Variant 
Safe, generic, stack-based discriminated union container. Containers
Wave 
The Boost.Wave library is a Standards conformant, and highly configurable implementation of the mandated C99/C++ preprocessor functionality packed behind an easy to use iterator interface. String and text processing
Xpressive 
Regular expressions that can be written as strings or as expression templates, and which can refer to each other and themselves recursively with the power of context-free grammars. String and text processing
Boost Numeric Bindings
Boost Bindings is a bindings library (not just) for Boost.Ublas. It offers an easy way of calling BLAS, LAPACK, UMFPACK, MUMPS and many other mature legacy numerical codes from within C++.
Bootstrap
Bootstrap is a mobile-first, responsive Web front-end framework. It is a very popular framework made by Twitter, and can be easily themed and customized.
Bootswatch
Bootswatch is a set of free themes for Bootstrap.
Botan
Botan (formerly OpenCL) is a library of cryptographic algorithms. It includes a wide selection of block and stream ciphers, public key algorithms, hash functions, and message authentication codes, plus a high level filter-based interface. The home page has a list of supported algorithms.
Botnet
BotNet is a library written in C, intended to assist in development of an IRC bot (or even an IRC client). It provides an easy-to-use model of communication with the IRC server by giving you string-sending functions and by returning messages from the IRC server into events to your application's main(). It also contains functions for easy DCC CHAT and SEND connections and an excess flood protection mechanism.
Bugs
BUGS is the Big and Useful Great Security key encryption algorithm and applications. It is easy to use, and includes sample applications and documentation. The cryptography library can also be used with your own programs. Features include:
  • Private key algorithm
  • Dynamic cryptography algorithm
  • Source code can be made public without making the algorithm weak
  • Infinite key lengths
  • Bilateral bits swwapping with various windows
  • Bilateral Pseudo randomly binary operations
  • Random number added to key
  • Random number generator using the ISAAC algorithm
  • Possibility of generating your own RNG seed
  • Five different cryptography levels, for the best possible
  • combination of efficiency and speed
  • Seed and shuffle functions
  • A clear text can be crypted using its own data
  • Two methods of execution: direct disk access or memory cache
  • Strong key generator
C++ Sockets
This is a GPL licensed C++ class library wrapping the Berkeley sockets C API. It treats one socket as one object. KThis is how the Socket class was born. This class, in itself, has all the functions needed for address translation (hostname to ip, ip to hostname etc). It owns the file descriptor / SOCKET handle. But it can't do anything. Code for actually doing something with the socket is implemented in other, Socket derived classes.
C-ares
'c-ares' is a C library that resolves names asynchronously. It is meant for applications that perform DNS queries without blocking or multiple DNS queries in parallel (ie servers that communicate with multiple clients and programs with GUIs).
C2hs
'c2hs' is an interface generator that simplifies the development of Haskell bindings to C libraries. It processes existing C header files that determine data layout and function signatures on the C side in conjunction with Haskell modules that specify Haskell-side type signatures and marshaling details. Hooks embedded in the Haskell code signal access to C structures and functions; they are expanded by the interfacing tool in dependence on information from the corresponding C header file.
C2lib
c2lib is a library of basic tools for use by C programmers. It contains features heavily influenced by both Perl's string handling and C++'s Standard Template Library (STL). Its goal is to provide some of the advantages of Perl with only around a factor of 2-3 code-size expansion, while retaining most of the efficiency advantages of C and remaining compatible with existing libc functions.
CDBlib
Read and write cdb ("constant database") files. Cdblib contains classes to read and write cdb ("constant database") files. Cdb files map string keys to string values with very fast record lookups. Cdblib also allows for in-memory indexes to enable even faster lookups.
CDimgtools
CDimg tools is a set of command line tools to manipulate CD/DVD images of certain formats.
CGAL
The goal of the CGAL Project is to provide easy access to efficient and reliable geometric algorithms in the form of a C++ library. CGAL is used in various areas needing geometric computation, such as: computer graphics, scientific visualization, computer aided design and modeling, geographic information systems, molecular biology, medical imaging, robotics and motion planning, mesh generation, numerical methods...
CGAL offers data structures and algorithms like triangulations (2D constrained triangulations and Delaunay triangulations in 2D and 3D), Voronoi diagrams (for 2D and 3D points, 2D additively weighted Voronoi diagrams, and segment Voronoi diagrams), Boolean operations on polygons and polyhedra, arrangements of curves and their applications (2D and 3D envelopes, Minkowski sums) mesh generation (2D Delaunay mesh generation and 3D surface mesh generation, skin surfaces), geometry processing (surface mesh simplification, subdivision and parameterization, as well as estimation of local differential properties, and approximation of ridges and umbilics), alpha shapes, convex hull algorithms (in 2D, 3D and dD), operations on polygons (straight skeleton and offset polygon), search structures (kd trees for nearest neighbor search, and range and segment trees), interpolation (natural neighbor interpolation and placement of streamlines), shape analysis, fitting, and distances (smallest enclosing sphere of points or spheres, smallest enclosing ellipsoid of points, principal component analysis), and kinetic data structures. All these data structures and algorithms operate on geometric objects like points and segments, and perform geometric tests on them. These objects and predicates are regrouped in CGAL Kernels.
CGKit (Python Computer Graphics Kit)
The Python Computer Graphics Kit is a collection of Python modules that contain the basic types and functions to be able to create 3D computer graphics images (focusing on Pixar's RenderMan interface).
CHEAT
Minimal unit testing framework for the C programming language.
CImg
The CImg Library is a C++ toolkit that provides simple classes and functions for loading, saving, processing and displaying images in your own C++ code. It contains useful image processing algorithms for loading/saving, resizing/rotating, filtering, object drawing (text, lines, faces, ellipses,..), and more. Images are instancied by a class able to represent images up to 4-dimension wide (from 1-D scalar signals to 3-D volumes of vector-valued pixels), with template pixel types. The package compiles it with only the standard C libraries.
CLN
CLN is a C++ class library for numbers: integers, rational, float, complex, modular integer. It implements elementary, logical, transcendental functions. Unlimited precision, 100 million digits are no problem. Easy to use because of algebraic syntax and automatic memory management.
CMUSphinx- base
Sphinx is a speaker-independent large vocabulary continuous speech recognizer. It is also a collection of free and open source tools and resources that allows researchers and developers to build speech recognition systems. The packages that the CMU Sphinx Group is releasing are a set of reasonably mature, world-class speech components that provide a basic level of technology to anyone interested in creating speech-using applications without the once-prohibitive initial investment cost in research and development; the same components are open to peer review by all researchers in the field, and are used for linguistic research as well.
CUnit
CUnit is a light-weight library that allows programmers to test their C code. Test results can be browsed in multiple formats or built-in interfaces.
CWXML
CWXML is a C library for parsing and generating XML and BXML formats with a straightforward API. Initial testing indicates that it is 3 or more times faster than other popular libraries such as expat and libxml2 at parsing XML and much faster again with BXML (a free, patent-unencumbered binary-encoding format for XML data that is a replacement for an XML file that mirrors the XML markup structures in a way similar to the in-memory representations of many parser libraries).
Cadaver
'cadaver' is a command-line WebDAV client. It supports resource upload/download/display, namespace operations (copy/move), collection deletion/creation, property manipulation, and locking operations.
Cairo
Cairo is a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers, PostScript, PDF, and SVG file output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB. Cairo is designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available (eg. through the X Render Extension). The cairo API provides operations similar to the drawing operators of PostScript and PDF. Operations in cairo including stroking and filling cubic Bézier splines, transforming and compositing translucent images, and antialiased text rendering. All drawing operations can be transformed by any affine transformation (scale, rotation, shear, etc.) Cairo is implemented as a library written in the C programming language, but bindings are available for several different programming languages.
Calc
Calc is an arbitrary precision arithmetic system that uses a C-like language. It's useful as a calculator, an algorithm prototype, and as a mathematical research tool. More importantly, calc provides a machine-independent means of computation. Its features include:
  • Arbitrary precision integers and floating-point, fractions and complex values
  • Logarithm, numeric, trig, hyperbolic functions
  • C-like syntax
  • calc shell scripts, resource files, linkable program library
  • User defined finctions and function loading
  • Over 283 built-in functions plus hooks for built-in custom extensions
  • Arrays, lists, dynamic strings, matrices, associate arrays, objects
  • Numeric, relational, boolean and variable access operators
  • Extensive string and binary block memory builtin functions
  • Matrix inversion, determinant, and other matrix operations
  • Fast and cryptographic pseudo-random numbers, cryptographic hashes
  • Factoring, primality tests, pi(x), multiplicative inverse, modular exp
  • Bernoulli numbers, Euler numbers, Catalan numbers
  • Uses REDC, splint-point and other high speed multi-precision algorithms
  • Extensive regression test suite
  • Resource functions: large prime tests, factoring, quaternions, etc.
  • File I/O, multi-precision printf and scanf, stdio-like functions
  • GNU Readline, user & system startup scripts, Emacs-style line editing
  • Online help
Cals2tiff
This is a candidate for deletion: URLs both lead to 404. sollers.ca does exist, but no mention of cals2tiff on that site. Drw (talk) 09:02, 18 July 2018 (EDT) This program is used to convert .cal files (US NAVY CALS raster file Type 1) into .tiff files (baseline TIFF bilevel images). All it really does is change the header. CALS only support compressed data, and only through CCITT group 4 algorithm (T6). Tiff revision 6.0 can support this same compression schem (among others), and therefore there is no need to change the data to convert from one format to the other.
CamlTemplate
'CamlTemplate' is a small template processor library for Objective Caml. It can be used to generate Web pages, scripts, SQL queries, XML documents, and other sorts of text files. It provides a versatile, easy-to-learn template syntax that supports common scripting-language constructs, while encouraging a separation between presentation logic and application logic. The supported Caml data structures accomodate lists, tables, and trees of items in a straightforward manner. CamlTemplate works well with mod_caml, supports any ASCII-compatible encoding, including UTF-8, and includes optional support for multithreading.
Canvas
Canvas is a feature-rich learning management system.
Cardfile
Cardfile is a simple flatfile database with a curses interface, that emulates a library's card catalog. It's useful for cataloging your library, downloaded software, or your Pokemon collection.
Caro
A gomoku-like game with addtional rules: A player can only win if: - He/she has exactly 5 continuous pieces (no more or less) - These pieces have at least a head or tail not being blocked by the opponent's piece There are 2 modes: 1 player (vs AI) and 2 players
Carom
Super fun carom board game.
Carrot
carrot is an AMQP messaging queue framework. AMQP is the Advanced Message Queuing Protocol, an open standard protocol for message orientation, queuing, routing, reliability and security. The aim of carrot is to make messaging in Python as easy as possible by providing a high-level interface for producing and consuming messages. At the same time it is a goal to re-use what is already available as much as possible. carrot has pluggable messaging back-ends, so it is possible to support several messaging systems. At the time of release, the py-amqplib based backend is considered suitable for production use. Several AMQP message broker implementations exists, including RabbitMQ, ZeroMQ and Apache ActiveMQ. You'll need to have one of these installed, personally we've been using RabbitMQ. Before you start playing with carrot, you should probably read up on AMQP, and you could start with the excellent article about using RabbitMQ under Python, Rabbits and warrens. For more detailed information, you can refer to the Wikipedia article about AMQP.
Castle Game Engine
Castle Game Engine is a cross-platform 3D and 2D game engine for Object Pascal (FPC and Lazarus). - It supports many formats for game assets, including X3D, VRML, Collada, Spine JSON, MD3 and others. - Many graphic effects are possible, including bump mapping, shadows, shaders, mirrors, screen effects. - Animation, collision detection, 3D sound and more features are available. - An extensible system of 3D objects can be used, with out-of-the-box levels, items, intelligent creatures and more. - The engine is portable -- for desktop, mobile, web plugin. The engine is also used to develop view3dscene - a full-featured X3D / VRML browser and a viewer for many other 3D and 2D game formats.
Category/Use/organizing
This is set of tools/libraries to allow programmers making one's programs display information about what it does, percent of done and status. Program can file this kind of information about many tasks and subtasks. User, using monitor, could set action to do, when some task (not as process, but task doing by process) change state or have been done.
Cbase
Cbase formerly known as CFL (C Foundation Library) is a C library that simplifies systems software development on *nix systems. It includes functions for memory management, string parsing, sub-process execution, filesystem traversal, I/O, interfaces to IPC mechanisms including pseudo-terminals, shared memory, semaphores, and other facilities. It also has implementations of common dynamic data structures like linked lists, queues, stacks, and hash tables, a real-time scheduler similar to 'cron', and high-level APIs to Berkeley sockets and other networking functions. Full documentation is included. This package was formerly known as the Ping Utility Library.
Ccaudio Heckert gnu.tiny.png
GNU ccAudio is a stand-alone C++ class library and newly designated GNU package for manipulating audio data, whether on disk or in memory. GNU ccAudio offers the ability to work with audio file formats on disk by treating audio data as sequenced arrays of sample data rather than as arbitrary octets as some audio file manipulation libraries do. In addition to being audio content aware, GNU ccAudio allows header manipulation for setting things like annotation fields. GNU ccAudio is also endian aware and highly portable to both posix and win32 based systems. GNU ccAudio also offers basic audio signal processing including tone data set generation and pluggable codec operations. In the future we will provide loadable free software audio codec modules for many common audio encoding formats where not patent encumbered.
Ccl
'ccl' is the 'customizable configuration library': a collection of functions for application programmers who want to interface with user-editable configuration files containing key/value pairs. The comment, key/value, and string literal delimiters can be programatically specified at runtime. 'ccl' is designed to be simple and portable; it has a small interface consisting of five functions. It uses avl's implemenation of binary search trees for backend storage.
Ccrtp Heckert gnu.tiny.png
GNU ccRTP is a high performance threadsafe C++ RTP (Real-Time Transport Protocol) stack. It can be used to build both client and server applications for audio and visual conferencing over the Internet, for streaming of realtime data, and for next generation IP based telephony systems.
Ccscript Heckert gnu.tiny.png
GNU ccScript is a C++ class framework for creating a virtual machine execution system for use with and as a scripting/assembler language for state-transition driven realtime systems. It is the core of the scripting engine found in GNU Bayonne. It is meant to be used where step execution is important, and where each step is in response to a callback event or a state machine transition. It offers deterministic execution and low overhead so that many concurrent instances can run together. However, in addition to offering step machine execution, GNU ccScript loads all scripts into an active image at once. This is for performance, as all operations in the script system, to assure deterministic execution, are in memory. GNU ccScript also offers the ability to load new scripts en masse. Existing active sessions operate on the currently loaded scripts, and new sessions are offered the new script. When the last active session on an old script set completes, the entire script set is flushed from memory, so you can operate scripted servers without downtime for rebuilding script images in memory.
Cday-php
The CDAY Calendar Almanac displays historical anniversaries such as birthdays and general events. It displays the equivalent date in multiple calendar systems, including Hebrew, Julian, JDNs, Great Underground Empire (Zork), and Shire (Lord of the Rings). Separate command line and Web-based versions are available, along with a free library of thousands of events.
Ceegeye
Renamed jwcgi library to ceegeye, ceegeye is a C++ library for creating CGI (Common Gateway Interface) programs, xhtml bindings, javascript helpers, etc. Comes with several example programs to help you get acquainted with its usage. ceegeye is platform independent.
Cf4ocl
The C Framework for OpenCL, cf4ocl, is a cross-platform pure C object-oriented framework for developing and benchmarking OpenCL projects. It aims to:
  • Promote the rapid development of OpenCL host programs in C (with support for C++) and avoid the tedious and error-prone boilerplate code usually required.
  • Assist in the benchmarking of OpenCL events, such as kernel execution and data transfers. Profiling comes for free with cf4ocl.
  • Simplify the analysis of the OpenCL environment and of kernel requirements.
  • Allow for all levels of integration with existing OpenCL code: use as much or as few of cf4ocl required for your project, with full access to the underlying OpenCL objects and functions at all times.
Features:
  • Object-oriented interface to the OpenCL API
* New/destroy functions, no direct memory alloc/free * Easy (and extensible) device selection * Simple event dependency mechanism * User-friendly error management
  • OpenCL version and platform independent
  • Integrated profiling
  • Advanced device query utility
  • Offline kernel compiler and linker
Cgi-util
Cgi-util is a small C library for creating CGI programs for Websites. Functions are available for initialization (parsing), grabbing fields (by string, integer, double or boolean value), embedding HTML files, and more. It accepts both POST and GET request methods and has extensive error handling and support for cookies.
Cgicc Heckert gnu.tiny.png
GNU cgicc is an ANSI C++ compliant class library that greatly simplifies the creation of CGI applications for the World Wide Web by doing the following:
  • Parses GET and POST form data transparently.
  • Provides string, integer, floating-point and single- and multiple-choice retrieval methods for form data.
  • Provides methods for saving and restoring CGI environments to aid in application debugging.
  • Provides full on-the-fly web-authoring generation capabilities, with support for cookies.
  • Supports web-authoring file upload.
Cgipplib
'cgipplib' is a small collection of support classes used to build CGI applications.
Cgixx
The cgixx C++ CGI class library is intended as a modern Common Gateway Interface library for ISO standard C++ compilers. It is not meant to generate complex HTML forms, but rather to ensure fast and reliable conversations between a Web server's CGI and your C++ code. 'cgixx' supports standard GET, POST, HEAD, and PUT CGI methods and cookies as defined in the version 1.1 specification.
Cheap Threads
Cheap Threads is a collection of routines for implementing synchronous threads. It includes a scheduler and a facility for passing messages among threads. Threads may run in a round robin or according to a priority scheme. Each thread must voluntarily relinquish control from time, via an ordinary function return, so that other threads can run. Since the threads are synchronous, i.e. they don't interrupt each other, they don't need to use semaphores, mutexes, critical sections, or other facilities to keep from interfering with each other. One version of Cheap Threads is designed for embedded systems.
Checker
Checker was a debugging tool suite which was used to find memory errors at runtime. This project was a GNU package. It has proved its great worth in the 1990 years but has since been decommissioned and is no longer developed. This page has been left for the sake of posterity.
Chicken
CHICKEN is a simple Scheme-to-C compiler supporting the language features as defined in the 'Revised^5 Report on Scheme'. It supports full tail-recursion and first-class continuations. The code it generates is quite portable; compiled files generated by it (including itself) should work with either no or minor changes on other systems. Linking to C modules and C library functions is straightforward, and compiled programs can easily be embedded into existing C code. The package includes many extra libraries.
Chipmunk
Chipmunk is a fast 2D rigid body physics library written in C. Supports fast circle, segment, and convex polygon collisions.
  • Designed for 2D video games.
  • Circle, convex polygon, and line segment collision primitives.
  • Multiple collision primitives can be attached to the same rigid body.
  • Fast collision detection by using a spatial hash for the broad phase.
  • Extremely fast impulse solving by utilizing Erin Catto's contact persistence algorithm.
  • Support for collision callbacks based on object types.
  • Impulses applied to contact points can be retrieved after the impulse solver has finished.
  • Several kinds of joints available.
  • C99 implementation, no external dependencies.
  • Ruby extension available.
  • Simple, read the documentation.
Chomoko
Chomoko is a C++ Message-Queue Library Enterprise, Persistent, Message-Oriented Middleware Technical Aspects:
  • No dependencies
  • Cross-Platform
  • No Server Required
  • No Install Needed
  • Network-Based
Cl-ana
cl-ana is a library of modular utilities for reasonably high performance data analysis & visualization using Common Lisp. (Reasonably means I have to be able to use it for analyzing particle accelerator data). The library is made of various sublibraries and is designed in a very bottom-up way so that if you don't care about some feature you don't have to load it. The functionality support so far are
  • Tabular data analysis: Read-write of large datasets stored in HDF5 files are supported, along with ntuple datasets, CSVs, and in-memory data tables. Users can add their own table types by defining 4 methods and extending the table CLOS type.
  • Histograms: Binned data analysis is supported with both contiguous and sparse histogram types; functional interface is provided via map (which allows reduce/fold) and filter.
  • Plotting: Uses gnuplot for plotting dataset samples, plain-old lisp functions, histograms, strings-as-formulae, and anything else the user wishes to add via methods on a couple of generics.
  • Fitting: Uses GSL for non-linear least squares fitting. Uses plain-old lisp functions as the fit functions and can fit against dataset samples, histograms, and whatever the user adds.
  • Generic mathematics: CL doesn't provide extendable math functions, so cl-ana provides these as well as a convenient mechanism (a single function) for using these functions instead of the non-extendable versions. Already included are error propogation and quantities (values with units, e.g. 5 meters) as well as a GNU Octave-style handling of sequences (e.g. (+ (1 2) (3 4)) --> (4 6)).
Clanlib
ClanLib is a medium level development kit. At its lowest level, it provides a platform independent way of dealing with display, sound, input, networking, files, threading, etc. Beyond that ClanLib builds a generic game development framework, giving you easy handling of resources, network object replication, graphical user interfaces (GUI) with theme support, game scripting and more. It lets game developers avoid lowlevel trivials like setting up a directdraw window, sound mixing, reading image files, etc. All those things are simplified into object oriented classes and function calls. ClanLib uses a resource system to keep track of images, fonts, samples and music. It supports Targa, PCX, JPEG, PNG and BMP for images; wave files for sample; and Ogg Vorbis and MikMod for music. The resource system separates physical data formats from your code, and makes it easy to make themes and other plugins for your game. All classes in clanlib focus on making simple interfaces that are customizeable and expandable. This keeps your game code clean and simple, but still lets you to do advanced work. ClanLib is object oriented, which lets you operate at both high and low levels, minimizing redundant code but still letting you do things not supported by clanlib's high level APIs.
Classpath Heckert gnu.tiny.png
GNU Classpath (Essential Libraries for Java) is a project to create free core class libraries for use with virtual machines, compilers and tools for the Java programming language. It includes all native methods and core classes necessary for a completely functional Java runtime.s
Classpathx Heckert gnu.tiny.png
The GNU Classpath Extensions project, aka classpathx builds packages in the javax namespace. It is a companion project of the GNU Classpath project. Packages currently under development include javabeans activation framework, javabean infobus, java mail, GNU inetlib and a servlet API.
ClearSilver
ClearSilver is a high-performance, powerful, and language-neutral HTML template system. It enforces a separation between presentation code and application logic which makes writing, debugging, and maintaining Web pages easier. It can be used from C/C++, Python, Perl, Java, and Ruby.
Cloudgizer
Cloudgizer is a tool for building web applications as Apache modules in C language enhanced with simple markup, with emphasis on performance, small-footprint, and more productive and safer programming in C. It combines the ease of scripting with the power of C, improving the resource utilization for cloud applications. The programmer writes simple markup language mixed with C code, which is then translated entirely into C code and compiled natively as Apache module. The resulting application is fast and takes less memory, as there are no interpreters or virtual machines. Features include easy markups to use MariaDB database, HTML input parameters, cookies, simpler outputting of web pages, files storage and manipulation, encryption, encoding, program execution, web calls, safer and easier string manipulation etc. - the list is too long to place in one sentence. Overall Cloudgizer does a lot of stuff for you that you'd otherwise need to do yourself. A memory garbage collection system and memory overwrite/underwrite detection comes in handy for program stability. The same goes for string and memory handling markups to help write applications that won't crash. Also included is an application packaging system and an automated application installer. This makes rollout of products and release cycle more manageable. Cloudgizer source files have extension .v. Cloudgizer pre-compiler (cld program) will turn your .v files into .c files, ready for compilation as pure C programs. Then, your program will be compiled and linked with Apache web server on RH/Centos systems. It links with Apache as an Apache module in a "prefork" configuration. It does the work of communicating with Apache, and it makes it easier to write high-performance/small-footprint web programs in C. Cloudgizer is not designed to be thread-safe as it works in a "prefork" configuration of Apache. You can also build command-line programs. The same program can serve as both command-line utility and a web program linked with Apache. Cloudgizer works with RedHat/Centos 7 operating system, Apache web server and mariaDB database.
Clutter
Clutter is an Open GL based interactive canvas library, designed for creating fast, mainly 2D single window applications such as media box UIs, presentations, kiosk style applications and so on. It is a core part of Gnome3.
CodePY
CodePy is a C/C++ metaprogramming toolkit for Python. It handles two aspects of native-code metaprogramming:
  • Generating C/C++ source code.
  • Compiling this source code and dynamically loading it into the Python interpreter.
  • Both capabilities are meant to be used together, but also work on their own. In particular, the code generation facilities work well in conjunction with PyCuda. Dynamic compilation and linking are so far only supported in Linux with the GNU toolchain.
CodeTools
The CodeTools project includes packages that simplify meta-programming and help the programmer separate data from code in Python. This library contains classes that allow defining simple snippets, or "blocks", of Python code, analyze variable dependencies in the code block, and use these dependencies to construct or restrict an execution graph. These (restricted) code blocks can then be executed in any namespace. However, this project also provides a Traits-event-enhanced namespace, called a "context", which can be used in place of a vanilla namespace to allow actions to be performed whenever variables are assigned or retrieved from the namespace. This project is used as the foundation for the BlockCanvas project.
Codebird-js
Use codebird-js to connect your website or JavaScript app with the Twitter API. Support for API 1.1 is baked in!
Coin
Coin is a platform-independent retained-mode 3D graphics library that uses scene-graph data structures to render real-time graphics+suitable for mostly all kinds of scientific and engineering visualization applications. It is fully compatible with Open Inventor 2.1. Coin is built on the OpenGL immediate-mode rendering library, adds abstractions for higher-level primitives, provides 3D interactivity, increases programmer convenience and productivity, and contains optimization features for fast +rendering that are transparent for the application programmer.
Collab
Multiplatform raster graphical editor enabling simultaneous drawing between users. Project including several sub projects as server, painting framework, network library, desktop application and protocol design and documentation.
CometVisu
The CometVisu is a web technology based realtime visualization for home and building automation systems like the KNX bus or OpenHAB. It can be used on a wide range of systems, ranging from smart phones over tablets up to laptops and PCs.
Commoncpp Heckert gnu.tiny.png
Common C++ is a C++ class library that abstracts various system services in a portable manner, thereby making the creation of portable applications much easier. It is portable code, with very low runtime overhead, that works well on a very wide range of target platforms and C++ compilers in everyday use. It includes the 'ape' project, which was formerly a separate package. Common C++ manages threads, synchronization, and network sockets by offering portable C++ classes that abstract these services, as well as supporting "serial" I/O, daemon specific event logging, object serialization (persistence), block/record/page/ oriented file I/O, and configuration file parsing. It also provides an inheritable class architecture for your application that exploits C++ as needed. There are two source trees: one for "POSIX" systems such as GNU/Linux and the Hurd, the other for the Windows API. This makes Common C++ portable at the source level, as the two trees implement a functionally similar class interface. Commoncpp also includes uCommon C++, a lightweight C++ library with features such as rtti and exception handling removed. It is intended for programs linking to C libraries and not the standard C++ library.
Conexus
A generalized C++ I/O library that includes support for
  • BSD sockets (IPv4, IPv6, TCP, UDP)
  • OpenSSL secure streams
  • NSPR sockets
  • NSS secure streams
  • Kernel message queues
  • Files and pipes
  • Serial/tty
  • Gtkmm widgets
  • et. al.
Coolkey
Linux Driver support for the CoolKey and Common Access Card (CAC) smart card security keys used in a Public Key Infrastructure (PKI). The libpkcs11 module allows use of Smart Cards in applications that use mozilla Network Security Services (NSS).
Coq
A proof done with Coq is mechanically checked by the machine. In particular, Coq allows:
  • to define functions or predicates,
  • to state mathematical theorems and software specifications,
  • to develop interactively formal proofs of these theorems,
  • to check these proofs by a relatively small certification "kernel".
Corais
The Corais platform is based on Open Atrium, which is itself based on Drupal. It is used for organizing collaborative projects.
Coronet
The coronet library implements an epoll and coroutine based library that allows for async operations over certain kinds of files (any file that supports poll(2) and the O_NONBLOCK fcntl(2) flag can be hosted - like sockets, pipes, ...). The coronet library uses the epoll support available in the 2.6 series of Linux kernels, and the libpcl library for coroutine support.
Couchdb-python
This is a Python library for CouchDB. It provides a convenient high level interface for the CouchDB server. This package currently encompasses four primary modules:
  • couchdb.client: the basic client library
  • couchdb.design: management of design documents
  • couchdb.schema: a higher-lever API for mapping between CouchDB documents and Python objects
  • couchdb.view: a CouchDB view server that allows writing view functions in Python
CrackLib
A password checking library.
CreoleParser
Creoleparser is a Python library for converting Creole wiki markup for output on the web. It is a full implementation of the Creole 1.0 specification and aims to follow the spec exactly.
Crypton
Crypton is a software framework for remote storage, where the remote server has no knowledge of what is being stored. The content is encrypted client-side before it reaches the server. The framework is designed to be easy for application developers to use, without needing experience in encryption.
Cssutils
Partly implement the DOM Level 2 CSS interfaces. Additional some cssutils only convenience and (hopefully) more pythonic methods are integrated.
CsvUtils
Transformation utilities for csv (or csv-like) generated rows. The standard csv module is very useful for parsing tabular data in CSV format. Typically though, one or more transformations need to be applied to the generated rows before being ready to be used; for instance "convert the 3rd column to int, the 5th to float and ignore all the rest". This module provides an easy way to specify such transformations upfront instead of coding them every time by hand. Two classes are currently available, SequenceTransformer and MappingTransformer, that represent each row as a list (like csv.reader) or dict (like csv.DictReader), respectively.
Ctalk
Ctalk provides object oriented features, like classes, methods, and inheritance, to C programs. Programs can use only a few object oriented features, or they can be written almost completely with ctalk objects.
Ctalk includes the ctalk interpreter, the C99 compliant preprocessor, ctpp, and the ctalk run time library, which provides objects and methods with support for run time events.
CuTest
'CuTest' is a unit tesing library for the C language whose tests ensure that your code keeps working as you make small changes in it. They tell you which subroutine is broken, so you can more quickly figure out what's broken. You can also keep adding to your old code without worrying about bad interactions: if there is a bad interaction the tests will catch it. Finally, if every time a bug is reported you write a quick test, you will guarantee that the bug never reappears.
Cuba
The Cuba library offers a choice of four independent routines for multidimensional numerical integration: Vegas, Suave, Divonne, and Cuhre. They work by very different methods, first three are Monte Carlo based. All four have a C/C++, Fortran interface and can integrate vector integrands. Their invocation is very similar, so it is easy to substitute one method by another for cross-checking. For further safeguarding, the output is supplemented by a chi-square probability which quantifies the reliability of the error estimate. This package provides the shared libraries required to run programs compiled with Cuba. To compile your own programs you also need to install libuba3-dev.
Curl
Curl is a command line tool and library for transferring data with URLs. The both do transfers using Internet protocols, including DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMTP, SMTPS, Telnet and TFTP. Curl also supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, HTTP/2, cookies, user+password authentication (Basic, Plain, Digest, CRAM-MD5, NTLM, Negotiate and Kerberos), file transfer resume, proxy tunneling and more.
CwMtx
'CwMtx' provides the matrix and vector operations used in engineering and science problems, particularly the quaternion class which implements quaternion math. Quaternions are useful for attitude determination in 3D space because they do not suffer from singularities. Furthermore, successive rotations and transformations of vectors can be accomplished by simple quaternion multiplication. Attitude dynamics can be expressed in a very compact form using quaternions.
Cz2cz
'cz2cz' is a set of tools for converting texts between the various charset encodings that are used in the Czech language. The most important feature is autodetection of the most-used encodings (ISO-8859-2, Win-1250, cp850, and Kamenickych). It also lets you convert characters with diacritics to TeX (LaTeX) conventions. Additionally, you can use the interactive part of cz2cz tools for quick manual complementing of diacritics to texts.
DFASDL
The DFASDL is a language based upon XML Schema that can be used to describe data formats and additionally the semantics of it. It is used by the Tensei-Data project to describe data structures and to derive mappings and transformation functions between different structures automatically. The core repository contains the core module which consists of the xschema definition (xsd) and the official specification. The documentation is published using github pages and is available online at: https://dfasdl.github.io/dfasdl-core/ This project is licensed under Creative Commons Attribution 4.0 International Public License (CC BY 4.0) and the Mozilla Public License 2.0. See LICENSE for details.
DFASDL Utils
The DFASDL is a language based upon XML Schema that can be used to describe data formats and additionally the semantics of it. It is used by the Tensei-Data project to describe data structures and to derive mappings and transformation functions between different structures automatically. The utils module provides helpful functions and data types for programming. It depends on the dfasdl-core package. The api documentation is published using github pages and is available online at: https://dfasdl.github.io/dfasdl-utils/
DSSI
DSSI is an API for audio plugins, with particular application for software synthesis plugins with native user interfaces. DSSI is an open specification developed for use in Linux audio applications, although it is portable to other platforms. It may be thought of as LADSPA-for-instruments, or something comparable to VSTi. This package contains the header file required for compiling hosts and plugins.
DUNE-Common
DUNE, the Distributed and Unified Numerics Environment is a modular toolbox for solving partial differential equations (PDEs) with grid-based methods. It supports the easy implementation of methods like Finite Elements (FE), Finite Volumes (FV), and also Finite Differences (FD). DUNE is free software licensed under the GPL (version 2) with a so called "runtime exception" (see license). This licence is similar to the one under which the libstdc++ libraries are distributed. Thus it is possible to use DUNE even in proprietary software. The underlying idea of DUNE is to create slim interfaces allowing an efficient use of legacy and/or new libraries. Modern C++ programming techniques enable very different implementations of the same concept (i.e. grids, solvers, ...) using a common interface at a very low overhead. Thus DUNE ensures efficiency in scientific computations and supports high-performance computing applications. DUNE is based on the following main principles:
  • Separation of data structures and algorithms by abstract interfaces.- This provides more functionality with less code and also ensures maintainability and extendability of the framework.
  • Efficient implementation of these interfaces using generic programming techniques.
  • Static polymorphism allows the compiler to do more optimizations, in particular function inlining, which in turn allows the interface to have very small functions (implemented by one or few machine instructions) without a severe performance penalty. In essence the algorithms are parametrized with a particular data structure and the interface is removed at compile time. Thus the resulting code is as efficient as if it would have been written for the special case.
  • Reuse of existing finite element packages with a large body of functionality.- In particular the finite element codes UG, ALBERTA, and ALUGrid have been adapted to the DUNE framework. Thus, parallel and adaptive meshes with multiple element types and refinement rules are available. All these packages can be linked together in one executable.
  • The framework consists of a number of modules which are downloadable as separate packages. The current core modules are:
  • dune-common- contains the basic classes used by all DUNE-modules. It provides some infrastructural classes for debugging and exception handling as well as a library to handle dense matrices and vectors.
  • dune-grid- is the most mature module. It defines nonconforming, hierarchically nested, multi-element-type, parallel grids in arbitrary space dimensions. Graphical output with several packages is available, e.g. file output to IBM data explorer and VTK (parallel XML format for unstructured grids). The graphics package Grape has been integrated in interactive mode.
  • dune-istl (Iterative Solver Template Library)- provides generic sparse matrix/vector classes and a variety of solvers based on these classes. A special feature is the use of templates to exploit the recursive block structure of finite element matrices at compile time. Available solvers include Krylov methods, (block-) incomplete decompositions and aggregation-based algebraic multigrid.
DUNE-Grid
DUNE, the Distributed and Unified Numerics Environment is a modular toolbox for solving partial differential equations (PDEs) with grid-based methods. It supports the easy implementation of methods like Finite Elements (FE), Finite Volumes (FV), and also Finite Differences (FD). DUNE is free software licensed under the GPL (version 2) with a so called "runtime exception" (see license). This licence is similar to the one under which the libstdc++ libraries are distributed. Thus it is possible to use DUNE even in proprietary software. The underlying idea of DUNE is to create slim interfaces allowing an efficient use of legacy and/or new libraries. Modern C++ programming techniques enable very different implementations of the same concept (i.e. grids, solvers, ...) using a common interface at a very low overhead. Thus DUNE ensures efficiency in scientific computations and supports high-performance computing applications. DUNE is based on the following main principles:
  • Separation of data structures and algorithms by abstract interfaces.- This provides more functionality with less code and also ensures maintainability and extendability of the framework.
  • Efficient implementation of these interfaces using generic programming techniques.
  • Static polymorphism allows the compiler to do more optimizations, in particular function inlining, which in turn allows the interface to have very small functions (implemented by one or few machine instructions) without a severe performance penalty. In essence the algorithms are parametrized with a particular data structure and the interface is removed at compile time. Thus the resulting code is as efficient as if it would have been written for the special case.
  • Reuse of existing finite element packages with a large body of functionality.- In particular the finite element codes UG, ALBERTA, and ALUGrid have been adapted to the DUNE framework. Thus, parallel and adaptive meshes with multiple element types and refinement rules are available. All these packages can be linked together in one executable.
  • The framework consists of a number of modules which are downloadable as separate packages. The current core modules are:
  • dune-common- contains the basic classes used by all DUNE-modules. It provides some infrastructural classes for debugging and exception handling as well as a library to handle dense matrices and vectors.
  • dune-grid- is the most mature module. It defines nonconforming, hierarchically nested, multi-element-type, parallel grids in arbitrary space dimensions. Graphical output with several packages is available, e.g. file output to IBM data explorer and VTK (parallel XML format for unstructured grids). The graphics package Grape has been integrated in interactive mode.
  • dune-istl (Iterative Solver Template Library)- provides generic sparse matrix/vector classes and a variety of solvers based on these classes. A special feature is the use of templates to exploit the recursive block structure of finite element matrices at compile time. Available solvers include Krylov methods, (block-) incomplete decompositions and aggregation-based algebraic multigrid.
DUNE-ISTL
DUNE, the Distributed and Unified Numerics Environment is a modular toolbox for solving partial differential equations (PDEs) with grid-based methods. It supports the easy implementation of methods like Finite Elements (FE), Finite Volumes (FV), and also Finite Differences (FD). DUNE is free software licensed under the GPL (version 2) with a so called "runtime exception" (see license). This licence is similar to the one under which the libstdc++ libraries are distributed. Thus it is possible to use DUNE even in proprietary software. The underlying idea of DUNE is to create slim interfaces allowing an efficient use of legacy and/or new libraries. Modern C++ programming techniques enable very different implementations of the same concept (i.e. grids, solvers, ...) using a common interface at a very low overhead. Thus DUNE ensures efficiency in scientific computations and supports high-performance computing applications. DUNE is based on the following main principles:
  • Separation of data structures and algorithms by abstract interfaces.- This provides more functionality with less code and also ensures maintainability and extendability of the framework.
  • Efficient implementation of these interfaces using generic programming techniques.
  • Static polymorphism allows the compiler to do more optimizations, in particular function inlining, which in turn allows the interface to have very small functions (implemented by one or few machine instructions) without a severe performance penalty. In essence the algorithms are parametrized with a particular data structure and the interface is removed at compile time. Thus the resulting code is as efficient as if it would have been written for the special case.
  • Reuse of existing finite element packages with a large body of functionality.- In particular the finite element codes UG, ALBERTA, and ALUGrid have been adapted to the DUNE framework. Thus, parallel and adaptive meshes with multiple element types and refinement rules are available. All these packages can be linked together in one executable.
  • The framework consists of a number of modules which are downloadable as separate packages. The current core modules are:
  • dune-common- contains the basic classes used by all DUNE-modules. It provides some infrastructural classes for debugging and exception handling as well as a library to handle dense matrices and vectors.
  • dune-grid- is the most mature module. It defines nonconforming, hierarchically nested, multi-element-type, parallel grids in arbitrary space dimensions. Graphical output with several packages is available, e.g. file output to IBM data explorer and VTK (parallel XML format for unstructured grids). The graphics package Grape has been integrated in interactive mode.
  • dune-istl (Iterative Solver Template Library)- provides generic sparse matrix/vector classes and a variety of solvers based on these classes. A special feature is the use of templates to exploit the recursive block structure of finite element matrices at compile time. Available solvers include Krylov methods, (block-) incomplete decompositions and aggregation-based algebraic multigrid.
Dajax
Dajax, the new easy to use ajax library for your django projects. All the power of ajax now available for django.
Data Mining Template Library (DMTL)
DMTL (Data Mining Template Library) - A generic C++ based library for mining structured patterns such as sets, sequences, trees and graphs. The library provides implementation of popular frequent pattern mining algorithms.
Database Template Library
The Database Template Library makes ODBC recordsets look just like STL containers. Users move through containers using standard STL iterators, and if they insert(), erase(), or replace() records in the containers, changes are automatically committed to the database. Since 'dtl' complies with STL iterator and container standards, users can plug abstractions into a range of STL algorithms for data storage, searching, and manipulation. The C++ reflection mechanism used to bind to database tables lets users add generic indexing and lookup properties to the containers without requiring special code. Since the code takes full advantage of the template mechanism, 'dtl' adds minimal overhead (compared with using raw ODBC calls).
DataparkSearch
DataparkSearch is an Internet and Intranet search engine tool. Key features:
  • Support for http, https, ftp, nntp and news URL schemes.
  • htdb virtual URL scheme support for indexing SQL databases.
  • text/html, text/xml, text/plain, audio/mpeg (MP3) and image/gif mime types built-in support.
  • External parsers support for other document types.
  • Ability to index multilangual sites using content negotiagion.
  • Searching all of the word forms using ispell affixes and dictionaries.
  • Stopwords and synonyms lists.
  • Boolean query language support.
  • Results sorting by relevancy, popularity rank, last modified time and by importance (a multiplication of relevancy and popularity rank).
  • Various character sets support.
  • Accent insensitive search.
  • Phrases segmenting for Chinese, Japanese, Korean, and Thai.
  • mod_dpsearch - search module for Apache web server.
  • Internationalized Domain Names support
Date Calc
The Date::Calc package consists of a C library and a Perl module (which uses the C library internally) for all kinds of date calculations based on the Gregorian calendar (the one used in all Western countries today), thereby complying with all relevant norms and standards: ISO/R 2015-1971, DIN 1355 and, to some extent, ISO 8601 (where applicable). The package is designed as a toolbox, not a ready-made application. It provides extensive documentation and examples of use, multi-language support, and special functions for business needs. The C library is specifically designed so that it can be used stand-alone, without Perl. Version 5.0 features date objects with overloaded operators, and a set of modules for calculations which take legal holidays into account (both in Perl only).
Dbg
The dbg library is a set of C++ utilities to facilitate modern debugging idioms. It has been designed to support defensive programming techniques in modern C++ code. It integrates well with standard library usage and has been carefully designed to be easy to write, easy to read and very easy to use. 'dbg' provides various constraint checking utilities together with an integrated error logging facility. These utilities can be enabled and disabled at runtime, and in release builds, dbg library use can be compiled away to nothing.
Dbug
dbug is a macro-based library to see program flow, variables, timings, errors, warnings, etc.
Dead Souls
The Dead Souls MUD Library is a multi-user, text based adventure creation system. It lets you build adventure games which can be played over the Internet simultaneously by many people. It is for both experienced and beginner MUD admins. It includes an easy-to-use creation system.
Deal.II
'deal.II' is a software library that supports finite element computations on adaptive 1d, 2d, and 3d meshes. It comes with mesh handling, supports a large number of finite elements, can input and output in various formats, and has a large collection of support classes. The handling of different space dimensions is hidden behind C++ templates; this lets users treat problems in different space dimensions simultaneously within the same program, and to switch dimensions simply by recompilation. This means users can test their application in 2d, and then run production runs in 3d without having to debug the program again. It comes with full documentation of all APIs and 18 example programs showing how to build finite element programs from simple to very complex. The documentation now runs about 4000 pages.
Debea Database Library
Debea is an Object Relational Mapping library (ORM) for C++. It allows you to map C++ objects to relations in various SQL and file databases.
Decibel
Decibel is a realtime communication framework based on Telepathy. It is meant to integrate VoIP, text chat, CTI (computer telephone integration), and similar applications into the user's desktop. Decibel consists of a desktop neutral policy daemon called Houston and desktop specific components for user interaction.
Degate
Degate is a tool that aids VLSI- reverse engineering of digital logic in integrated circuits (ICs). Degate helps you to explore layered images from ICs. It matches standard cells on the imagery given by graphical templates and to some degree degate matches vias and wires and assists you in tracing circuit paths and in reconstructing the net list. Degate is not a completely automatic analyzing tool. Degate helps you with some automation in your manual chip reverse engineering process.
Deliantra Archetypes
Deliantra is a free software cooperative multiplayer RPG and adventure game, much similar in style (and setting) to nethack and moria, but is fully graphical and runs in realtime. It is set in a classical medieval environment with ubiquitous weapons and magic. What makes this game special is its depth and the sheer amount of maps to explore: The world is vast (multiple continents, over 4000 manually designed maps, hundreds of monsters and countless variations of generated content) and complex (16 unique races, 17 classes, 40 skills and hundreds of spells to choose from and combine with each other), so there is a lot to explore. The game play is open and sets very few limits on character development. And of course a lot of fun is to be had by playing cooperatively with others exploring the same world.
DemocracyOS
DemocracyOS is an online space for deliberation and voting on political proposals. It is a platform for a more open and participatory government. The software aims to stimulate better arguments and come to better rulings, as peers.
Detect
'detect' can be used in any program that needs hardware detection features such as configuration tools, installation programs, etc. You can use it to detect sound cards, CPUs, networking devices, webcams, joysticks, etc. It scans the IDE, PCI, ISA, USB, and SCSI busses to find hardware.
Developer's Image Library
Developer's Image Library (DevIL) is a cross-platform image library utilizing a simple syntax to load, save, convert, manipulate, filter, and display a variety of images with ease.
Device-Cdio
Device::Cdio is a interface to the GNU CD Input and Control library (libcdio) and it's ISO 9660 library (libiso9660) which are written in C. The library encapsulates CD-ROM reading and control and ISO 9660 handling. Perl programs wishing to be oblivious of the OS- and device-dependent properties of a CD-ROM can use this library.
DiVinE
DiVinE is an extensible system for distributed formal verification of concurrent systems. DiVinE as such can be viewed from two very different points of view: as a tool for distributed state space analysis and LTL model-checking, and as a development and fast prototyping environment.
DiaCanvas2
DiaCanvas2 is a flexible diagramming widget based on GnomeCanvas. It uses its own constraint solver to maintain object relationships. It is Model/View/Controller-based and makes full use of GnomeCanvas' features, and can rotate/shear/resize/etc objects without recalculating shapes. It includes export facilities for both GnomePrint and SVG. Except for its look and feel, DiaCanvas is not related to the diagramming tool DIA.
Diet libc
Diet libc is a C library that is optimized for small size. It has has the bare minimum of files: the system call wrappers (including socket stuff) and malloc, etc. to create small statically linked binaries under Sparc, x86, PPC, ARM, MIPS, and Alpha-Linux.
Dimnum
The dimnum library contains templated C++ classes for storage and manipulation of dimensionful numbers, as encountered in physics and engineering. Since it uses templates, there is no size or speed penalty with respect to normal variables (depending on compiler optimisations).
Dinrhiw2
Primary aim of the dinrhiw is to be linear algebra library and machine learning library. For this reason dinrhiw implements PCA and neural network codes. Currently, the neural network code only supports:
  • hamiltonian monte carlo sampling (HMC) and simple bayesian neural network
  • second order L-BFGS search
  • gradient descent (backpropagation)
As well as mathematical routines for arbitrary precision mathematics, hermite curve interpolation and many other things.
DirectFB
'DirectFB' is a thin library that provides developers with hardware graphics acceleration, input device handling and abstraction, an integrated windowing system with support for translucent windows and multiple display layers on top of the framebuffer device. It is a complete hardware abstraction layer with software fallbacks for every graphics operation that is not supported by the underlying hardware.
Dmbcs-kraken-api
Kraken is a virtual currency exchange, which also handles fiat (real) currency amounts. Subscribers to the service have an account with associated funds attached. The web site (www.kraken.com) provides the user with an account overview (i.e. current balance), currency-pair exchange market status (history of prices and current order book), and the means to place entries on the order book; bids for a currency which can be immediately met with orders to sell the currency are automatically transacted, with the Kraken site taking a small and variable cut of the deal. Kraken also provide a stateless, web-based API by which all of the above actions can be undertaken programmatically. This is fully open, and described at the Kraken exchange web site. The DMBCS client-side C++ library implements all features of the API in a fully encapsulated C++ class, allowing users to implement algorithmic or robotic trading and dynamic exchange modelling.
Doodle
Doodle quickly searches the documents on a computer, then builds an index using meta-data contained in the documents and allows fast searches on the resulting database. It supports approximate searches and full-text indexing, and comes with a library for accessing the doodle database and making it easy to integrate doodle's functionality into other applications or user interfaces. Users can keep the doodle database always up-to-date by updating the database on-the-fly by using 'doodled' and 'fam' whenever files on the system change. They can also build one doodle database for all users on a multi-user system without compromising user privacy.
Duro
The goal of the Duro project is to create a library which is as compliant with the proposed database language D as it is possible for a C library. This library is supposed to serve as a basis for a truly relational database management system (TRDBMS).
  • Tuples and tables (relvars).
  • Relational algebra: RENAME, select (restrict), project, EXTEND, JOIN, SEMIJOIN, UNION, INTERSECT, MINUS, SEMIMINUS, SUMMARIZE PER, DIVIDEBY PER, WRAP, UNWRAP, GROUP, and UNGROUP.
  • Virtual tables (views).
  • Locking and nested transactions.
  • Duro tables are true sets -- uniqueness of tuples (rows) is always enforced. When creating real tables, at least one candidate key must be supplied. A candidate key may be empty.
  • User-defined types (including type constraints) and operators.
  • Declarative integrity.
  • Tcl interface, including support for relational expressions in Tutorial D syntax and operators implemented in Tcl ("stored procedures").
  • Simple GUI admin tool.
xs Duro is implemented on top of the Berkeley DB database library.
DynObj
DynObj is a C/C++ library for cross compiler plugin libraries. It enables exposing and sharing run-time type information for C++ classes. This allows for loading binary plugins, and interacting with them in type safe ways:
  • A program working with sound can install additional effect filters while running.
  • A file manager can add plugins that handles new archive types.
  • Or it can add file popup menu handlers, or toolbar commands from plugins.
  • A text editor can add an editing mode (say Python editing) when the text editor is running.
  • So, plugins can make a static application a lot more dynamic. And DynObj does this in a generic, type safe way.
EHS
The Embedded HTTP Server (EHS) is a C++ class which can be inherited from to give HTTP server functionality to any class or application. It supports form data via POST or GET, and uploads via multi-part form attachments. It is useful for adding Web-based administration or statistics to any C++ program.
EMAN
EMAN is a scientific image processing suite designed mainly to perform single-particle reconstructions of individual molecules. In this method, a transmission electron microscope is used to collect images of thousands of individual molecules. A complex series of algorithms then turns the individual 2D images into a high-resolution 3D structure of the molecule. The core of EMAN is a C++ based scientific image processing library.
EMI ECMAScript TOC Library
The library traverses a page from a specified starting position to its end and inserts a TOC at the starting position. Level one headings (h1) are ignored as it is recommended that only a single level one heading be present in a page and a TOC should not appear before the first and only level one heading. By convention, a TOC is placed after the top level heading and introductory paragraph of a page.
EMI PHP FileUpload Library
eMI PHP FileUpload Library is a simple cross-platform object-oriented PHP library intended to handle uploaded files. The library is essentially a wrapper around the cumbersome superglobal variable $_FILES. The superglobal is never modified by the library and retains its values until the script terminates.
EPiX
'ePiX', a collection of batch programs, creates mathematically accurate fgures, plots, and animations containing LaTeX typography. The input syntac is easy to learn. The output -- vector image files or LaTeX picture-like environments -- is expressly designed for use with LaTeX.
ETS- Enthought Tool Suite
The Enthought Tool Suite (ETS) is a collection of components developed by Enthought and our partners, which we use every day to construct custom scientific applications. This project is a "meta-project wrapper" that bundles up all the other projects in ETS.
EXcavator
eXcavator is an XML query processing class for PHP. Queries are constructed using a small query language, and query results are returned as either loosely formed or strict XML, in formats suitable for both text and HTML. One of eXcavator's most useful features is its facility to insert query results into user-defined templates, which allow for a free interpolation of user text and the data extracted by the query. It runs on top of XML_PullParser, but uses a completely independent API. However, it does offer opportunities to use the facilities of both packages side by side for programmers familiar with both.
EZWGL
EZwgl is a library of C functions, based on Xlib, whose purpose is to provide a tool that simplifies the task of graphical user interface (GUI) programming under the X window system environment. It is best for building a nice graphical user interface for an application, or for graphics programming under the X window system programming environment. EZWGL supports application resources, geometry management and drag-and-drop. It also includes about 100 OpenGL(TM)-like graphics functions and procedures that provides high level support for 3D graphics, including features like zbuffer, double-buffer and lighting.
Easyval
'Easyval' is a basic implementation of interval arithmetic that uses hardware doubles as interval bounds. The first goal of this library is to respect the interval arithmetic containment criterium.
Ecc
'ecc' is a class library for working with elliptic curves in cryptography. It consists of a set of TCP/IP client server examples for digital signature, encryption, and key exchange (such as Diffie-Hellman key exchangei, Massey Omura encryption, or DSA style signatures in the elliptic curve case).
Edlib
Lightweight, super fast C/C++ library for sequence alignment using edit distance.
Efl
The Enlightenment Foundation Libraries (EFL) is a set of libraries providing building blocks used in the Enlightenment window manager. This package contains the Doxygen-generated HTML documentation and examples for the API of the EFL.
Electron
The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on Node.js and the Chromium Content Module (via libchromiumcontent).
Element Tree
The Element type is a simple but flexible container object, designed to store hierarchical data structures, such as simplified XML infosets, in memory. The element type can be described as a cross between a Python list and a Python dictionary. The ElementTree wrapper type adds code to load XML files as trees of Element objects, and save them back again. The Element type is available as a pure-Python implementation for Python 1.5.2 and later. A C implementation is also available, for use with CPython 2.1 and later. The core components of both libraries are also shipped with Python 2.5 and later.
Elib
* " Elib has been decommissioned as a separate package since its useful functions have long since been included in Emacs. " Elib is designed as a collection of useful routines that don't have to be reinvented each time a new program is written. It contains code for container data structures, minibuffer and string handling functions missing in standard Emacs, and routines for handling lists of cookies in a buffer. This project was a GNU package. It has since been decommissioned and is no longer developed.
Emacs Common Lisp
Emacs Common Lisp is an implementation of Common Lisp, written in Emacs Lisp. The implementation provides a Common Lisp environment, separate from Emacs Lisp, running in Emacs. It does not intend to extend Emacs Lisp with Common Lisp functionality; however, Emacs Lisp functions can call Common Lisp functions and vice versa.
Enca
'Enca' (Extremely Naive Charset Analyser) detects the encoding of text files, based on knowledge of their language. It can also convert them to other encodings, letting you to recode files without knowing their current encoding. It supports most of Central and East European languages, and a few Unicode variants, independently of language.
Encuestame
Encuestame has been developed by @jotadeveloper and @dianmora since mid-2008 and was created to fill empty space in the survey online world, there are only a few options ready to use and others only under expensive rates, is the time for an open source option. Along the last years we have been adding new features, being able to connect Encuestame with the most famous Social Networks, trying to give you a project easy to be installed, to be usable and to be easy manageable. In mid-2011 we release the first version of Encuestame, since then we managed to make usable Encuestame in the new mobile world. Also we've enjoyed the support of companies like Atlassian and Jetbrains that have offered pen source licenses to our team. The history doesn't finish here, it will have more features coming soon.
Enlightenment
Enlightenment is a themeable, fast, flexible, and powerful window manager that runs on everything from small mobile devices to powerful multi-core desktops. The Enlightenment Foundation Libraries (EFL) comprise a suite of libraries to help you create beautiful user interfaces.
EnthoughtBase
* " This package has now been DEPRECATED since ETS 4.0. These functionalities have now been moved into other projects: 'etsconfig' is now part of traits, 'logger' is now part of apptools and 'util' is now part of pyface, and other packages. The etsproxy project allows you to run code that relied on this package or to convert source code to the new namespace with the 3to4 utility. " The EnthoughtBase project includes a few core packages that are used by many other projects in the Enthought Tool Suite:
  • etsconfig: Supports configuring settings that need to be shared across multiple projects or programs on the same system. Most significant of these is the GUI toolkit to be used. You can also configure locations for writing application data and user data, and the name of the company responsible for the software (which is used in the application and user data paths on some systems).
  • logger: Provides convenience functions for creating logging handlers.
  • util: Provides miscellaneous utility functions.
Epeios
The purpose of this project was to develop a framework to make powerful, reliable software components that could be used whatever the target platform, the environment or the interface in use. The project source code currently contains useful applications and undocumented related libraries. Among all the software components available, there is, for example, MMUAq, an application which allows to handle several mail accounts as a global one. As each one, it is based on the Epeios framework.
Epeios CGI libraries
This project is dedicated to portable libraries and software dealing with CGIs (Common Gateway Interface). It was a sub-project of the Epeios project before it was merged into the main project.
Ephemeris
'Ephemeris' reads, writes, and interpolates the JPL planetary ephemeris data that is the world standard planetary dataset. It should compile on any machine that uses gcc and supports IEEE floating point arithmetic, and has been tested under GNU/Linux. It uses an included library, gnulliver.c, that automatically handles integer and floating point Big-endian/Little-endian byte swapping to match Big-endian/network order on any computer. gnulliver.c can be used separately under the LGPL 2.1. This is a redesign of JPL's original FORTRAN code, available on JPL's FTP website (ftp://ssd.jpl.nasa.gov/pub/eph/export/), with some added flexibility (including patching some inconsistencies in the original JPL data files). 'Ephemeris' is not associated with JPL or NASA, but just uses JPL's data.
Epto
'epto' is a library for industrial strength shell script programming with sh. It features convenient error handling, tracing, logging, option handling, documentation template, process level transaction safety (sort of), and more. It takes less than five minutes of learning to start using it.
ExactImage
ExactImage is a fast C++ image processing library. Unlike ImageMagick, it allows operation in several color spaces and bit depths natively, resulting in much lower memory and computational requirements. Some optimized algorithms operate in 1/20 of the time ImageMagick requires, and displaying large images can be as fast as 1/10 of the time the "display" program takes.
Experimental Robotics Framework
The Experimental Robotics Framework is a framework for developing composable applications. The idea is to develop software components that interact with others previously developed in other applications and other components developed by other researchers. It is not a new concept in the field, it is very similar to IBM eclipse but in this case for 3d applications and based on C++ instead of Java.
FAM
FAM, the File Alteration Monitor, provides an API which applications can use to be notified when specific files or directories are changed. It comes in two parts: fam, the daemon which listens for requests and delivers notification, and libfam, a library which client applications can use to communicate with fam
FANN
Fast Artificial Neural Network Library (fann) implements multi-layer feedforward networks that support both fully connected and sparsely connected networks. It supports execution in fixed point arithmetic to allow for fast execution on systems with no floating point processor. To overcome the problems of integer overflow, the library calculates a position of the decimal point after training and guarantees that integer overflow cannot occur with this decimal point. FANN is designed to be fast, versatile, and easy to use. Several benchmarks have been executed to test its performance. It is significantly faster than other libraries on systems without a floating point processor, and comparable to other highly optimized libraries on systems with a floating point processor.
FLIF
FLIF is a novel lossless image format which outperforms existing image formats in terms of compression ratio. It works well on any kind of image (photographic, line art, computer graphics, etc.) and also supports animations. FLIF images (or animations) can be progressively decoded, which makes the format potentially very suitable for responsive web design. This is the reference implementation of FLIF, which includes a command-line tool (flif) to convert between FLIF and PNG/PNM/PAM, a decoding library (libflif_dec), an encoding library (libflif_enc), some scripts (gif2flif, apng2flif, raw2flif, ...), and a simple image/animation viewer (viewflif).
FXT
'FXT' is a C++ library containing code for various fast orthogonal transforms and related algorithms for real, complex, n-dim fourier transforms, hartley transform, 1dim and 2dim, number theoretic transforms, walsh, haar, and wavelet transforms, convolution, correlation and power spectrum, mass-storage FFTs and convolution, fast multiplication routines, sine and cosine transforms, and z-transform.
Farstream
The Farstream (formerly Farsight2) project is an effort to create a framework to deal with all known audio/video conferencing protocols. On one side it offers a generic API that makes it possible to write plugins for different streaming protocols, on the other side it offers an API for clients to use those plugins. This package provides Python bindings for Farstream.
Fast rendering toolkit
FRT is a toolkit for the generation of 3D animations using low-end machines (slow CPUs, low memory and small harddisks); of course, you can still use it with higher-end machines. The program is simple; the whole library is about 1000 lines of code. FRT has been designed with a *NIX-like operating system in mind: to avoid filling the harddisk, FRT establishes a master/slave relationship with mpeg_encode and renders frames on demand.
Fbxkb
fbxkb is keyboard indicator and switcher that shows a flag of the current keyboard in a system tray area and allows you to switch to another one. It is NETWM compliant.
Feedback Cat
Feedback Cat is a 100% free and open-source WordPress plugin to survey your users and customers. Set it up in 2 minutes.
Ferriscreate
'ferriscreate' is a libferris client which can be used to create new objects in the filesystem.
Ffmpeg
FFmpeg is a complete solution to record, convert and stream audio and video. Its components include:
  • ffmpeg – Converts one video file format to another and supports grabbing and encoding in real time from a TV card.
  • ffserver – HTTP (RTSP is being developed) multimedia streaming server for live broadcasts that supports time shifting.
  • ffplay – simple media player based on SDL and the ffmpeg libraries
  • ffprobe – a media file prober
  • libavcodec – library containing all FFmpeg audio/video encoders and decoders (most developed from scratch for best performances and high reusability)
  • libavfilter – video and audio filtering library
  • libavformat – library of parsers and generators for all common audio/video formats
  • libavutil – utility library containing functions used by all FFmpeg components
  • libswscale – video scaler and pixel format converter
  • libswresample – audio resampler and sample format converter
  • libpostproc – video post-processing library
Fftw
C subroutine library for computing the Discrete Fourier Transform in one or more dimensions, of both real and complex data, and of arbitrary input size. The FFTW team's benchmarks, performed on a variety of platforms, show that FFTW's performance is typically superior to that of other publicly available FFT software. Moreover, FFTW's performance is portable: the program will perform well on most architectures without modification. However, FFTW appears to be the fastest program most of the time for in-order transforms, especially in the multi-dimensional and real-complex cases.
FireDNS
This is a candidate for deletion: Links broken. No links to page. Email to maintainer broken. Poppy-one (talk) 12:09, 30 July 2018 (EDT) 'libfiredns' is a library for handling asynchronous DNS requests. It provides a very simple interface for sending requests and parsing reponses, as well as low-timeout blocking functions. 'libfiredns' functions have much lower timeouts than the stock functions and tend to be faster because they send requests to all configured system nameservers at the same time.
FireString
This is a candidate for deletion: Links broken. No links to page. Email to maintainer broken. Poppy-one (talk) 12:18, 30 July 2018 (EDT) FireString is a library to make string handling easier in C. It provides replacements for some non-ANSI libc string functions, binary and length-safe string functions, and an interface for easy, intelligent configuration file parsing.
Firehose
Firehose is a simple library which stripes multiple, inexpensive, network devices to provide very high speed data transfers. It will support any number of devices as long as each device has a TCP/IP layer.
Firestr
Fire★ is a a simple platform for decentralized communication and computation. Provides a simple application platform for developing p2p applications and share these applications with others in a chat like user interface. You don't send a message to someone, you send an program, which can have rich content. All programs are wired up together automatically providing distributed communication, either through text, images, or games. The source code to all applications is available immediately to instantly clone and modify.
Flate
This is a candidate for deletion: Links broken. No links to page. Email to maintainer broken. Poppy-one (talk) 03:41, 31 July 2018 (EDT) Flate is a template library used to deal with HTML code in CGI applications. It includes C and Perl support. All HTML code is put in an external file (the template) and printed using the library functions: variables, zones (parts to be displayed or not), and tables (parts to be displayed 0 to n times). You don't need to modify/recompile your application when modifying HTML code, printing order doesn't matter in your CGI code, and your CGI code is cleaner.
Fontutils Heckert gnu.tiny.png
The GNU Font Utilities (a.k.a. Fontutils) create fonts for use with Ghostscript or TeX. They also contain general conversion programs and other utilities. Some of the programs in Fontutils include bpltobzr, bzrto, charspace, fontconvert, gsrenderfont, imageto, imgrotate… The main purpose of these programs is to form a tool chain to generate Metafont or PostScript fonts from scanned images.
Form Alchemy
FormAlchemy eliminates boilerplate by autogenerating HTML input fields from a given model. FormAlchemy will try to figure out what kind of HTML code should be returned by introspecting the model's properties and generate ready-to-use HTML code that will fit the developer's application. Of course, FormAlchemy can't figure out everything, i.e, the developer might want to display only a few columns from the given model. Thus, FormAlchemy is also highly customizable.
Foundation
Foundation is a framework that enables rapid prototyping of websites and web-based applications. Its features include Grid layout, CLI wrappers, improved HTML forms, off-canvas layouts and responsive design.
FreeLing
The FreeLing package consists of a library providing language analysis services. FreeLing is designed to be used as an external library from any application requiring Natural Language Processing services (machine translators, intelligent web searchers, automatic summarizers, NL interfaces, etc.) Also, a simple main program is also provided as a basic interface to the library, which enables the user to analyze text files from the command line. Current version analyzes text in English, Spanish, Catalan, Galician, and Italian. New languages can be easily added if linguistic data are available.
  • Features:
  • Text tokenization
  • Sentence splitting.
  • Morphological analysis.
  • Named entity detection.
  • Date/number/currency/ratios recognition.
  • Physical magnitudes detection (speed, weight, temperature, density, etc.)
  • PoS tagging.
  • Named entity classification.
  • Chart-based shallow parsing.
  • WordNet based sense annotation
  • Dependency parsing.
Freecell Solver
Freecell Solver is a library written in C, that automatically solves layouts of Freecell and similar Solitaire variants (including Simple Simon boards). It is accompanied by several stand-alone command line programs.
Freeipmi Heckert gnu.tiny.png
FreeIPMI provides in-band and out-of-band IPMI software based on the IPMI v1.5/2.0 specification. The software has been written with a number of useful features for large HPC and cluster environments. Its components include:
  • Libfreeipmi - A C library that includes KCS, SSIF, and OpenIPMI drivers, IPMI 1.5 and IPMI 2.0 LAN communication interfaces, IPMI packet building utilities, IPMI command utilities, and utilities for reading/interpreting/managing IPMI.
  • Bmc-info - A tool to read information about the local BMC such as version information and device support.
  • Bmc-config - A tool to configure usernames, passwords, networking information, security, and other relevant IPMI configuration fields.
  • Bmc-watchdog - A tool/daemon to manage a BMC Watchdog. This tool is typically used for system timeout management and automatic system restarts in the event of a system crash.
  • Ipmi-chassis - A tool to manage/monitor a chassis, such as chassis power, identification, and status.
  • Ipmi-fru - A tool to read field replaceable unit (FRU) information from a motherboard/machine.
  • Ipmi-sel - A tool to read and manage IPMI System Event Log (SEL) records.
  • Ipmi-sensors - A tool to read IPMI sensor readings and sensor data repository (SDR) information.
  • Ipmipower - A tool for remote power control.
  • Ipmiconsole/Libipmiconsole - A tool and library for Serial-over-Lan (SOL) console access.
  • Ipmi-raw - A tool that provides hex input/output of IPMI commands.
  • Ipmi-locate - A tool that can probe for information about the location of a BMC device, such as device addresses.
  • Ipmimonitoring/Libipmimonitoring - A tool and library for used for sensor interpretation/monitoring. The tool is similar to ipmi-sensors, but sensor readings are mapped into Nominal, Warning, and Critical states.
  • Pef-config - A tool to configure IPMI Platform Event Filtering (PEF) configuration.
  • Ipmiping - An IPMI ping tool for debugging.
  • Rmcpping - A RMCP ping tool for debugging.
  • Ipmidetect/Ipmidetectd/libipmidetect - A tool, daemon, and library for IPMI node detection.
FtpUtil
ftputil is a high-level FTP client library for the Python programming language. ftputil implements a virtual file system for accessing FTP servers, that is, it can generate file-like objects for remote files. The library supports many functions similar to those in the os, os.path and shutil modules. ftputil has convenience functions for conditional uploads and downloads, and handles FTP clients and servers in different timezones.
FuzzPy
Library for fuzzy sets, fuzzy graphs, and general fuzzy mathematics for Python.
G-Wrap
'G-Wrap' is a tool (and Guile library) for generating function wrappers for inter-language calls. It currently supports generating Guile wrappers for C functions.
GAIL
'GAIL' is a GTK+ module that provides accessibility support for GTK+ and libgnomecanvas by implementing AtkObjects for widgets in the two libraries. For example, if the module is loaded in a program which calls gtk_widget_get_accessible() for a GtkEntry, an instance of GailEntry is returned. This module is normally used with the atk-bridge GTK+ module from at-spi to allow an assistive technology, e.g a screenreader, to query or drive the program.
GAUL
The Genetic Algorithm Utility Library (GAUL) is a programming library designed to assist in the development of code requiring genetic algorithms. The steady-state, generation based and the island model of evolution are supported, using the Darwinian, Lamarkian or Baldwininan evolutionary schemes. Standard mutation, crossover and selection operators are provided, while code hooks additionally allow custom operators. It provides data structures and functions for handling and manipulation of the data required for a genetic algorithm. Additional stochastic algorithms are provided for comparison to the genetic algorithms. Much of the functionality is also available through a simple S-Lang interface.
GDB-Machine Interface library
A GDB/MI interface library for C and C++. It implements the GDB/MI (GNU DeBugger/Machine Interface) protocol as a library so you can create a GDB frontend without writing the "dialog" with GDB. Unlinke CLI the MI is intended for programs and not humans.
GDL
The Gnu Data Language (GDL) is a free alternative to the data visualization and analysis tool, called IDL (Interactive Data Language), frequently used by scientists. GDL and its library routines are designed as a tool for numerical data analysis and visualisation. GDL is dynamically typed, vectorized and has object-oriented programming capabilities. The library routines handle numerical calculations, data visualisation, signal/image processing, file input/output (incl. graphical and scientific data formats such as TIFF, PNG, netCDF, HDF etc) and interaction with host OS. Despite its name, GDL is not a GNU package.
GDSL
The Generic Data Structures Library (GDSL) is a collection of routines for generic data structures manipulation. It is a portable and re-entrant library designed to let C programmers access common data structures with powerful algorithms and hidden implementation. Available structures are lists, queues, stacks, hash tables, binary trees, binary search trees, red-black trees, 2D arrays, and permutations.
GEGL
GEGL is a graph-based image processing framework offering non-destructive image processing and compositing on large images. It is suitable for projects ranging from small one-off projects to interactive applications.
GEOS
'GEOS' is a C++ implementation of the functions and predicates defined in the OpenGIS "Simple Features for SQL" specification. It includes high quality implementations of all important spatial relationships and operations, robust versions of all functions in the dimensionally extended 9 intersection predicate model, and implementations of the operators Buffer(), Union(), and Intersection() and all other SFSQL functions including Area(), Length(), Centroid(), etc.
GGZ Gaming Zone
The GGZ Gaming Zone develops a free gaming environment, based on a client-server architecture. More than 20 games are already available directly from the project, and integration into the major free desktops like KDE and GNOME is also being done. Player privacy, lack of advertisements and source code availability for game routine verification make this project a reliable platform for free games. Several independent game projects do already support playing over GGZ.
GJrand
A programmer's library for random numbers. Also random number generator testing code. Intended for simulation, games and "Monte-Carlo" algorithms.
GLTT
'GLTT' is a library that allows you to read and draw TrueType fonts in any OpenGL application. It supports bitmapped and anti-aliased font drawing as well as vectorized and polygonized drawing.
GMM
The Guarded Memory Move tool is useful for studying buffer overflows and catching them together with a "good" stack image. Once a stack overflow has been exploited, the back trace is already gone, as is information about parameters and local variables that are very important in understanding how the attacker is working out the exploit. The GMM library uses dynamic function call interception to catch the most common functions that attackers use to exploit stack buffers. It uses the LD_PRELOAD capability and offers two services: first, it avoids buffer overflow to allow the attacker to execute shell-code on your machine. Second, where an exploit is detected, it saves the stack content and triggers a segmentation fault. The resulting core dump has the necessary information to debug the exploit and fix the software.
GNU Source-highlight Heckert gnu.tiny.png
Source-highlight reads source language specifications dynamically, thus it can be easily extended (without recompiling the sources) for handling new languages. It also reads output format specifications dynamically, and thus it can be easily extended (without recompiling the sources) for handling new output formats. The syntax for these specifications is quite easy (take a look at the manual). Source-highlight is a command line program, and it can also be used as a CGI. Notice that Source-highlight can also be used as a formatter (i.e., without highlighting): you can, for instance, format a txt file in HTML (and it will take care of translating special characters, such as, <, >, &). Since version 2.2, source-highlight can also generate cross references; in order to do this it relies on Exuberant Ctags. These are the output formats already supported:
  • HTML
  • XHTML
  • LATEX
  • TEXINFO
  • ANSI color escape sequences (you can use this feature with less)
  • DocBook
These are the input languages (or input formats) already supported (in alphabetical order):
  • Ada
  • Autoconf files
  • C/C++
  • C#
  • Bib
  • Bison
  • Caml
  • Changelog
  • Css
  • Diff
  • Flex
  • Fortran
  • GLSL
  • Haxe
  • Html
  • ini files
  • Java
  • Javascript
  • KDE desktop files
  • Latex
  • Ldap files
  • Logtalk
  • Log files
  • lsm files (Linux Software Map)
  • Lua
  • Makefile
  • M4
  • ML
  • Pascal
  • Perl
  • PHP
  • Postscript
  • Prolog
  • Properties files
  • Python
  • RPM Spec files
  • Ruby
  • Scala
  • Shell
  • S-Lang
  • Sql
  • Tcl
  • XML
  • XOrg conf files
GNUe Common Library
GNUe Common Library is the basis for the GNUe tools, such as Forms, Reports, Application Server, and Designer. It implements a database-abstraction layer that provides support for most major databases. A builtin XML-to-Object parser and Object-to-XML marshaller are used by Forms, Reports, and Designer to save and read Forms/Report definitions to and from an XML file. It also defines and implements an RPC abstraction layer that will allow server processes to define their public methods once and have them available XML-RPC and Pyro clients.
GNUe Forms
GNUe Forms is a generator for data aware user interfaces with support for different platforms and data sources. From an XML file containing both the layout definition and the program logic required, GNUe Forms generates native interactive data entry screens for a number of user interface frameworks, including GNOME, KDE, and a curses based text interface. GNUe Forms can interact with all data sources supported by GNUe Common, which includes GNUe AppServer, SQLite, MySQL, Firebird, PostgreSQL, MaxDB, or plain CSV files.
GOffice
GOffice is a library of document-centric objects and utilities building on top of GLib and Gtk+ and used by software such as Gnumeric.
GPGME
GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a High-Level Crypto API for encryption, decryption, signing, signature verification and key management. Currently it uses GnuPG as its backend but the API isn't restricted to this engine; in fact, there is already a backend for CMS (S/MIME).
GPStk
'GPSTk' is a set of both fundamental and advanced GPS processing algorithms. The library provides functions including RINEX I/O, ephemeris calculation, atmospheric refraction models, and positioning algorithms. The applications include cycle slip detection and removal, calculation of the Total Electron Content (TEC) of the ionosphere, bindings to 'octave', and RINEX file manipulation.
GRX
GRX is a 2D graphics library originally written for DJGPP. It supports DOS, Linux console (svgalib and framebuffer drivers), X11, and Win32 (using the Mingw compiler).


Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.