STklos
   HOME

TheInfoList



OR:

STklos is a
Scheme A scheme is a systematic plan for the implementation of a certain idea. Scheme or schemer may refer to: Arts and entertainment * ''The Scheme'' (TV series), a BBC Scotland documentary series * The Scheme (band), an English pop band * ''The Schem ...
implementation that succeeded STk. It is a bytecode compiler with an ad hoc virtual machine which aims to be fast as well as light. STklos is free software, released under the
GNU General Public License The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the Four Freedoms (Free software), four freedoms to run, study, share, and modify the software. The license was th ...
. In addition to implementing most of R5RS, and a large part of R7RS, STklos supports: * an object system based on CLOS with multiple inheritance,
generic function In computer programming, a generic function is a function defined for polymorphism. In statically typed languages In statically typed languages (such as C++ and Java), the term ''generic functions'' refers to a mechanism for ''compile-time pol ...
s,
multimethods Multiple dispatch or multimethods is a feature of some programming languages in which a function or method can be dynamically dispatched based on the run-time (dynamic) type or, in the more general case, some other attribute of more than one of ...
and a
MOP A mop (such as a floor mop) is a mass or bundle of coarse strings or yarn, etc., or a piece of cloth, sponge or other absorbent material, attached to a pole or stick. It is used to soak up liquid, for cleaning floors and other surfaces, to mop ...
* a module system * easy connection with the GTK toolkit * a low-level macro system that compiles macro expanders into bytecode (syntax-rules is also present as a high-level macro system) * a full
Numerical tower In Scheme (programming language), Scheme and in Lisp (programming language), Lisp dialects inspired by it, the numerical tower is a set of data types that represent numbers and a logic for their hierarchical organisation. Each type in the tower c ...
implementation, as defined in R7RS *
Unicode Unicode, formally The Unicode Standard,The formal version reference is is an information technology Technical standard, standard for the consistent character encoding, encoding, representation, and handling of Character (computing), text expre ...
support * Perl compatible regular expressions via
PCRE Perl Compatible Regular Expressions (PCRE) is a library written in C, which implements a regular expression engine, inspired by the capabilities of the Perl programming language. Philip Hazel started writing PCRE in summer 1997. PCRE's syntax i ...
library * a simple foreign function interface via
libffi libffi is a foreign function interface library. It provides a C programming language interface for calling natively compiled Subroutine, functions given information about the target Subroutine, function at Run time (program lifecycle phase), run ...
* being compiled as a library and embedded in an application * native threads, using the libpthread library. The API conforms to SRFI-18 * a number of SRFIs * easy access to SLIB * an HTTP client Additional libraries are available through its package system ScmPkg.


References


External links


STklos home page


Scheme (programming language) interpreters Scheme (programming language) implementations {{compu-prog-stub