... Indeed. There is temptation (yes, I have been guilty, too) to slip from ³concatenative² to ³stack². And another temptation (me too), to slip from...
... 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...
... For those who haven't seen it: http://cdiggins.com/2007/12/01/compositional-programming-languages-not-concatenative/ And some reddit discussion is at: ...
... Yes, though "programs" must be interpreted strictly. "1 [ 2" is not a Joy program. -- But you, Wormtongue, you have done what you could for your true...
... Must they really be unary? I think it is possible to have a language where functions my return multiple values and may consume multiple values....
John Nowak
john@...
Dec 3, 2007 8:59 pm
3599
... Just a quick point: I think those are overly narrow definitions of concatenativity and compositionality if you include anything about "whitespace". Imagine...
John Nowak
john@...
Dec 3, 2007 9:10 pm
3600
... There may also be type system restrictions involved. For example, I believe this is a valid program in Cat: foo == [10] dup apply However, the due to the...
John Nowak
john@...
Dec 3, 2007 9:14 pm
3601
... Cat 0.18.2 handles recursion by generating a new type ('A -> 'B) and unifying that. So "dup apply" is now valid again. ... The answer depends on whether an...
... Okay, good. This is really clearing my mind! (But I don't agree that "concatenative" means anything about "whitespace". More later.) ... I didn't want to...
... We could also define a language with single character names wherein xfg would mean g(f(x)) with no whitespace involved. Being a big fan of conciseness,...
... Hi Chris, Yeah, this is true, but I don't see why we need to change the words. The use of the term "concatenative" is fairly well-established within our...
Hi William, I hope my heavy editing of the post to reduce the size is okay. ... Sorry, lets say the sequencing of terms ... Yes you are correct. The operation...
... The problem is that the computer science community is much larger than our own. ... Precedence does not make right. ... Which is the only kind of language...
Going along with the discussion trying to pin down a definition of concatenative and/or develop a new term, I propose this hierarchy with the hope that it...
John Nowak
john@...
Dec 4, 2007 6:18 am
3610
... Be careful about hierarchies that extend outside of this group's direct interest -- if we were to develop one, we really should try to develop it on a...
But what about postfix notation, i.e. the operator always comes after the operands? The reason that I like Joy (or any postfix language) is that evaluation...
... This page might explain it a bit better: http://en.wikipedia.org/wiki/Function-level_programming This goes into more detail on functional forms (aka...
john@...
Dec 4, 2007 10:04 pm
3613
... It does indeed! Thank you. And now I'm enlightened. You weren't merely making up your own hierarchy :-); you were citing well-established terms. ... ...
... Aye. I should've been more clear. ... In Joy, map isn't a functional form; it's just a normal higher order function that operates on the value level. The...
John Nowak
john@...
Dec 5, 2007 7:04 am
3615
... Just to point out; I think this is the desirable outcome of a good definition for "composable". Haskell isn't any more composable than Joy is applicative,...
John Nowak
john@...
Dec 5, 2007 7:11 am
3616
... Really not sure what I had against the present tense in this one... - John...
John Nowak
john@...
Dec 5, 2007 7:16 am
3617
... Hmm... Right. And much the same, there are benefits and drawbacks to impurity... Perhaps one way of saying it is that impure programs can tersely express...
Hi all, Right now, I'm working on a module called inverse for Factor. The basic goal is to provide an inverse (or, technically, a section) of a quotation, for...
... Have you considered the brute force approach? Try to evaluate a sub-expression: if it throws an error it doesn't work, otherwise go ahead and replace the...
... No, not quite. Composable means composing functions is the only way to write programs. Joy works this way. Concatenative languages are composable languages...
John Nowak
john@...
Dec 6, 2007 5:31 am
3621
... s/nothing/anything Ugh. Apologies. I'm sick you see. - John...
John Nowak
john@...
Dec 6, 2007 5:33 am
3622
... s/has/have Maybe I should take a break. Sorry for the noise....
John Nowak
john@...
Dec 6, 2007 5:39 am
3623
Thanks for your response, Chris, ... That might work, but using that approach, how can I tell where a successful partial evaluation begins and ends? Is it like...