Now that's just silly! l8r Sean
Sent from my iPad > On Jun 28, 2016, at 10:49 PM, Greg Titus <[email protected]> wrote: > > I’m honestly shocked that y’all (that I’ve seen) haven’t come up with > Syntax.LiterallyIntegerLiteral yet. > > > >> On Jun 28, 2016, at 8:39 PM, Sean Heber via swift-evolution >> <[email protected]> wrote: >> >> Arg. Dang it! >> >> Syntax.ExpressibleAsIntegerLiteral >> Syntax.FromIntegerLiteral >> Syntax.IntegerLiteralManifestation >> Syntax.GhostOfIntegerLiteral >> Syntax.FormerlyKnownAsIntegerLiteral >> >> l8r >> Sean >> >> Sent from my iPad >> >> On Jun 28, 2016, at 10:29 PM, Erica Sadun <[email protected]> wrote: >> >>>> 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 > _______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
