RfD: EKEY Event Record

4 views
Skip to first unread message

Peter Knaggs

unread,
Feb 23, 2010, 8:57:25 PM2/23/10
to fort...@yahoogroups.com
RfD: EKEY Event Record
======================

2010-02-24 Minor revisions
2009-09-03 Separated from KEY/EKEY proposal.
2009-03-31 Original Text


Problem
=======

The rationale for EKEY allows for an "event record" being returned
but the word has a signature of ( -- u ) which forbids the address of
such a record being returned.


Solution
========

Correct the stack signature of EKEY to ( -- x ) in order to allow an
address to be returned. The stack descriptions of both EKEY>CHAR and
EKEY>FKEY must also be changed to allow them to accept an address (x)
rather than a value (u).


Proposal
========

1. Replace u with x in the definition of 10.6.2.1305 EKEY.
( -- u ) becomes ( -- x )


2. Replace the u with x in the definition of 10.6.2.1306
EKEY>CHAR. ( u -- u false | char true ) becomes
( x -- x false | char true ).


3. Change the definition of 10.6.2.xxxx EKEY>FKEY from
( u1 -- u2 f ) to ( x -- u flag ).


4. Define the lifetime of the "event record" by adding the following
to the definition of 10.6.2.1305 EKEY:

x is valid until the next call to EKEY or EKEY?.


Author
======
Peter Knaggs <p...@bcs.org.uk>
School of Engineering, Mathematics and Physical Sciences,
University of Exeter, Exeter, Devon EX4 7QF, England

Reply all
Reply to author
Forward
0 new messages