Pocket Scheme - Release History
Release history
- 24 September 2006. Version 1.3.2.
System registry support in w32.dll.
Bug fixes to system-ansi character encoding.
- 10 April 2006. Version 1.3.1.
Heap now abides by specified limits.
New heap minimum: 2 Mb.
New heap limit and tuning UI.
Improved garbage collection in deeply recursive evaluations.
Transcript window no longer creates temporary file.
- 2 April 2006. Version 1.3.
No longer supports the Handheld PC.
No longer supports the first-generation Pocket PC.
Support for WM5 devices.
New user interface:
separate output and transcript windows,
smart sexpr input,
status bar,
notification of pending background tasks with input,
history for all input.
New window hosting architecture.
Script support on the Pocket PC.
Configurable home directory.
Heap specified in Mb, not Kb.
Added W32:HOST-TOPMOST procedure.
Removed GC report window.
- 5 January 2006. Version 1.2.2.
Fixed COND-EXPAND to work around a macro expansion bug.
- 2 January 2006. Version 1.2.1.
This is the last full release supporting the Handheld PC.
Added VOID procedure.
Fixed COND-EXPAND to allow a clause with an empty body.
About dialog displays version information for both REPL UI and language engine.
- 17 August 2005. Version 1.2.
Support for WM2003 devices.
New I/O subsystem.
Recursion depth in evaluator limited only by available memory on the device.
Precise control over the external encoding of characters and numbers.
Fully interruptible I/O, including network I/O.
Timeout support (exn:timeout) for the TCP socket interface.
Single-precision floating-point support in foreign structures.
SRFI 0.
File ports no longer support the notion of being opened
in a "binary" mode.
Cooked text ports no longer support random-access reads and writes.
Raw vectors can no longer be retyped dynamically.
Raw vector reads and writes have been supplanted by number- and character-oriented low-level IO.
TCP sockets return binary data that must explicitly be decoded into characters or numbers.
Devices will not power down during a running computation.
Fewer tunable parameters.
Entire app (other than online help files, which continue to clutter the \Windows directory)
installable to storage card (PPC only).
Garbage collection reports appear in own window.
UI changes.
- 25 October 2000. Version 1.1.0.
Exact unlimited precision integer and non-integer rational numbers.
Polish user interface of Pocket PC version.
H/PC user interface for File/Load remembers last visited directory.
Read-raw-vector returns EOF object instead of #f at end of file.
Double maximum open file count, to 20 from 10.
Increate maximum FFI parameter count to 10, for CreateProcess.
- 20 September 2000. Version 1.0.3.
SH4 support. Pocket PC support.
Bug fixes: file-position and peek-char interaction;
lagging force-output on P/PC display.
- 11 September 2000. Version 1.0.2.
No longer supports the Palm-sized PC.
Bug fixes: peek-char on binary ports,
symbols that superficially resemble real numbers,
parenthesis balancing in editor.
String size now limited only by device memory.
FFI can handle negative numeric arguments.
Greatly reduced storage overhead for P/PC and H/PC Pro.
H/PC Pro now uses its own version.
- 10 July 2000. Version 1.0.1.
This is the last version supporting the Palm-sized PC.
Removed call to buggy CE CRT atan2().
Corrected setup for MIPS and SH3-based H/PC Pro models.
- 3 July 2000. Version 1.0.0.
Documented tcp:ntohs etc. procedures.
Revoked beta timeouts.
- 14 May 2000. Version 0.6.6: another pre-release.
H/PC Pro and StrongARM support.
New 2.11-safe text output UI for H/PC.
Bug fixes in LIST-TAIL, TRACE, UNTRACE.
tcp:ntohs, etc. procedures for ss.dll.
Restore large file capability for editor.
- 14 December 1999. Version 0.6.5: final pre-release.
Error message consistency.
Consistent procedure parameter checking.
Performance tuning of evaluator core.
- 30 November 1999. Version 0.6.4: BETA 2.1.
Bug fix in storage manager.
- 26 November 1999. Version 0.6.3: BETA 2 (expiration date relaxed).
Internal definitions rewritten into letrecs.
Debugging support changed.
More efficient evaluator.
Editor takes Scheme comments into account when balancing parentheses and indenting.
Cache writes to improve performance.
- 9 November 1999. Version 0.6.2.
Font selection. Auto-indentation in editor.
Parenthesis balancer can handle character literals.
Trace works on FFI callbacks.
Bug fixes in new output routines, comparator procedures.
Changed return type of read-string and read-line.
- 29 October 1999. Version 0.6.1.
Fixed parenthesis balancer on H/PC editor.
Editor no longer wraps lines.
- 28 October 1999. Version 0.6.0 (expires 1 April 2000).
New user interface for displaying text output.
On H/PC, editor can handle large files.
Tweaked parenthesis balancer.
Replaced require-so with require-dll.
Retracted most nonstandard string procedures.
Inverse division of exact integer now yields an inexact,
since we don't support exact rationals.
Renamed all socket: procedures to tcp:.
Handle system exceptions, for more robust recovery from FFI errors.
New system/wait procedure.
More thorough error checking.
- 30 September 1999. Version 0.5.6.
Rewrote eval variable reference memoization to accommodate Schelog
(broken in 0.5.0).
New procedures expand-macro, expand-macro-1.
Default editor tabstop now 2.
Better hash function courtesy of Bob Jenkins.
- 1 September 1999. Version 0.5.5 (expires 31 December 1999).
Foreign function interface.
Bug fixes in raw vectors.
- 19 August 1999. Version 0.5.4: BETA 1 (expiration date relaxed).
Bug fix in current directory handling.
Editor tab handling changed.
- 16 August 1999. Version 0.5.3.
Bug fixes: eval side effects, command line parsing, stack overflow handling,
require, install-directory, library-directory.
- 6 August 1999. Version 0.5.2.
Bug fixes: equal? on similar strings, GC cannibalizing the environment,
premature partial evaluation of untaken branches in if clauses.
- 5 August 1999. Version 0.5.1.
Reduce consing on long iterative processes (a misfeature of 0.5.0).
Further performance improvements.
All mutator procs return void.
Read-only strings from certain procedures.
- 30 July 1999. Version 0.5.0 (expires 1 September 1999).
Major delta to evaluator, symbol manager, storage manager.
Evaluator caches lexical addresses of variables.
Storage manager maintains a monolithic cell address space.
Added gensym for safe macros.
Changed defmacro to define-macro.
Withdrew symbol-value, set-symbol-value!, symbol-bound?, apropos.
(Be sure to remove any previous version before installing this one.)
- 14 June 1999. Version 0.4.0 (expires 1 August 1999)
UI work: command history, pause command, improved input mode,
full screen usage during execution.
Changed command line switches.
Simplified script model.
Added socket:local-address, socket:remote-port, socket:local-port.
(Be sure to remove any previous version before installing this one.)
- 26 May 1999. Version 0.3.8.
Bug fix in socket support.
- 17 May 1999. Version 0.3.7.
Directory support: create-directory, delete-directory, current-directory
(emulated on CE).
Replaced opendir, readdir, closedir with directory-list.
Added w32:beep.
Eval, call/cc, apply call their procedure arguments as tail calls.
Some reader/loader cleanup.
Tweak UI to reduce the flashing-screen problem on certain models of H/PC.
- 3 May 1999. Version 0.3.6.
Much work on storage management, exception handling.
String ports made compliant with SRFI-6, Chez/Mz style.
New soft ports, similar to Chez.
Socket support now follows the Scsh model.
Changed regexp model.
Typed exceptions thrown for interpreter errors.
Extensive fixes throughout.
- 14 April 1999. Version 0.3.5.
Support big-endian Unicode text data.
Increase range of exact integers:
the maximum positive exact integer value is now #xFFFFFFFF.
Better exact versus inexact numerical discipline.
Corrections to number and character readers.
- 11 April 1999. Version 0.3.4.
Case-insensitive symbols.
Numeric comparisons of arity greater than two.
Hexadecimal character literal syntax.
Callstacks available upon errors via debug-stack-depth.
Remainder-of-list parameter in closure now assignable.
Fixed-pitch output available in UI.
Changes to SLIB initialization file.
- 8 April 1999. Version 0.3.3.
Defmacro made internal to interpreter.
Quasiquotation. Delayed evaluation.
Correct append function to comply with R4RS, improve performance.
- 6 April 1999. Version 0.3.2.
Inexact digit (hash character) notation.
Arrow syntax for cond form.
Defmacro emulation code added to SLIB initialization file. Defmacro.scm created.
- 5 April 1999. Version 0.3.1.
Fix heap corruption bug introduced in 0.3.0.
Evaluation window will accept multiple expressions.
Edit/Repeat command to repeat last evaluated expression.
- 31 March 1999. Version 0.3.0. (expires 1 July 1999).
Native Unicode character and string data.
Elide bdgstdio.dll component.
(Be sure to remove any previous version before installing this one.)
- 21 January 1999. Version 0.2.6. (expires 1 April 1999).
A couple of bug fixes. Clipboard text support added to w32
(w32:string->clipboard, w32:clipboard->string).
- 5 December 1998. Version 0.2.5. (expires 1 February 1999).
Bug fixes: open-output-file, misinteraction between SIOD macro hack
and the arithmetic procedures. Marginally better documentation.
- 1 December 1998. Version 0.2.4. Pre-Unicode stabilization release.
Binary I/O: the raw vector datatype.
Internal changes to evaluator and storage management.
Improvements in Unicode file handling for editor.
I/O changes.
Most SIOD subrs withdrawn or replaced.
Car, cdr of the empty list are now illegal, per the language standard.
- 7 October 1998. Version 0.2.3.
Dynamic-wind, char-ready?.
Exception handling: raise, current-exception-handler, with-handlers.
Current-error-port, open-input-string, open-output-string, reset, force-output.
Settable input, output, error ports.
Open mode flags for open-input-file, open-output-file.
Bug fixes: sign extensions, R4RS apply syntax, GC on continuations,
editor saving Unicode files, editor and interpreter interaction on load failures.
- 26 September 1998. Version 0.2.2.
R4RS compliant numeric constant syntax and I/O.
Correct scope of internal definition bindings.
Divide by zero checks for integer division procedures.
Fixes for non-ASCII characters in I/O and symbols.
- 10 September 1998. Version 0.2.1.
Full R4RS continuations. Cheap escaping continuations.
More bug fixes and standards violation corrections,
including a number that slipped through the cracks
in the rush to push out 0.2.0.
Pocket Scheme now passes the Jaffer R4RS compliance test,
allowing for its known deviations.
- 6 September 1998. Version 0.2.0. (expires 1 January 1999).
Internal component renaming.
(Be sure to remove any previous version before installing this one.)
R4RS I/O ports.
Many bug fixes and standards violation corrections.
- 3 August 1998. Version 0.1.11.
Bug fixes.
- 25 July 1998. Version 0.1.10.
More standards compliance work: partial numeric tower, named let form.
Fixnum integers.
Implement characters, Booleans, fixnums as immediate values for performance.
Fix bugs in 0.1.9 from destabilizing R4RS Boolean delta.
- 18 July 1998. Version 0.1.9.
R4RS quasi-compatibility: strings, chars, vectors, iteration forms,
integer math, IO procedures, Booleans.
- 13 July 1998. Version 0.1.8.
Released Pocket Scheme for the P/PC (Palm-sized PC).
Replaced Configure Pocket Scheme applet with Scheme/Configure menu command.
- 15 June 1998. Version 0.1.7.
Added R4RS car-cdr composite functions, case form.
Rearrange application menus. Relocate desktop shortcuts.
Pocket Scheme Editor: add block indent and unindent;
persistent tab stop settings; Find results visible while within dialog.
Added W32 extension library: getopenfilename, getsavefilename.
- 3 June 1998. Version 0.1.6. (expires 1 September 1998).
Added Pocket Scheme Editor.
Added grep.smd example script.
Differentiate between .scm source files and .smd script files.
Change opendir intrinsic to support optional wildcard, exclude-mask arguments.
Automagical prompt generation on stdin dialog.
Tune memory management to enable large heaps.
- 27 May 1998. Version 0.1.5.
Factor interpreter, stdio components into DLLs for reuse elsewhere.
Socket TCP/IP support through ss.dll;
regular expression support through regex.dll.
Getenv/putenv emulation via getenv.scm.
- 22 May 1998. Version 0.1.4. (expires 1 July 1998).
Performance improvement for MIPS version.
New setup and installation sequence.
Script support from Explorer.
- 15 May 1998. Version 0.1.3.
More UI work.
Paren balancing.
/m switch to call (main) in a script.
Else keyword for cond-clauses.
Help file.
Textfiles default to ANSI for Pocket Office compatibility.
File I/O bugfixes.
Buffered file I/O reads.
- 1 May 1998. Version 0.1.2.
UI changes. Fully implement cooked-mode I/O.
- 28 April 1998. Version 0.1.1. Second Alpha release
(expires 1 June 1998).
Added View menu.
Implemented Scheme/Break command.
Improved screen output performance.
Restored accidentally elided subrs.
Patched errobj usage.
Improved low-memory behavior.
Constrain stack usage to H/PC limits.
Prevent system lockup on interpreter thread crashes.
- 11 April 1998. Version 0.1.0. Initial Alpha release
(expires 1 May 1998).
Pure SIOD running within a window.
Other destinations
- Pocket Scheme
- Back to the Pocket Scheme page.
- Site Map
- Find your way around this site
Last modified: Sun Sep 24 15:59:20 Pacific Standard Time 2006
Ben Goetter (contact information)
Copyright 1998-2006, Ben Goetter.
All rights reserved.