19 projects tagged "Libraries"
Librep is a shared library implementing a Lisp dialect that is lightweight, reasonably fast, and highly extensible. It contains an interpreter, byte-code compiler, and virtual machine. Applications may use the interpreter as an extension language, or it may be used for standalone scripts. Rep was originally inspired by Emacs Lisp. However one of the main deficiencies of elisp--the reliance on dynamic scope--has been removed. Also, rep only has a single namespace for symbols.
A series is a data structure much like a sequence, with similar kinds of operations. The difference is that in many situations, operations on series may be composed functionally and yet execute iteratively, without the need to construct intermediate series values explicitly. In this manner, series provide both the clarity of a functional programming style and the efficiency of an iterative programming style. Series is the culmination of many years of design and use of this approach, during which some 100,000 lines of application code have been written (by about half a dozen people over the course of seven years) using the series facility in nearly all iteration situations. This includes one large system (KBEmacs) of over 40,000 lines of code. In a nutshell: Think "Efficient MAPCAR". SERIES translates functional-style expressions into efficient loops.
Jess is a fast, light rule engine and scripting environment written entirely in Java. You can build Java software that has the capacity to "reason" using knowledge you supply in the form of declarative rules. It is supplied as a programmer's library, making it ideal for embedding in larger applications. Jess includes development tools built on the Eclipse platform. It is free for academic use and can be licensed for commercial use.
MetaRuby contains miscellaneous libraries (useful now) for a future Ruby-in-Ruby interpreter including Array/Hash/String as abstract ("Hollow") classes, an undo queue, a statistical time-profiler, an event loop, a modular marshaller ("ToSource"), a specification for a modular+reflexive+homoiconic remote call system ("LGRAM"), a declarative type system, a schema for expressing Ruby source code as proper (non-special) Ruby objects, etc.
ACDK is a development framework with a similar target of Microsoft's .NET or Sun's ONE platform, but it uses C++ as a core implementation language. It implements the standard library packages, including acdk::lang, acdk::lang::reflect, acdk::util, acdk::io, acdk::text (including regexpr), acdk::net, acdk::sql, acdk::xml, and more. Flexible allocator/garbage collection, threading, and Unicode are implemented in the core of ACDK. Extensions make C++ objects available for reflection, serialization, aspect-oriented class attributes, and [D]ynamic [M] ethod [I]nvocation. This DMI acts as an universal object oriented call interface to connect C++ with scripting languages (Java, Perl, Tcl, Python, Lisp, Visual Basic, and VBScript) and standard component technologies (CORBA and COM).