Re: [stack] What does "concatenative" actually mean?

John Nowak <[email protected]>
Newsgroups gmane.comp.lang.concatenative
Message-ID <[email protected]>
On Mar 6, 2009, at 7:39 PM, Christopher Diggins wrote:

> On Fri, Mar 6, 2009 at 6:24 PM, John Nowak <[email protected]> wrote:
>
>> It's not a lambda. Quotation and lambdas have a similar use, but
>> they're not the same thing.
>
> In the context of Joy and Cat a quotation and a lambda is equivalent.

Equivalent in what sense? In the sense that they're used for similar  
reasons? That would be what I said. If not, what sort of equivalency  
are you talking about?

> When you evaluate an abstracted function, you get the function. This  
> is basic lambda calculus.

Except quotation does not have the variables of lambda calculus. There  
are no lambdas in a concatenative language. What we can do is describe  
quotation in terms of lambda calculus:

    \f. \s. cons f s

In other words, when quotation is applied to some function 'f', the  
result is a new function that, when applied to some stack 's', returns  
the result of consing 'f' onto 's'. This is all quotation is; nothing  
more, nothing less.

Claiming that quotation is "equivalent" to a lambda abstraction  
doesn't make a whole lot of sense with this understanding. The only  
thing that they have in common is that they're both used to create new  
functions.

- John
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.