Path: csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!news.mixmin.net!eweka.nl!hq-usenetpeers.eweka.nl!border3.nntp.ams.giganews.com!Xl.tags.giganews.com!border1.nntp.ams.giganews.com!nntp.giganews.com!local2.nntp.ams.giganews.com!news.giganews.com.POSTED!not-for-mail NNTP-Posting-Date: Thu, 08 Nov 2012 10:39:00 -0600 From: Chris Hinsley Newsgroups: comp.lang.forth Date: Thu, 8 Nov 2012 16:39:00 +0000 Message-ID: <2012110816390087074-chrishinsley@gmailcom> References: <2012110713421835115-chrishinsley@gmailcom> <0185e315-1855-415d-b981-638e4a2dabe5@googlegroups.com> <2012110813141528599-chrishinsley@gmailcom> <2012110814024527964-chrishinsley@gmailcom> <2012110815354666733-chrishinsley@gmailcom> <2012110816241243818-chrishinsley@gmailcom> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: Genral advise and comments on callback style words User-Agent: Unison/2.1.9 Lines: 50 X-Usenet-Provider: http://www.giganews.com X-Trace: sv3-4TTYd8xh6YuX4/WE/1EuLHObb1U7Z0fe0p8Kzt12hYYNS5zWLNKZPOHlQIvveJP8izVqgeY1EpWK0W6!Ljc4PAZCXGZcTX7QpzAH4NrdEyaG3BVU3Aek6o87EVOQWnwwFA/1FOvsGDXp9Zt5R7rBcB8= X-Complaints-To: abuse@giganews.com X-DMCA-Notifications: http://www.giganews.com/info/dmca.html X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.40 X-Original-Bytes: 2206 Xref: csiph.com comp.lang.forth:17167 On 2012-11-08 16:24:12 +0000, Chris Hinsley said: > \ ( u xt lh -- r | 0 ) > \ xt api is ( u ln lh -- r | 0 ) > : LISTHEAD-ENUMERATE-FORWARDS > DUP LISTHEAD-GET-HEAD > BEGIN > DUP LISTNODE-GET-SUCC DUP > WHILE > 4 PICK ROT 3 PICK > 5 PICK EXECUTE ?DUP > UNTIL THEN > 2NIP 2NIP > ; > > Chris What that turns into after my >FIELD words does its magic is: \ ( u xt lh -- r | 0 ) \ xt api is ( u ln lh -- r | 0 ) : LISTHEAD-ENUMERATE-FORWARDS DUP ! BEGIN DUP ! DUP WHILE 4 PICK ROT 3 PICK 5 PICK EXECUTE ?DUP UNTIL THEN 2NIP 2NIP ; And there's a possible arguement now for: \ ( u xt lh -- r | 0 ) \ xt api is ( u ln lh -- r | 0 ) : LISTHEAD-ENUMERATE-FORWARDS 2DUP SWAP 2>R DUP ! BEGIN DUP ! DUP WHILE 4 PICK ROT 2R@ EXECUTE ?DUP UNTIL THEN 2NIP 2NIP 2RDROP ; Chris