Re: [stack] disallowing recursive definitions

John Nowak <[email protected]>
Newsgroups gmane.comp.lang.concatenative
Message-ID <[email protected]>
On Mar 3, 2008, at 8:38 PM, Don Groves wrote:

> A few months back, I finally caught on to this: by their nature,
> concatenative languages enforce computation by continuation
> passing.

Indeed. This in *incredibly* useful as it means your language is  
essentially purely functional by default. After all, it's trivial to  
thread a world state through the entire program on the top of the  
stack. All you need then is a simple effect system to allow enforcing  
of purity (purity = does not read/write the world value) via the type  
system when desirable/necessary. The monoidal nature of Joy-like  
languages also enables linearity without linear/uniquneness types. Cat  
takes advantage of this, although perhaps not originally knowingly.  
Fifth does as well.

- John
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.