cosmetics in disasm
[k8lst.git] / CHANGES
blob693967b80ed9fb3d850e78d54413b993cd48fb7f
1 important changes:
2   * new memory manager and GC
3   * image format changed
4   * fixed some serious bugs in image builder
5   * image source syntax changed
6   * PushBlock opcode changed: jump dest now follows by the number of temps in block
7   * number of instance/class vars in some objects changed; always use constants
8     from lst_interp.h or you'll find yourself in a big trouble
9   * added Process metamethods for sheduler control and locking
10   * added IfNil: ifNotNil: and corresponding branch opcodes
11   * added '&' and '|'
12   * compiler will optimize things like `c isNil ifTrue: [...]` to `c ifNil: [...]`
13   * compiler will optimize some numeric binary math and string concatenations
14   * compiler and VM allows assigning to method arguments
15   * fixed serious bug in compiler; blocks now can have locals with the same names as
16     surrounding block/method locals
17   * added sample of the preemptive process sheduler
18     (need to add the ability to 'wake up' processes from primitives,
19     so we can have queues, events, mutexes and other funny things)
20   * added GST-style source file parser
21   * added very basic module system
22   * packages implementation (for now it's usable only for information purposes)
23   * compiler will warn about name clashing (but not fail if it is not fatal)
24   * compiler will warn about missing dots (VERY nasty bug; i found some in image
25     sources due to this warning)
26   * process execution completely rewritten: it's not recursive now; this allows
27     assigning processes to event handlers and block returns across process
28     boundaries (wow!) -- see samples/alarm*.st, samples/yield.st
29   * Advanced Code Analyzer (hehe) which can inline simple getters and setters
30   * inlining of some frequency used methods