6.1.2

From RevaWiki

Jump to: navigation, search

Reva version 6.1.2 from Nov 14, 2006
Download it and and its GPG signature
The MD5 signature is: 192ba9c2899ed0df2dd9db5825f63d57


Go to the Reva forum
Report Reva bugs


This release has a different dictionary and XT layout from previous versions; therefore it is smaller and faster (depending on usage). "create/does>" generates words which are much faster (there are new classes for "create" words and for words which use "does>"), and the data are aligned (makes a huge difference on AMD processors!)

The size of the word is no longer stored before the XT, nor is a pointer to the dictionary there. This makes the code for "fallthrough" words much faster, but makes determining the word an XT points to a bit iffy. This involved changing the way the debugger figures out the name of a word.

The word inline has been removed, and replaced with ;inline. The code for an ;inline word is stored in the dictionary rather than the code-space, and is copied in-place as needed.

Some other performance tweaks have been done, but nothing as wide-reaching as the above changes.

onstartup and onexit have been modified so that there are no limits on how many handlers may be used.

Contents

BUGS FIXED

  • bug #197 0drop; not same as "0if drop ;then" .
  • bug #201 >double and >single don't work 'as advertised'.
  • bug #204 put doesn't 'put out'
  • bug #205 ?do executes once for negative argument .
  • bug #206 "see" of some deferred words does not show jump target .
  • bug #207 Please consider a new x:
  • bug #210 a tiny documentation error to be dealt with

WORDS

new 
;inline 'create 'does -link
modified 
onstartup onexit
removed 
inline >size dodoes 'context 'alias

EXAMPLES

  • Updated "map.f" to print a sorted list, by XT, of all the words, nicely formatted

MISC

  • Modified "bench/bench.f" so it also times "create/does>" words
  • Added "bin/inline.f" to document inline words and to help create them

LIBRARY

KNOWN ISSUES

  • 'util/disasm' changes the context order and I don't know why

PATCHES

  • 6.1.2.a - Patch for the help file
  • 6.1.2.b - Make "lib/choices" work
  • 6.1.2.c - Make "lib/alg/structs" and "lib/net/cgi" work
  • 6.1.2.d - Fix tick
Personal tools