Re: [stack] What does "concatenative" actually mean?
John Nowak <[email protected]>
| Newsgroups | gmane.comp.lang.concatenative |
|---|---|
| Message-ID | <[email protected]> |
On Mar 5, 2009, at 10:38 AM, William Tanksley wrote:
> There are three reasons why I don't recommend using the term
> compositional outside of pedagogy.
>
> First, it's a very theoretical and pure definition: it requires that
> the
> ONLY operation be composition.
Really? Does quotation not violate this?
> We've since developed definitions of concatenativity that seem to be a
> lot more flexible, allowing us to have a concept of pure versus impure
> concatenative languages. This also implies that we can define a
> concatenative language that's not compositional.
I disagree. According to the Wikipedia definition:
"A concatenative programming language is one in which all terms
denote functions and the juxtaposition of functions denotes
function composition."
Now you might say, "But John, you wrote the Wikipedia definition,"
upon which time I'd stick my fingers in my ears and start making "nana-
nana-nana" noises.
> Second, there are no studied benefits to compositional languages that
> aren't also present in concatenative languages,
I'd say FP and FL are compositional if anything is, and their benefits
have certainly been the topic of numerous research papers. It was all
the rage at one point. Certainly the Bird-Meertens formalism fits in
here somewhere as well.
> and concatenative languages have the huge benefit of token
> associativity that's not present in compositional languages with
> explicit composition operators.
Eh? '(f . g) . h == f . (g . h)'; seems to work to me.
- John