Typing Functional Stack-Based Languages
I’ve rewritten the Cat technical report and made it into a more general purpose article: Typing Functional Stack-Based Languages.
 The abstract follows:
Stack-based languages have been in continuous use for approximately four decades, and are still very popular today as intermediate languages. Many of the most well-known stack-based languages (e.g. Forth, Postscript, CIL, JVML) lack support for functional programming at the primitive instruction level. Some notable exceptions are the Joy programming language by Manfred von Thun and the Factor programming language by Slava Pestov. There has also been a recent proposal to add lambda expressions to Forth by Lynas and Stoddart.
While functional stack-based languages are gaining popularity, none of these have a static type system. This paper addresses this gap by formally expressing the operational semantics and type system for Cat, a small functional stack-based language.
Any comments or suggestions would be greatly appreciated!