45346ef865
- (optimize-level [0,1,2]) and ikarus -O[0,1,2] where -O0 = no optimizations -O1 = using old optimizer -O2 = using the new cp0 optimizer defaults to -O1 for now. - (cp0-size-limit n) which is the limit of the residual size for each inlining attempt - (cp0-effort-limit n) which is the limit on the effort expended for each inlining attempt - Rewrote the syntax-match macro to make use of the same technology used in syntax-case itself resulting in reduced code size. - Added (system-value <symbol>) which returns the system value. E.g., (system-value 'car) => #<procedure car> This is pretty much the same as (eval <symbol> (environment '(ikarus))) except that it does not involve compiling the expression or consulting the library/expander systems. - Fixed the fasl loader to make it understand complex numbers. |
||
---|---|---|
benchmarks | ||
benchmarks.larceny | ||
doc | ||
lab | ||
lib | ||
other-libs | ||
scheme | ||
src | ||
.bzrignore | ||
ACKNOWLEDGMENTS | ||
BUGS | ||
COPYING | ||
DEDICATIONS | ||
GPL-3 | ||
HOWTO-Contribute | ||
Makefile.am | ||
Makefile.in | ||
README | ||
aclocal.m4 | ||
c32 | ||
c64 | ||
compile | ||
config.guess | ||
config.h.in | ||
config.sub | ||
configure | ||
configure.32.ac | ||
configure.64.ac | ||
configure.ac | ||
depcomp | ||
install-sh | ||
missing | ||
mkinstalldirs |
README
Ikarus Scheme is an implementation of the Scheme programming language. The preliminary release of Ikarus implements the majority of the features found in the current standard, the Revised 6 report on the algorithmic language Scheme including full R6RS library and script syntax, syntax-case, unicode strings, bytevectors, user-defined record types, exception handling, conditions, and enumerations. Over 80% of the R6RS procedures and keywords are currently implemented and subsequent releases will proceed towards brining Ikarus to full R6RS conformance. The main purpose behind releasing Ikarus early is to give Scheme programmers the opportunity to experiment with the various new features that were newly introduced in R6RS. The most important of such features is the ability to structure large programs into libraries; where each library extends the language through procedural and syntactic abstractions. Many useful libraries can be written using the currently supported set of R6RS features including text processing tools, symbolic logic systems, interpreters and compilers, and many mathematical and scientific packages. It is my hope that this release will encourage the Scheme community to write and to share their most useful R6RS libraries.