... I was considering Forth's conditional as a functional form with the syntax 'IF <expr> THEN <expr> ELSE'. The expressions within the form are still...
4225
Christopher Diggins
cdiggins.geo
Jan 2, 2009 10:50 pm
... Forth without compile-time words isn't Turing-complete as far as I can tell. I don't think you can just give it a pass. Can you even construct a...
4224
John Nowak
john@...
Jan 2, 2009 10:31 pm
... Quotations are atomic terms too (i.e. they are a single element), but you can still factor out subexpressions within them. Maybe what you're trying to say...
4223
Robbert Dalen
r_v_dalen
Jan 2, 2009 10:15 pm
... bad example: car and cdr talk about semantics not syntax. but you are right: we want positive statements, not negative. in true leo brouwer style: 'let's...
4222
John Nowak
john@...
Jan 2, 2009 10:14 pm
... I think macros and compiling words get a pass. Saying they don't wouldn't be much different than saying Haskell isn't purely functional because top-level...
4221
John Nowak
john@...
Jan 2, 2009 10:02 pm
... Evaluation order is important in every concatenative language that currently exists as far as I know. In the Forth of Factor program '1 . 2 .', it is a...
4220
John Nowak
john@...
Jan 2, 2009 9:58 pm
... Global variables can be treated as functions that read/write some state that gets passed through the program thanks to the monoidal nature of things. Local...
4219
John Nowak
john@...
Jan 2, 2009 9:41 pm
... You're right, there isn't any opportunity for it in that example because there's no contiguous composition of more than two functions. Perhaps this is a...
4218
John Nowak
john@...
Jan 2, 2009 9:26 pm
... So would the category of all languages that use 'car' and 'cdr' to take the head and tail of a list. Such a category would basically mean Lisp and...
4217
Christopher Diggins
cdiggins.geo
Jan 2, 2009 7:37 pm
In Fri, Jan 2, 2009 at 11:50 AM, William Tanksley, Jr ... Not necessarily. It depends on what the evaluation mechanism is. Talking about data-flow in the...
4216
Stevan Apter
sa@...
Jan 2, 2009 4:59 pm
... programming language inquiry does feel more like classifying beetles and orchids than it does like physics....
4215
William Tanksley, Jr
wtanksle
Jan 2, 2009 4:50 pm
... This is the associative property. You need to be careful calling it "evaluation order", though; evaluation order matters with respect to dataflow -- you...
4214
Christopher Diggins
cdiggins.geo
Jan 2, 2009 3:42 pm
In a concatenative language, I believe evaluation order should be unimportant. For example: f g h <=> (f g) h <=> f (g h) Does Forth have this property? ...
4213
William Tanksley, Jr
wtanksle
Jan 2, 2009 2:50 pm
That's a very nice entry; it gives a good survey. I'm not sure how useful the link to "applicative" is, mainly because the article linked to is sadly...
4212
William Tanksley, Jr
wtanksle
Jan 2, 2009 2:20 pm
... Yes -- if you provide syntax for cleave, the rest of the language is clearly listlike and associative. Unfortunately, the example you give doesn't appear...
4211
Robbert van Dalen
r_v_dalen
Jan 2, 2009 2:18 pm
i do agree with john (nowak) that - if concatenativity is defined to be purely syntactic - it would include too many (non-interesting) languages. however, the...
4210
Stevan Apter
sa@...
Jan 2, 2009 1:12 pm
i've stayed out of this wrangle. i've fallen into the habit of using/interpreting "concatenative" to mean nothing more than "joy-like." if someone claims...
4209
John Nowak
john@...
Jan 2, 2009 9:13 am
http://en.wikipedia.org/wiki/User:John_Nowak/Sandbox/Concatenative I'm sure it needs more work. Any input would be appreciated (or just go ahead and edit it). ...
4208
John Nowak
john@...
Jan 2, 2009 12:31 am
... This definition seems so broad as to have no useful consequences. At least Tanksley's associative requirement would allow factoring and some other basic...
4207
John Nowak
john@...
Jan 2, 2009 12:23 am
... I think the actual problem was that the juxtaposition of two functions denoted composition, but the juxtaposition of three functions denoted composition...
4206
William Tanksley, Jr
wtanksle
Jan 2, 2009 12:10 am
... Okay, I grant that there's value in the word "juxtaposition" (unlike "concatenate", it allows whitespace to be interposed). Accepted. ... Logically...
4205
Robbert Dalen
r_v_dalen
Jan 1, 2009 11:09 pm
My (very broad) definition would be: 'A concatenative language is a language wherein syntactically valid expressions can be concatenated to yield syntactically...
4204
Don Groves
dgpdx64
Jan 1, 2009 9:01 pm
... Sure it's useful. We do that now only we call them "files." -- don...
4203
Christopher Diggins
cdiggins.geo
Jan 1, 2009 3:57 pm
On Thu, Jan 1, 2009 at 1:37 AM, William Tanksley, Jr ... Thanks. ... I think that "juxtaposition of terms" is almost synonymous with concatenation. For a...
4202
John Cowan
johnwcowan
Jan 1, 2009 10:59 am
... I agree. It seems to me essential for a concatenative language that the associative operation in question be composition and not something else. -- John...
4201
John Nowak
john@...
Jan 1, 2009 10:55 am
... I'd say yes. Ideally, we'd like to be both clear *and* precise. I think such a definition would satisfy the first requirement (it's clear) but not the...
4200
John Nowak
john@...
Jan 1, 2009 10:52 am
... Factor is a flexible, reflective language that can be coerced into doing almost anything. I'm sure you can embed a nice Lisp or Prolog (if you already...
4199
John Nowak
john@...
Jan 1, 2009 10:28 am
... They need not be ordered. Consider a language that passed around a dictionary. Primitive operations would assume their arguments were stored at particular...
4198
John Nowak
john@...
Jan 1, 2009 10:23 am
... Well lets see. Starting with your definition: "A concatenative programming language is language in which terms correspond to functions and in which the...
4197
John Nowak
john@...
Jan 1, 2009 10:04 am
... So if I got rid of rules 2 and 3, would it be concatenative? It would have the same underlying semantics except concatenation is would always mean...