Some weeks ago, I was working on an interpreter of the Cat language:
Cat is a functional stack-based programming language inspired by the Joy programming language. The primary differences is that Cat provides a static type system with type inferencing (like ML or Haskell), and a term rewriting macro language extension language called MetaCat.
Cat is a high-level intermediate language translation that can also be used as a stand alone language for simple application development. In this way it occupies a similar niche to PostScript. Cat is also an appropriate language for teaching of basic programming concepts.
If you are not familiar with Cat language, you can learn more at:
I published the code as part of my Code Katas Google code project. It’s named AjCat:
The solution contains three projects:
The implementation is not complete. It’s only support integers, no .NET object support yet, and no graphics primitives.
Running the console program, you can enter and evaluate expressions:
Tests are green:
And good code coverage