#283 Type references

tompalmer Sat 12 Jul 2008

Is there a reason why we require this:

t := acme::SomeType.type

rather than this:

t := acme::SomeType

At the beginning of a statement, I can see why it would be unclear, but in expression positions, would the meaning be ambiguous?

tompalmer Sat 12 Jul 2008

Also, I realize that reflective type access requires the full form (as in acme::SomeType.type.fields). I'm speaking only about the special case of type names standing alone. Or is the concern about the special case causing confusion?

brian Sat 12 Jul 2008

I think your proposal is that a type identifier be evaluated as type literal. We can't do that because the grammar relies on the fact that type names without an associated dot operator are declarations (local vars, closures, etc). You could make special cases in specific contexts, but I don't want to do that.

tompalmer Sat 12 Jul 2008

Okay. Just wanted to throw it out there.

Login or Signup to reply.