FNV hashes are designed to be fast while maintaining a low collision rate. The high dispersion of the FNV hashes makes them well-suited for hashing nearly identical strings such as URLs, hostnames, text, and IP addresses. FNV is used in a wide variety of applications including mdbm, DNS, web search engines, NFS, Netnews, etc.
FreeForth is a small and fast interactive compiler composed of an extensible set of macros generating inline compact i386 native code, including floating-point instructions, and an easy interface to Linux and Windows dynamic libraries. It uses two stacks to pass subroutines arguments and results separately from return addresses, like other Forth dialects, but unlike them, it is a simpler pure compiler (without an interpreter) offering interactivity through "anonymous" subroutines which are executed by their closing ";" macro. FreeForth is fully documented by 100K of interactive online help. Since its first release in 2006, it has been used every day for cross-development of realtime industrial applications embedded in microcontrollers, and for PC-controlled manufacturing test benches. The FreeForth distribution includes an interactive incremental assembler for the MSP430 microcontroller family.
French Verb Conjugation Rules establishes a concise and accurate set of computer readable French verb conjugation rules. The rules have been placed in an xbase database for easy access. The project is oriented towards language students, developers of computer assisted language learning software, and computational linguists.
The Functional XML Parsing Framework is a package of low-to-high-level lexing and parsing procedures that can be combined to yield a SAX, DOM, validating parsers, or a parser intended for a particular document type. The procedures in the package can be used separately to tokenize or parse various pieces of XML documents. The package supports XML namespaces, character, internal, and external parsed entities, xml:space, attribute value normalization, processing instructions and CDATA sections. It is intended to be a framework, a set of "Lego blocks" you can use to build a parser that follows DOM, SAX, or another discipline, and performs validation to any degree. As an example of such parser construction, the package includes a semi-validating SXML parser. It converts XML to SXML, an instance of XML Infoset as S-expressions, an abstract syntax tree of an XML document. SXML can be queried (in a XPath style), transformed, and evaluated. The framework parses XML in a pure functional style, as folding over a text XML document considered a spread-out tree. The input port is treated as a linear, read-once parameter. The framework's code does not use assignments at all.
GLE is a library package of C functions that draw extruded surfaces, including surfaces of revolution, sweeps, tubes, polycones, polycylinders and helicoids. Generically, the extruded surface is specified with a 2D polyline that is extruded along a 3D path. A local coordinate system allows for additional flexibility in the primitives drawn. Extrusions may be texture mapped in a variety of ways. The GLE library generates 3D triangle coordinates, lighting normal vectors and texture coordinates as output. GLE uses the GL or OpenGL API's to perform the actual rendering.