The good news is that I'll end up with a lot more done than I expected at Milestone 3. Type expressions will be there for local variables (and reusable for other constructs). Type expressions are important in Tangent because they allow composition (and a few other operations) without explicitly compositing the damned types. Also done are an operation to select compatible methods from a group, 'intersect' the common interface out from two types, and a tupling operator.
Also done (once I get to implementing op-assign...) will be pretty full initializer support, including hardcoded defaults (until I get around to implementing a 'default' operator). But op assign is tricky. And doing it nicely will likely require some overloads and/or generics that aren't really there yet.
Just one of those things that was easy when I was looking to just compile to C# rather than interpreting things. Now interpreting things, it's surprisingly difficult...