ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/microscheme/Changes
Revision: 1.3
Committed: Sat Nov 28 06:16:19 2015 UTC (8 years, 7 months ago) by root
Branch: MAIN
Changes since 1.2: +1 -2 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1
2     - major size optimisations
3     - struct layout for both typical CISC and RISC cpus.
4     - optional error messages.
5     - optional error checking.
6 root 1.3 - cell size reduced by not storing both float and int forms of a number,
7 root 1.1 - major dependency optimisations (no stdio etc.)
8 root 1.2 - faster and vastly simpler vector memory management (execution speed
9     is roughly twice faster than tinyscheme when optimised for size, and 2.5
10     times faster when optimised for speed).
11 root 1.1 - no need for consecutive cells
12     - more compact and faster vectors.
13     - resizable vectors (TODO)
14     - simpler cell memory management, only one block
15     - much faster call stack implementation, fully supporting continuations,
16     while greatly reducing cell thrashing, thus fewer gc's and overall
17     much faster execution.
18     - allow full 32 bit size range for strings and vectors.
19     - made ports optional.
20     - made error checking and error strings optional.
21     - ripped out features: dynamic loading, nonstandard C targets.
22     - fix numerous ISO C violations (mostly _ namespace).
23     - fix numerous uninitialised value violations.
24     - fix some bufer overflows (mostly relying on _sprintf terminating with 0).
25     - fix numerous sign/truncation problems.
26     - remove limit of 65535 args maximum.
27     - move ~5kb opcode table into read-only segemnt, saves 5kb rss.
28     - reduce ~5kb opcode table to 1.2kb.
29     - subnormals are no longer flushed to zero in some comparisons.
30    
31     TODO: atom names starting with dot cannot currently be parsed due to a tinyscheme bug.
32