Re: [stack] Cat article submission to Doctor Dobbs Journal

"Christopher Diggins" <[email protected]>
Newsgroups gmane.comp.lang.concatenative
Message-ID <[email protected]>
On Feb 10, 2008 2:23 PM, Stevan Apter <[email protected]> wrote:
> ----- Original Message -----
> From: "Christopher Diggins" <[email protected]>
> To: <[email protected]>
> Sent: Sunday, February 10, 2008 2:00 PM
> Subject: Re: [stack] Cat article submission to Doctor Dobbs Journal
>
> > On Feb 10, 2008 1:38 PM, Stevan Apter <[email protected]> wrote:
> >> chris:
> >> > You keep saying concatenative languages, and I am talking about
> >> > stack-based languages. I am still not sure which languages are
> >> > technically concatenative (is Forth? is JVML? is PostScript?).
> >>
> >> i've been up and down this road so many times i'm giving names to
> >> the rocks. am i wrong in thinking that the languages we're
> >> concerned with (in this group) are those in which wholes are built
> >> from parts by concatenation and where concatenation denotes a
> >> fundamental operation, either composition or application (or
> >> something else)?
> >>
> >> joy and its descendents satisfy that definition. other languages
> >> can be restricted in various ways to satisfy it.
> >
> > Hi Stevan,
> >
> > This seems more or less like the definition that majority of the group
> > has agreed upon. In your opinion what languages other than Joy does it
> > include?
>
> just a guess -- billy will correct me if i'm wrong: the tacit part
> of J (application), point-free haskell, one (or more?) of jot/zot/iota,
> chris okasaki's flattened combinator language, lee spector's PUSH,
> van Oormerssen's False.

This is a pretty good list, thank you! You left out XY.

> i'm still not sure in what sense or under
> what restrictions Forth or Postscript satisfy the definition.

Yeah, that's the tricky part. I believe there are valid phrases in
Forth which can't be concatenated (and/or split) to create other valid
phrases (e.g. using BRANCH). I don't know about PostScript.

> it
> would be good to be able to answer the question "is this language
> concatenative, and if not, why not?"

Yes, I agree. Having a laundry list of concatenative languages is a
good first step though I think. At least we can compare other
languages to the existing list, and state what the characteristics it
shares and

On another topic I was reviewing PostScript and your interview with
Manfred (thanks for doing that and sharing it by the way, I love
getting into Manfred's mind) and I found this quote:
"What distinguishes Joy from (the functional subsets of) Forth and
Postscript is the datatype of quoted programs". Well in PostScript
there appears to be quoted programs, they are just called executable
arrays. However, there are no *literal* quotations. Rather there are
operators for constructing quoted programs (i.e. "{" and "}"). A
somewhat pedantic difference but one worth noting I think. I've
udpated the introduction of my article a bit to reflect this
observation. Does anyone agree/disagree?

On another topic I wonder if in PostScript you can write:

\f { { } def
\g { } } def

This would possibly break concatenativity.

- Christopher
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.