Patch provided by Aleksej Lebedev via PR pkg/50425 and pkgsrc-users@.
pkgsrc changes:
o While here fix various pkglint warnings (spaces vs tabs)
o Update DESCR to reflect current status of scheme48 and R5RS
Changes:
* 2014-04-12 (version 1.9.2)
** Bug fixes
- Some regressions with respect to integer shifts were fixed.
- Some compiler warnings were fixed.
* 2014-02-22 (version 1.9.1)
** Bug fixes
- A bug fix from SRFI 13 was imported (in `string-trim-right').
- =DESTDIR= is now used consistently in the Makefile.
- A bug in `integer->errno' was fixed. (William Vining)
- Various problems that broke the VM when compiled with Clang were
fixed.
Add LICENSE
Upstream changes:
* 2012-12-31 (version 1.9)
** Additions
- A new C FFI as added, thanks to Crestani, Harald Glab-Plhak. The
old one is still there but will eventually be phased out.
See Crestani's paper "Foreign-Function Interfaces for Garbage-Collected Programming Languages"
http://www-pu.informatik.uni-tuebingen.de/users/crestani/publications/2008-sws-ffi.pdf
- A new networking code layer was added with full support for IPv6,
UDP etc. (undocumented as of yet)
- Records now support single inheritance (accessible through the
r6rs-records packages)
- `letrec*' was added to the `scheme' structure
- A `r5rs' structure was added.
- A new condition system based on R6RS's system has replaced the old system.
- Some R6RS libraries were added (with help from Robert Ransom).
- A statistical profiler was added (Marcel Turino, Manuel Dietrich) -
check the documentation for details.
- TLC tables (`eq?' tables) were added by Marcus Crestani and David Frese.
- The module system warns on cycles and redefinitions
- When the VM is compiled with GNU C, it uses direct threading for
instruction dispatch, which speeds up the VM noticeable (done by
Timo Harter)
- The reader for a structure is configurable (again).
- SRFI 19 now works on Windows
- `list-spine{,-cycle-safe}[*%]' sequence macros were added to `reduce'
structure by Robert Ransom
- The Windows build can be done via a Boo script (contributed by
Robert Ransom)
- The unquote and unquote-splicing were generalized to several
operands, in line with R6RS.
- Commands ,show-known-packages, ,show-interface, and
,show-default-package were added to support SDT (Marcus Crestani,
Sebastian Rheinecker).
- `placeholder-value' now accepts a `deadlock?' argument that says
whether blocking on the placeholder contributes to deadlock.
- Most source files now carry author information.
- A document =doc/deriving.txt= was added that clarifies how works
derived from Scheme 48 should be labelled.
** Changes
- The BIBOP GC was heavily debugged and is now considered stable - it
is enabled by default.
- The system builds on Windows Visual Studio Express 2010 instead of
Visual Studio 2005.
- The BIBOP GC code was simplified significantly.
- The `syntax-rules' implementation was rewritten by Richard Kelsey
- Some structures were added to the POSIX subsystem
(`posix-errnos', `posix-syslog')
- Various procedures were added to the POSIX structures by Roderic
Morris to support scsh.
- The autoconf code was reorganized by Ivan Shmakov.
- The REPL now prints values without quotes and auto-capitalization of
record-type names.
- The Makefile now builds the documentation upon `make install'.
(This requires a working LaTeX installation and tex2page.) A target
`install-no-doc' is available that does not.
- The license information was clarified.
- The external-events API was changed to fix a design bug; it now
correctly accomodates "fire-once" applications such as
wait-`for-child-process' (with help from Robert Ransom, Roderic
Morris).
** Bug fixes
- Many.
Lots of changes between this two releases :
- a new experimental gc
- framework for asynchronous event
- support for 64 bits machine
- the layout of the installed system now conforms to FHS
- and a lots of bugs fixes ...
Contributed by Aleksej Saushev via IRC.
2/24/99 (version 0.53)
Additions:
DEFINE-FINITE-TYPE and DEFINE-ENUMERATED-TYPE (in structure
FINITE-TYPES; documented in doc/utilities.ps and
doc/html/utilities.html.
Added CHAR-SOURCE->INPUT-PORT, CHAR-SINK->OUTPUT-PORT,
MAKE-STRING-OUTPUT-PORT, STRING-OUTPUT-SOURCE-OUTPUT to
the extended-ports structure.
The structure BYTE-VECTORS is the same as CODE-VECTORS with `byte'
replacing `code' in all the names. The underlying datatype is the
same for both, and uses `byte' when printing.
There is a new and much improved interface to C code, thanks to
Mike Sperber. It is documented in in doc/external.ps and
doc/html/external.html.
Bug fixes:
Session-data and user-context records are no longer in the fluid env.
Lexical environments can now be nested up to 65k deep.
,expand no longer prints `definition in expression context' warnings.
Added ARRAY? and SEARCH-TREE? to the array and search tree structures.
Flat environments work again.
Templates of the form `var ... ...' now work in syntax rules.
Reinstated caching of SCHEMIFY results to greatly reduce the space
used by debugging info.
Added argument checking to STRING->NUMBER and NUMBER->STRING.
Fixed space blow-up in LOAD.
Unused ports are closed more reliably.
Changes:
The heap, gc, and image code is now in three separate modules.
The symbol table is now held in a VM register.
Inlined SHOWING-FOCUS-VALUES into the main command loop and moved
the sentinal call to reduce the noise at the base of ,preview output.
The tables returned by MAKE-TABLE now use EQV? for comparison (instead
of EQ?). This makes these tables about 50% slower when numbers are
used as keys, but significantly more accurate.
Floating-point numbers are no longer double boxed.
The channels structure has been split into channels and low-channels.