> I think our decision should be based upon which syntactic construct feels 
> least inconsistent with other similar syntactic constructs and therefore 
> feels the least arbitrary.  Restricting the usage of a generic `Literal` type 
> to literal convertible initializers feels a little bit less arbitrary than 
> allowing the call site to omit a label, but it feels a little bit more 
> arbitrary than introducing an attribute that has a very specialized context 
> of applicability.

Honestly, I think `@literal` is only "consistent" with the rest of the language 
in that @s are used to mark compiler magic. `Literal<>` is attempting to *not* 
be much more magical than, say, `StringInterpolationConvertible`, where a 
particular syntax generates a certain pattern of calls.

-- 
Brent Royal-Gordon
Architechies

_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to