Annotation of gforth/NEWS, revision 1.8
1.8 ! anton 1: User-visible changes between 0.4.0 and 0.5.0:
! 2:
! 3: Changes in behaviour:
! 4:
! 5: There are now two engines: the fast engine (gforth-fast) is at least
! 6: as fast as gforth in earlier releases; the debugging engine (gforth)
! 7: supports precise backtracing for signals (e.g., illegal memory
! 8: access), but is slower by a factor of 1-2.
! 9: Block files now start at block 0 by default (instead of block 1). If
! 10: you have block files around, prepend 1024 bytes to convert them, or
! 11: do a "1 OFFSET !" to establish the old behaviour.
! 12: Gforth now does not translate newlines to LFs on reading. Instead,
! 13: READ-LINE now interprets LF, CR, and CRLF as newlines. Newlines on
! 14: output are in the OSs favourite format.
! 15: SEE now disassembles primitives (or hex-DUMPs the code if no
! 16: disassembler is available).
! 17: >HEAD (aka >NAME) now returns 0 (instead of the nt of ???) on failure.
! 18: Syntax of prim changed: stack effects are now surrounded by
! 19: parentheses, tabs are insignificant.
! 20:
! 21: Operating environment:
! 22:
! 23: Gforth now produces a backtrace when catching an exception.
! 24: On platforms supporting the Unix 98 SA_SIGINFO semantics, you get more
! 25: precise error reports for SIGSEGV and SIGFPE (e.g., "stack
! 26: underflow" instead of "Invalid memory address").
! 27: Gforth now produces exit code 1 if there is an error (i.e., an
! 28: uncaught THROW) in batch processing.
! 29: You can use "gforthmi --application ..." to build an image that
! 30: processes the whole command-line when invoked directly (instead of
! 31: through gforth -i).
! 32:
! 33: Ports:
! 34:
! 35: AIX.
! 36: 20% speedup on 604e under powerpc-unknown-linux-gnu,
! 37: 19%-29% speedup on Celeron with gcc-2.95.
! 38:
! 39: New words:
! 40:
! 41: Missing ANS Forth words: EKEY EKEY? EKEY>CHAR
! 42: Timing words: CPUTIME UTIME
! 43: Vector arithmetic: V* FAXPY
! 44: FP comparison: F~ABS F~REL
! 45: Deferred words: <IS> [IS]
! 46: Nested number output: <<# #>>
! 47: Exception handling: TRY RECOVER ENDTRY
! 48: Directory handling: OPEN-DIR READ-DIR CLOSE-DIR FILENAME-MATCH
! 49: Other: ]L PUSH-ORDER
! 50:
! 51: Miscellaneous:
! 52:
! 53: Significant extensions to the manual (added an introduction, among
! 54: other things), many of them due to a new team member: Neal Crook.
! 55: Added assemblers and disassemblers for 386, Alpha, MIPS (thanks to
! 56: contributions by Andrew McKewan, Bernd Thallner, and Christian
! 57: Pirker). Contributions of assemblers and disassemblers for other
! 58: architectures are welcome.
! 59:
! 60:
1.6 anton 61: User-visible changes between 0.3.0 and 0.4.0:
62:
63: Operating environment:
64:
65: Path handling: "." at the start of the path represents the directory
66: the nearest enclosing file resides in (if there is none: the working
67: directory). "~+" indicates the working directory. The default path
68: now has "." in front.
69: gforth and gforthmi is now more GNU standards compliant (wrt
70: command-line options).
71: New command-line-option: --die-on-signal
72: Errors are now directed to stderr.
73: Stdout is now unbuffered, if it is a tty.
74: User input device redirection (for filters) is now possible.
75:
76: Ports:
77:
78: Now runs on IRIX (and other MIPS-based systems without linker-flag -d).
79: Direct threading now works on PowerPC (20% speedup on 604e).
80: Better support for m68k (thanks to Andreas Schwab and Jorge Acereda).
81: It is possible to create executables that contain the image (for
82: non-OS systems).
1.7 pazsan 83:
84: Added a lot of embedded control (EC) stuff. Supported controllers and
85: small CPUs are Siemens C16x, 8086, 6502, Mixed-Mode's FPGA MISC, Bernd Paysan's
86: 4stack processor. Not finished: ShBoom alias PSC1000, H8, AVR.
1.6 anton 87:
88: New, changed, and removed words:
89:
90: Renamed F0 to FP0 (avoids unexpected behaviour in hex), added aliases
91: SP0, RP0, LP0 (recommended for future use) for S0, R0, L0.
92: Renamed PARSE-WORD into SWORD (PARSE-WORD is used with the meaning of
93: NAME in OpenBoot and dpans6 A.6.2.2008)
94: Added FPICK (suggested by Julian Noble).
95: Added EXCEPTION.
96: S" gforth" ENVIRONMENT? now produces the version-string.
97: Changed representation of types in struct package, and correspondingly
98: changed names.
99:
100: Miscellaneous:
101:
102: Plain text documentation is now available in doc/gforth.txt.
103: Documentation improvements.
104: Wordlist structure changed.
105: Added mini-oof.
106: Reorganized files: added directories and reorganized many files into
107: them; renamed files into 8.3 format to work with completely broken
108: systems (but there are again some files that won't work there).
109: Bug fixes.
110: Various changes without log information only known as mega-patches.
1.7 pazsan 111: Cross compiler now also supports compilation only for undefined or forward
112: referenced words. Plugins to support some native code generation
113: (for PSC1000).
1.6 anton 114: More files in the compat library.
115:
116:
117:
1.5 anton 118: User-visible changes between 0.2.1 and 0.3.0:
119:
120: Stack overflow detection by memory protection on most systems
121: (allocation with mmap).
122: gforth.fi is now fully relocatable.
123: fully relocatable images are now easier to create.
124: added primitives K and UNDER+.
125: Win32 support.
126: Improved support for embedded controllers and other deprived environments.
127: some bug fixes.
128: added concept index; other documentation improvements.
129:
1.6 anton 130:
131:
1.5 anton 132: User-visible changes between 0.2.0 and 0.2.1:
1.4 anton 133:
134: Bug fixes
135:
1.6 anton 136:
137:
1.5 anton 138: User-visible changes between 0.1beta and 0.2.0:
1.1 anton 139:
1.3 anton 140: Portability and Installation:
141:
1.1 anton 142: Support architectures with buggy long longs (alpha-dec-osf).
1.3 anton 143: Better support for DOS and other non-Unix systems.
1.1 anton 144: Size changes through the command line are passed to the image (and
145: saved with savesystem); the preamble specifies an interpreter and is
146: propagated by save-system.
1.3 anton 147:
148: Tools:
149:
150: Improved etags support.
151: more.fs allows output paging.
152: Added compat/ directory containing ANS implementations of Gforth features.
153: Added tiny multitasker (tasker.fs).
154: Added two alternatives for object-oriented programming: oof.fs, objects.fs.
155: Added ans-report.fs (reports which words are used from which wordset).
156:
157: New words:
158:
159: Changed POPEN and PCLOSE to OPEN-PIPE and CLOSE-PIPE.
160: Added FORM, ROWS, and COLS.
161: added primitives EMIT-FILE, STDOUT, STDERR.
162: Added TABLEs (case-sensitive wordlists).
163: added POSTPONE,.
164: Added the ability to combine arbitrary interpretation and compilation
165: semantics (INTERPRET/COMPILE:); state-smart words were generally
166: rewritten to use that mechanism.
167:
168: Changes to existing words:
169:
170: EMIT and TYPE now work through file words (and are redirectable).
1.1 anton 171: HEADER now stores the compilation wordlist in the header and REVEAL
172: reveals into that wordlist.
1.3 anton 173: changed behaviour of SYSTEM (no longer returns wretval, but puts it in
174: $?) added (SYSTEM) ( c_addr u -- wretval wior ).
1.1 anton 175: ' and ['] now give an error for compile-only words.
1.3 anton 176:
1.6 anton 177:
178: % Local Variables:
179: % fill-prefix: " "
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>