README 2.81 KB
Newer Older
eg's avatar
eg committed
1 2
								-*- outline -*-	

Erick's avatar
Erick committed
3
		      S T k l o s   ( v e r s i o n   0 . 9 8 )
eg's avatar
eg committed
4 5 6
		      =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=

				   Erick Gallesio
Erick Gallesio's avatar
Erick Gallesio committed
7
				   <eg(at)unice.fr>
eg's avatar
eg committed
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57


* Purpose 

STklos is a free Scheme System (nearly) conform to R5RS. The aim of this
implementation is to be fast as well as light. The implementation is
based on an ad-hoc Virtual Machine. STklos can also be compiled as a 
library, so that one can easily embed it in an application.

The salient points of STklos are:
    * efficient and powerful object system based on CLOS providing
	- Multiple Inheritance,
	- Generic Functions,
	- Multi-methods
	- an efficient MOP (Meta Object Protocol)
    * a simple to use module system
    * implements the full tower of numbers defined in R5RS 
    * easy connection to the GTK+ toolkit

* History

STklos is the successor of STk, a Scheme interpreter tightly connected
to the Tk toolkit, that I have developed since September 1993. 

STklos is very similar to STk, for the user, but very different in he
implementation. Everything has been rewritten and STklos uses now a
compiler to a byte-code machine, rather than direct interpretation.
As a consequence, it is a lot faster than STk.  STklos is also better
designed and should be easily embedded in an application (it was not
completely the case with STk).

Whereas STk used the Tk toolkit, STklos used the GTK+ graphical
toolkit.  This choice was dictated by the low activity around Tk (no
new widgets for several years) and by, on contrary, the effervescence
around GTK+. STklos is not completely compatible with STk but it
should be easy to port old STk graphical applications (provided that
they use objects). The GTK+ extension can be loaded at run time and
does not require a special interpreter as it was the case with STk.

* SRFI Support

Current version of STklos supports some SRFIs (a complete list of
implemented SRFIs is available in the file SUPPORTED-SRFIS in the
distribution). The goal is to support as much as possible final
SRFIs. Any help on implementing other SRFIs on STklos is welcome.


* Supported architectures

STklos is known to work on the following architectures:
58
	- Linux 2.2/ 2.4 / 2.6 (i386/gcc)
eg's avatar
eg committed
59 60
	- Linux 2.4 (itanium/gcc)
	- Linux 2.2 (Alpha/egcs)
61
	- FreeBSD 6.2 (i386/gcc)
eg's avatar
eg committed
62
	- Win XP (i386/gcc(Cygwin)) 
Erick Gallesio's avatar
Erick Gallesio committed
63
	- Mac OS-X (ppc/apple gcc & intel/apple gcc)
eg's avatar
eg committed
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
	- Solaris 8 (ultrasparc/gcc)
	- Irix 6.5.20 (Octane, mips R10,000)
	- Open Darwin  7.0 (PPC/gcc)

This is clearly not sufficient and port to other architectures should
be done, but any help in this area is really welcome.  More
informations on supported platforms is available in the PORTING-NOTES
file in the distribution.

* Project Home 

STklos home page is is located at http://stklos.net
The project is also hosted on Source Forge http://sourceforge.net/projects/stklos. 



--
 LocalWords:  TODO SRFI OSF Solaris