Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!news-1.dfn.de!news.dfn.de!fu-berlin.de!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail Newsgroups: comp.lang.forth Subject: Re: WORDS reversed References: <51cf2832$0$6336$e4fe514c@dreader35.news.xs4all.nl> From: Lars Brinkhoff Organization: nocrew Date: Wed, 03 Jul 2013 09:36:16 +0200 Message-ID: <851u7gnlhr.fsf@junk.nocrew.org> User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1 (gnu/linux) Cancel-Lock: sha1:Wp47riRVQjZbvF0QPbIWmx6RwnQ= MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Lines: 11 NNTP-Posting-Host: 85.229.87.73 X-Trace: news.sunsite.dk DXC=[f_neLl\755@g6i]76MRQ6YSB=nbEKnk;N\2JKAYfCj8nY:6X7^ZBN7I57e>YZ9SO;i6C];H\kJ`95oU@eTA=?M00g:f I have reversed the order in which WORDS lists since ages. > Provided your stack is large enough (desktop systems), > it is easily accomplished by [edited for brevity] > : WORDS 0 CONTEXT @ BEGIN >LFA @ DUP DUP 0= UNTIL 2DROP > BEGIN DUP WHILE ID. REPEAT DROP ; Is your return stack large too? : (words) ?dup if dup >lfa @ recurse id. then ; : words context @ (words) ;