retroforth/RELEASE-NOTES
crc b6a81359e6 add pack and unpack
FossilOrigin-Name: 459d61941f93a2373c3ac1e18c9100cc17b4e724996723cdf0090c7605af5bb9
2021-06-24 13:38:10 +00:00

123 lines
2.6 KiB
Text

# RetroForth 2021.7 (In-Progress) Release Notes
## Core Language
## Major Changes
- address 5 is now a pointer to `interpret`
- address 6 is now a pointor to `err:notfound`
- address 7 now points to TIB
- address 8 points to end of TIB
## Added
- `c:get` to retro.forth
- `s:get` to retro.forth
- `listen` to retro.forth
- `bye` to retro.forth
- added `Base`
- added `decimal`
- added `hex`
- added `octal`
- added `binary`
- added `forever`
- added `pack`
- added `unpack`
## Renamed
- `s:split/string` replaces `s:split-on-string`
- `s:split/char` replaces `s:split`
- `s:contains/char?` replaces `s:contains-char?`
- `s:contains/string?` replaces `s:contains-string?`
- `a:contains/string?` replaces `a:contains-string?`
- `a:index` replaces `a:index-of`
- `a:index/string` replaces `a:index-of-string`
- `s:index/char` replaces `s:index-of`
- `s:index/string` replaces `s:index-of-string`
## Deprecated
- `s:split-on-string`
- `s:split`
- `s:contains-char?`
- `s:contains-string?`
- `a:contains-string?`
- `a:index-of`
- `a:index-of-string`
- `s:index-of`
- `s:index-of-string`
## Hooks
- `d:create` is now a hook
- `sigil::` is now a hook
## Performance
- use inline assembly for `n:inc` and `n:dec`
## I/O
- floating point
- increased precision of `f:E` and `f:PI` (Kiyoshi)
- retro-unix
- fixed reporting of free, used memory on startup banner
## Toolchain
- fixed a bug in retro-document causing it to exclude sigils
## VM
- all
- no longer hard code TIB address (pull from image instead)
- nga-c
- retro.c no longer does dictionary searches to find
needed resources in image
- shift instruction no longer using an unneeded multiply
(Arland Childers)
- retro-repl.c now uses an external image
- removed barebones.c (overlaps w/new retro-repl.c)
- retro-runtime.c now based on standard retro.c
- changed behavior of -t command line argument (Rick)
- fixed a bug in `script:current-line`
- nga-c (non-libc)
- updated to base on latest repl
- now supports openbsd/amd64
- nga-cxx
- initial implmemtation from Arland Childers
- nga-nim
- fix bug in VM_SH
- minor formatting adjustments
- start work to report some errors
## Examples
- add archive, archive-info, archive-extract
- add delete-file
- variables-and-formulas now in UTF8 (Marcus Antonius)
## Documentation
- removed references to old command line arguments
- removed reference to the no longer existing "ok" prompt
- add a note that mentions that Retro does not display a prompt
- fixed typos (rick_carlino)
- clarifications around device terminology
## Testing
- add small test images for each instruction