Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!weretis.net!feeder4.news.weretis.net!news.mixmin.net!aioe.org!.POSTED!not-for-mail From: "Rod Pemberton" Newsgroups: comp.lang.forth Subject: Re: Static Single Assignment form to Stack allocation Date: Thu, 12 Feb 2015 20:02:25 -0500 Organization: Aioe.org NNTP Server Lines: 38 Message-ID: References: <82c4c3dc-7692-4d03-a447-9bdd54ff9387@googlegroups.com> <2015Feb6.142225@mips.complang.tuwien.ac.at> <26b59aed-f1a6-4ccb-90ad-69c36b1abb89@googlegroups.com> <855de363-e01a-44fb-b8cb-afcae56af8cb@googlegroups.com> NNTP-Posting-Host: n4wpt9zq8xR26Ttf9mo2BA.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Opera Mail/12.16 (Linux) X-Notice: Filtered by postfilter v. 0.8.2 Xref: csiph.com comp.lang.forth:36524 On Wed, 11 Feb 2015 04:35:55 -0500, Alex McDonald wrote: > You're confusing compile time with run time. This has > been a consistent theme in discussions about the > placement of the control flow stack; ... > Rod Pemberton suffers from this confusion too. The only point of confusion here was that I was using the computer science definition for control flow while some others here were using a Forth specific definition which differed. Fortunately, Ms. Rather just clarified in one her posts here that for Forth control flow is just the control flow used in Forth's control flow words, such as IF ELSE THEN DO LOOP etc. These only store data temporarily at compile time on the data stack, storing any permanent data in the dictionary definition for that compiled Forth word. Unfortunately, the Forth specific definition excludes the most common form of control flow used by Forth: data saved on the return stack for interpreted Forths. That is run time control flow data used to keep track of the nesting position of compiled Forth words so they can be interpreted. This data is the used to implement the threaded code equivalent of a procedure call, which is normally considered to be control flow. Forth not using standard computer science terminology has been a point of contention, not just by me, but with many others who've attempted to understand or develop Forth. Rod Pemberton