I've even got dotNet invocation working, and hard-coded a 'print "foo" to screen' test which uses the underlying bits of the language. My next milestone is taking a block of code in Tangent and running it. Hard-coded type declarations, no assignment, no literals, hard-coded data...
This actually:
class int{ // hard-coded from dotnet-int's storage and method; public ToString(){...}}class string{ // hard-coded from dotnet-string's storage and method; public ToString(){...}}interface AnythingWithToString{ // hard-coded duck-typing interface public ToString(); }void discard(Any x){ return();}print print(AnythingWithToString x){ Console.Write(x.ToString()); return(print);}void print(AnythingWithToString x){ discard print x;}int a = 42; string b = "moo."; // And then I want this parsed and executable with the above declared.print a b;
Which by all testing will work fine and print '42moo.' to the console. Plus it's a simple example that shows a little of the language features like duck typing, and the user-defined operators. Now it's just a matter of stringing those bits together and making it work.