Category talk:Programming paradigm/Concatenative

From Rosetta Code
Revision as of 11:51, 8 April 2011 by Rdm (talk | contribs)

What belongs in this category? For example: Should Forth be in this category? How about languages which can be used for Concatenative Programming but which allow (or even encourage) other styles of programming? --Rdm 14:24, 7 April 2011 (UTC)

Treat it like the other programming paradigm pages. I guess we could say "if you can use this paradigm in the language and it doesn't go against the idioms of the language, it can be part of this paradigm category"? That probably deserves a vote. I'm no expert on whatever concatenative programming is, but it seems like Forth should be here based on the text on the page. --Mwn3d 14:49, 7 April 2011 (UTC)

Do assembly languages qualify as concatenative? They tend to pass data on the stack, albeit taking multiple push and pop instructions. They also support pass by reference (do concatenative languages support this, or does this mean that the language is not concatenative?)

Markhobley 16:10, 7 April 2011 (UTC)

Might this help? --Paddy3118 16:25, 7 April 2011 (UTC)
So, for example.. J is "almost a concatenative language". It has two major departures from the fundamentals currently described at concatenative.org: J is right to left, instead of left to right. And, composing J code requires something more than whitespace. You need [: code1 code2 instead of just code1 code2. And, thus, you can get statements like [: a [: b [: c [: d e. (A related issue is that many of the operations which would be useful on a stack might be of the form (, code). So... it's just over the edge of being a concatenative language... I think. --Rdm 11:51, 8 April 2011 (UTC)