[stack] Re: the concatenative wikipedia article

Adam <[email protected]>
Newsgroups gmane.comp.lang.concatenative
Message-ID <[email protected]>
Slava recently created a nice description of Concatenative languages
in the following four articles:

http://www.concatenative.org/wiki/view/Concatenative%20language

http://www.concatenative.org/wiki/view/Concatenative%20language/Name%20code%20not%20values

http://www.concatenative.org/wiki/view/Concatenative%20language/Multiple%20return%20values

http://www.concatenative.org/wiki/view/Concatenative%20language/Concatenation%20is%20composition

-Adam

--- In [email protected], John Nowak <john@...> wrote:
>
> The Wikipedia article on concatenative languages has a number of
> issues that I think should be addressed. I'm willing to make the
> changes, but I'd like to make sure I'm not off-base first.
>
> I realize many of these concerns are rather tired at this point. I
> apologize. However, that doesn't change the fact that they've gone
> unresolved. Indeed, there seems to be almost a resistance to resolving
> them. I personally think that the non-applicative style of programming
> has important properties and that it would be great to have a term for
> them so I could stop redefining "concatenative" every time I talk to
> someone (including those knowledgeable about concatenative languages).
>
> Here are my issues with the article:
>
> 1. Concatenative should not be conflated with "stack-based". I have
> already shown that the counter-examples are beyond mere curiosities.
>
> 2. It should be more clearly stressed that concatenative languages are
> not applicative. The reduction of a concatenative expression is the
> simplification of one function to another function (e.g. '1 2 + + ==>
> 3 +'). Never is it necessary to deal with objects or application, and
> much is gained by not doing so (as is mentioned at http://www.latrobe.edu.au/philosophy/phimvt/joy/j08cnt.htm)
> .
>
> 3. There is no reason concatenative languages must use a postfix
> syntax. A prefix syntax is also a valid approach. Other syntaxes are
> useful (as I've shown recently with my infix construction syntax
> similar to that of in FL and J) but ruled out by the need for
> concatenation to always denote composition (which I think is probably
> unfortunate).
>
> 4. Not all concatenative languages have parsing words or an equivalent
> to macros. Talking about them here makes as much sense as talking
> about macros on a page about applicative programming.
>
> 5. It should be stressed that concatenative languages are function-
> level and pointfree. They also go beyond languages like Backus's FP in
> that objects are entirely removed from the language; The expression
> '3' represents a *function*, not an object.
>
> 6. I dislike the sentence "The term 'concatenative' is not universally
> accepted as a particularly useful term". It's an objectively useful
> term if some care is given to its definition; What's "universally
> accepted" is unimportant. Hell, even Slava (who says it's unimportant)
> has started concatenative.org (which lists C++ and Java as
> "interesting languages"... ugh).
>
> So, should I make the changes or should I just define a new term so I
> that can communicate with people without boring myself? I did like
> Diggins's "compositional" suggestion which is more to the point; The
> fact that it is already used in various vague ways doesn't disturb me
> too much.
>
> Sorry for bringing this up *again*, but I'm trying to write a paper
> and keep stumbling over how to describe what it is that I'm talking
> about.
>
> - 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.