Re: [stack] Barebone implementation of concatenative language in c or c++

<[email protected]> Wed, 19 May 2010 12:04:52 -0500
Newsgroups gmane.comp.lang.concatenative
Message-ID <[email protected]>
On Wed, 19 May 2010 07:15:38 -0000, "Ruurd" <[email protected]>
wrote:

> I don't see why + is not a valid program. When executed it will give a
> runtime error when there is nothing to add, but validity is a syntactic
> property.

Validity is not, in general, a syntactic property (e.g. it may be rejected
for type-level reasons). But yes, if you're considering the error resulting
from such a program to be a well-defined result, then your program is
technically valid. I'm not sure Joy is well-defined enough to answer this
question properly. I'll concede that you're likely right in this cases
though; my brain was stuck in typed mode as usual.

>> I think you've misunderstood me. My point is that, for example:
> 
> No, I did not misunderstand you. I give rules that distinguish
> environments that allow substitution and environments where
> that is not allowed. It is not necessary to do substitution
> everywhere.

No it isn't, but it's very, very useful if you're interested in algebraic
manipulation of programs (which is, in my understanding, the principal
issue that Manfred wanted to address with Joy).

- jn