Idea: Change type ascription syntax from `:` to `type` keyword

Maybe we could just have a generic always-inline identity function that returns its argument, and use that for type ascription with no language changes:

id::<B>(x.into()).into()

Only difference seems to be that it doesn’t implicitly work for non-movable lvalues, but you need to borrow and dereference explicitly.

2 Likes