A
portable assembly language intended to replace
C as a target for
compilers. It retains some of C's
syntax, but does away with its restrictive
calling conventions, and provides (or allows easy implementation of) proper
tail recursion,
garbage collection,
exceptions of all sorts, and other
goodies. The language is still young and in flux, but there are implementions available, and it looks like it might be a big
win for compiler writers in a few years.
See http://www.cminusminus.org.