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

spir <[email protected]>
Newsgroups gmane.comp.lang.concatenative
Message-ID <20090306091942.656428a4@o>
Le Thu, 05 Mar 2009 15:16:55 -0800,
William Tanksley <[email protected]> s'exprima ainsi:

> > Really? Does quotation not violate this?  
> 
> That's fair to ask... I'm not sure whether quotation is an "operation"
> as such. I think it's a very academic question, since I think
> "compositional" is of only pedagogical value.

I would say that quotation is one aspect, or level, or kind, of meta-programming. It's taking a bit of program as object of the programitself, meaning as data. Like meta-linguistics [thus the term 'quotation' indeed (note that that is a quotation, and this is meta-linguistic discourse, too, and... ;-)]:

	<<"'Joke' has 3 phonemes and 4 letters.", she said.>>

From this point of view, quotations, or similar tools, are not the same as plain programming where the raw materials are 'real' data only. And is afaik pretty rare in practice outside the field of stack-based/concatenative languages.
Can a concatenative language live without quotations? In joy quotations are the materials of combinators, hence the answer seems to be no.

There is something I do not understand. It seems that literal code and word names inside quoting marks are both called quotations:

	[1 2 3] [dup *] map

	:square dup *
	[1 2 3] [square] map

Isn't there a worthful distinction here? The second version seems analog to first-class funcs. The first one looks a bit like lambdas, no ? Or is it really taking code "flesh" as data? Or code as data only really happens when one can tweaks its guts like in Lisp?
Could a language like Joy live with only the second form? Wouldn't it even be good practice (--> factorization).

denis
------
la vita e estrany
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.