Re: [stack] disallowing recursive definitions
"William Tanksley, Jr" <[email protected]>
| Newsgroups | gmane.comp.lang.concatenative |
|---|---|
| Message-ID | <[email protected]> |
John Nowak <[email protected]> wrote: > William Tanksley, Jr wrote: > > John Nowak <[email protected]> wrote: > >> Indeed, and I'd argue that this is exactly why many people find > >> stack- > >> based languages universally problematic. They're taking issue with > >> all > >> of this state passing, although they phrase it like "I can't keep the > >> stack in my head". Of course this isn't a problem in practice, > >> particularly when you have type inference involved and can get a > >> quick > >> summary of what a function cares about, but it does seem to be the > >> source of many negative first impressions. > > Now we're treading on the marshy ground of subjective judgments... I > > don't think we're going to resolve this in this manner. > Resolve what? Are you talking to the right John? I'm responding to your message, so I guess so -- I meant that I disagree that this is the cause of people's discomfort, and also that I disagreed that it was related to any trouble with tail-calls or recursion. However, after a good 5 minutes of digging, I found the source of our confusion. I DID mix up my mind when referring to you two back when you (Nowak) said that the entire state is passed through the tail-call, and he (Cowan) said "No. All you do is do an arbitrary stack shuffle before the tail call." I agree with the facts of what you said, Nowak (although I don't agree that this makes concatenative languages "the ultimate GOTO", which seems to be the implication of what you wrote), and I disagree with you, Cowan, that performing an arbitrary stack shuffle complicates the analysis of the tail-call. > > Let me quote you: "No. All you do is do an arbitrary stack shuffle > > before the tail call." > Ah, now I'm sure you have the wrong John. I'm Mr. Nowak, he's Mr. Cowan. Ah! Man, that WAS confusing. Sorry about that -- my fault. > - John -Wm