I like all of this. On 3/23/12 1:42 PM, Graydon Hoare wrote:
Are the semantics over-complex? I think we really have a large number of use-cases and there's no way we can hit them all with a single abstraction. Shared-heap != unique-heap != constant != alloca != borrowed region, and fixed-size != variable-size.
Yeah, that's my only concern, but I don't know how to make it simpler, really.
Is the trailing slash absolutely hideous? There are a few other unused ASCII symbols in the type grammar but this was the nicest-looking I could see (that didn't collide with something else). It's also possible to write them as str/10, str@ and str~, say, and similarly [int/10], [int]~ and [int]@. That's fewer slashes but a bit more visual ambiguity if you have a leading ~ or @ as well.
LLVM uses "x"; [int x 10], [int x 30]. I think it's kind of cute. There's precedent for "x" as an operator, in Perl, and I don't believe it requires making "x" a keyword. It does require whitespace around the "x", though.
Patrick _______________________________________________ Rust-dev mailing list [email protected] https://mail.mozilla.org/listinfo/rust-dev
