> On Jun 28, 2016, at 9:21 PM, Sean Heber <[email protected]> wrote: > > IntegerLiteralExpressable? > > Does Apple employ any philosophers? We might need one... > > l8r > Sean >
Aaaaaand...welcome to last night. The problem being, that people see this and think that the type can be expressed as an integer literal, not that an integer literal can be expressing the type. (I won't even bring up other associations for that word since most of the subscribers of this mailing list have not been nursing mothers although some may be familiar with the technique.) -- E > >> On Jun 28, 2016, at 10:02 PM, Erica Sadun <[email protected]> wrote: >> >> >>> On Jun 28, 2016, at 8:08 PM, Sean Heber <[email protected]> wrote: >>> >>> What about.. >>> >>> Syntax.ConvertibleFromIntegerLiteral >>> etc.. >> >> I like it but Dave has already expressed that this isn't conversion. This >> is something distinct, magical, and more importantly, ineffable. >> >> He says it means an instance of the type can be written as a literal, and >> not converted from a literal. He writes: >> >>> Conformance to this protocol does *not* mean you can initialize the type >>> with >>> a literal. >>> >>> Proof: >>> >>> func f<T: IntegerLiteralConvertible>() -> T { >>> return T(integerLiteral: 43) // Error >>> return T(43) // Also an Error >>> } >>> >>> It means an instance of the type can be *written* as a literal: >>> >>> func f<T: IntegerLiteralConvertible>() -> T { >>> return 43 // OK >>> } >>>> >> >> So we're looking at something more like: >> >> Syntax.AnIntegerLiteralCanBeSubstitutedForThisTypeAndTheCompilerWillNotBarf >> >> -- E >> >> _______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
