views:

1056

answers:

6

What stackless programming languages are available?

I know of Stackless Python, but are there any other languages which do not rely on a C stack that can be embedded into other applications?

List of stackless programming languages:

A: 

Lisp or scheme?

There seem to be some references here: http://objectmix.com/compilers/706608-stackless-compilers.html

John Fouhy
+1  A: 

PyPy is another Python implementation that can be stackless.

climatewarrior
@Infamous Cow: Lua is at http://www.lua.org/about.html and, hopefully I'm remembering this correctly, was one of Christian Tismer's influences for initially developing Stackless Python.
Van Gale
@vangale, being a register based VM is orthogonal to being 'stackless'. Register/stack refers to how instructions are encoded and expressions evaluated, while stack/stackless refers to how function call activation records are stored.
Aaron
@Aaron: uhh, not sure why you're telling me this. My comment is just pointing Infamous Cow to Lua website if he wanted to check climatewarrior's answer (which has since been edited). I can't find any sources about Tismer so ignore that, besides the influence would be co-routines not stacklessness.
Van Gale
A: 

TCL 8.6 is also stackless.

A: 

Not really sure, but I seem to remember that Lua moved to a register based VM from the traditional stack based VM. Lua is very easy to embed.

I'm not to familiar with the details, though.

Gilad Naor
+3  A: 

There are many stackless languages that can be embedded into other applications. Including:

Christopher Dolan
@Christopher Dolan Is smalltalk stackless, since it uses heap-allocated activation records?
Peter Ajtai
A: 

Stackless Python is not actually stackless. The original implementation was, but maintaining it was cumbersome and the benefits were negligible. The current implementation is as stackbound as standard C Python is.