Re: [stack] Survey: Your impressions and thoughts about concatenative languages
"William Tanksley, Jr" <[email protected]>
| Newsgroups | gmane.comp.lang.concatenative |
|---|---|
| Message-ID | <[email protected]> |
Christopher Diggins <[email protected]> wrote: > FWIW I like your definition. In your blog you mention, reasonably, that because we're uncertain about the precise results of the term 'concatenative', we should use another term; you suggest 'compositional'. I disagree. Our uncertainty about the precise meaning of the term mirrors the fact that these languages are very little studied; the fact that we're a bit murky on the precise boundaries of our field therefore only makes sense. At the same time, your suggested term, 'compositional', is good; the obvious problem is that it's already been used. A compositional computer language is a language used only to bring together code written in other languages; the language Piccola http://www.iam.unibe.ch/~scg/Research/Piccola/ is a 'pure' example, and I suppose the various shell scripts are impure examples. But that's not broad use, and I don't see a severe problem with using it anyhow. I also don't agree with your claim that Haskell qualifies as a concatenative language. Am I wrong? Do any two valid Haskell programs concatenated together form a valid Haskell program? My knowledge here is limited, but I don't _think_ currying is that powerful -- _some_ Haskell programs are 'concatenative' in that sense, but it's not a general feature of the language, to the best of my knowledge. Furthermore, if Haskell were concatenative, would that be bad? I admit that I did invent 'concatenative' with some vague idea of being 'opposite' to applicative languages, but I don't think the category is useless even if it's orthogonal rather than opposite. > - Christopher -Wm