retroforth/RELEASE-NOTES
crc e75986617f update release notes
FossilOrigin-Name: 2bc39ac6ef356612cf2298783eeea7d84f7bbebf67c6692b253a396b5e0efade
2020-04-29 11:33:32 +00:00

210 lines
9.3 KiB
Text

# RETRO 2020.4
This release fixes a couple of bugs, and makes a lot of improvements
to the standard library, using inline assembly to enhance performance
and reduce size.
A few of the larger changes:
- bug fixes
- removed an incorrect header stub from rx.muri
- fixed bug in s:index-of-string
- improvements
- lots of size reductions
- increased use of hand packed assembly in the stdlib
- removed numerous variables
- faster performance in rewritten words in the stdlib
- remove deprecated words
- as{ }as " prefix:"
- examplse
- markdown.retro
- future
underscores in word names
Prior RETRO images had a patch that allowed underscores to be
used in word names. In this release, the patch is no longer
part of the standard library, but is still included on Unix
targets by default. This might affect some users, if you are
building a custom image, load package/allow-underscores-in-names.forth
if you need this. This will no longer be loaded by default after
the 2020.4 release.
modularity
Work towards allowing portions of the standard library to be
optional is ongoing. During this, the internal organization of
retro.forth is changing and some small parts may be duplicated
in an effort to allow for more flexibility in the long term.
Full Changelog:
=== 2020-04-20 ===
15:08:45 [64838647dd] add new sections to documentation (user: crc tags: trunk)
=== 2020-04-14 ===
18:00:02 [320b451250] small update to js implementation (user: crc tags: trunk)
=== 2020-04-11 ===
19:53:20 [45eb321e8e] new example (user: crc tags: trunk)
=== 2020-03-11 ===
19:34:10 [0ae9fc6c65] more tests for words in rx (6 remain w/o tests) (user:
crc tags: trunk)
18:42:39 [ba14795dce] begin work on a better set of tests for words in the rx
kernel (user: crc tags: trunk)
=== 2020-03-10 ===
13:56:56 [bddc212320] some css and layout experiments w/the javascript version
(user: crc tags: trunk)
=== 2020-03-06 ===
21:35:23 [361317baea] retro.forth: revert s:contains-string? due to bugs (user:
crc tags: trunk)
=== 2020-03-04 ===
14:48:18 [57d87b1a42] more bugfixes (user: crc tags: trunk)
=== 2020-03-03 ===
15:35:08 [4b3dc5d5df] retro.forth: fix bug in s:split-on-string (user: crc
tags: trunk)
00:23:11 [5309d39780] fix s:contains-string? bug (user: crc tags: trunk)
=== 2020-03-02 ===
21:49:51 [542a1fd386] add instruction values in invalid instruction reporting
(user: crc tags: trunk)
=== 2020-02-29 ===
15:50:19 [13f0507b61] retro/native: work on the ata driver (user configurable
read/write delays, name the I/O ports used, start refactoring) (user:
crc tags: trunk)
=== 2020-02-25 ===
13:19:31 [9e725bb5fc] retro.forth: smaller `s:for-each` (user: crc tags: trunk)
13:05:17 [569afc46e6] retro.forth: smaller `s:index-of` (user: crc tags: trunk)
=== 2020-02-21 ===
20:58:11 [9a81e5658c] html formatter: a patch to allow escaping formatting
characters (user: crc tags: trunk)
20:48:40 [8ccada3f41] html export: fix another small bug (user: crc tags: trunk)
20:15:55 [14bdad7b70] html export: note where the css colors came from (user:
crc tags: trunk)
20:03:50 [78eb3332d9] html export: fix crash on # with no spaces following
(user: crc tags: trunk)
19:59:25 [3547ab30d1] html export: fix crash on # with no spaces following
(user: crc tags: trunk)
19:47:00 [b3c8281fa5] updates to the examples, better html exports now working
(user: crc tags: trunk)
19:44:33 [67b765255e] updates to the examples, better html exports now working
(user: crc tags: trunk)
=== 2020-02-20 ===
20:48:29 [4b087b4d34] examples: rename a word to make an example a little
clearer (user: crc tags: trunk)
20:28:48 [9ec683cd98] fix some references to the old end instruction (now
called halt) (user: crc tags: trunk)
=== 2020-02-18 ===
14:44:31 [6e0142ac02] example: local variables (user: crc tags: trunk)
=== 2020-02-17 ===
18:12:09 [e48d7c1f28] retro-unix: builds under Haiku now (user: crc tags: trunk)
=== 2020-02-14 ===
21:36:21 [26dee89795] copyright year = 2020 (user: crc tags: trunk)
04:22:08 [3d9915d3e6] examples: update css for html export (user: crc tags:
trunk)
=== 2020-02-13 ===
18:59:34 [845b3243f3] rx: remove an unused, broken dictionary entry (user: crc
tags: trunk)
17:51:47 [3de9369294] examples: remove a use of as{ }as (user: crc tags: trunk)
17:49:56 [82fdcae8b5] retro.forth: smaller `var` (user: crc tags: trunk)
17:43:06 [3273eb2054] retro.forth: use assembly w/`dump-stack`, more comments
(user: crc tags: trunk)
13:50:20 [561a9c1ff2] retro.forth: refactor a bit of common code to save some
size (user: crc tags: trunk)
13:43:52 [a754653708] retro.forth: fix a bug in s:index-of-string (user: crc
tags: trunk)
13:41:01 [1daa20ac3a] retro.forth: remove use of a variable in io:scan-for
(user: crc tags: trunk)
13:33:57 [de906e8e01] retro.forth: rewrite `s:index-of-string` and `s:contains-
string?` to eliminate use of variables (user: crc tags: trunk)
=== 2020-02-12 ===
21:36:49 [81de60c778] retro.forth: rewrite `a:index-of` and `a:index-of-
string`, removing a variable and making them much shorter (user: crc
tags: trunk)
20:33:18 [ab9b2d9804] retro.forth: more improvements (user: crc tags: trunk)
20:10:22 [2856c733ff] retro.forth: even smaller `a:append` (user: crc tags:
trunk)
20:08:04 [ddadcd3feb] retro.forth: smaller, cleaner `a:append`, `a:prepend`
(user: crc tags: trunk)
19:54:14 [2853b4bba6] retro.forth: remove a variable from `a:for-each`, use
asseembly in the implementation (user: crc tags: trunk)
16:04:37 [86fe6967af] image: reduce overall size, use ASCII: names in listener
(user: crc tags: trunk)
15:52:26 [01d22fa771] retro.forth: more use of inline assembly (user: crc tags:
trunk)
15:40:53 [5e0f9b6d52] retro.forth: remove an unneeded `s:temp` from `n:to-
string` (user: crc tags: trunk)
15:38:56 [5857cab82d] retro.forth: remove a variable from `n:to-string` (user:
crc tags: trunk)
15:35:58 [68dda770df] retro.forth: use inline assembly in `s:hash` (user: crc
tags: trunk)
15:20:32 [29522cc3ae] retro.forth: more optimizations (`s:tokenize-on-string`,
`s:trim-left`) (user: crc tags: trunk)
15:10:23 [257bbb942c] retro.forth: more use of inline assembly (user: crc tags:
trunk)
15:00:47 [bd0394df6f] retro.forth: smaller `s:format` (user: crc tags: trunk)
14:50:49 [2a4b7960e3] book: formatting fixes, cleanups (user: crc tags: trunk)
14:50:31 [82c73ae0bf] retro.forth: reduce size of `s:evaluate` (user: crc tags:
trunk)
12:58:06 [16c95236d7] book: add tech notes on underscores in names (user: crc
tags: trunk)
=== 2020-02-11 ===
22:06:12 [1ccfe19cb6] retro.forth: inline assembly in a bunch of words (user:
crc tags: trunk)
21:36:16 [ad35a890a5] retro.forth: smaller a:index-of, a:index-of-string (user:
crc tags: trunk)
21:32:04 [2a36f41911] retro.forth: more readable a:append (user: crc tags:
trunk)
21:18:34 [7e24bacd48] retro.forth: minor reorganizations (user: crc tags: trunk)
21:13:58 [0aa751dedd] retro.forth: minor reorganizations (user: crc tags: trunk)
21:10:51 [72c0f243d4] retro.forth: smaller, faster lteq? (user: crc tags: trunk)
21:09:12 [3e0f071e10] retro.forth: smaller gteq? (user: crc tags: trunk)
20:56:34 [7e123ff0f8] move patch to allow underscores in names out of the
standard library (still enabled by default on unix targets; see
package/list.forth and the release notes) (user: crc tags: trunk)
20:50:08 [e36dc2e6be] retro.forth: split common ASCII: words to start of the
namespace (user: crc tags: trunk)
20:49:27 [abc29c592c] examples: mandlebrot: remove use of _ in word names
(user: crc tags: trunk)
20:15:35 [0aff09c9fa] retro.forth: move s:tokenize-on-string, s:replace-all to
be grouped with other string words, no longer needs a: words defined
first (user: crc tags: trunk)
19:53:00 [fd1eaac8ef] remove all uses of `reorder` in stdlib (user: crc tags:
trunk)
19:30:14 [20149d1819] example updates (user: crc tags: trunk)
=== 2020-02-05 ===
21:19:11 [7893ebea94] docs: expand notes on the toolchain (user: crc tags:
trunk)
=== 2020-02-03 ===
16:04:26 [9fa114fa72] document the new a:index-of-string word (user: crc tags:
trunk)
15:46:52 [4c3c9e631d] retro-unix: refactor file:slurp to remove a variable
(user: crc tags: trunk)
15:46:20 [67e61ed225] retro.forth: add a:index-of-string (user: crc tags: trunk)
=== 2020-01-27 ===
14:34:58 [256a802203] example: adding c style comments (user: crc tags: trunk)
=== 2020-01-24 ===
16:01:30 [f29878d25d] interpret can now be patched via set-hook (user: crc
tags: trunk)
=== 2020-01-22 ===
15:23:25 [347736f9e0] security: add signing keys for 2020.5, 2020.6, 2020.7,
remove key for 2020.1 (user: crc tags: trunk)
15:20:57 [2db7a3c6d3] book: add some notes on deprecation policy (user: crc
tags: trunk)
=== 2020-01-21 ===
12:58:06 [29a9b00f47] retro-unu: add -t support to command line (user: crc
tags: trunk)
=== 2020-01-15 ===
18:32:55 [d893f1fc40] new example: markdown (subset) to html (user: crc tags:
trunk)
13:50:04 [ffe0c04cb9] work on 2020.4 begins: remove words deprecated by 2020.1
(user: crc tags: trunk)