On Thu, Nov 23, 2017 at 3:47 PM, Tony Allevato via swift-evolution < [email protected]> wrote:
> > > On Thu, Nov 23, 2017 at 12:21 PM Xiaodi Wu via swift-evolution < > [email protected]> wrote: > >> On Thu, Nov 23, 2017 at 2:14 PM, John Holdsworth via swift-evolution < >> [email protected]> wrote: >> >>> I’m beginning to wish I hadn’t tied this proposal so strongly to regular >>> expressions! >>> It is indeed the wrong motivation. Even as a ten year veteran of Perl >>> development >>> I’m not sure we want to bake it into the language quite so tightly >>> (isn’t a part of >>> Foundation?) What would /regex/ represent - an instance of >>> NSRegularExpression? >>> Would the flags be pattern options or matching options? This is a whole >>> other debate. >>> >>> For me the focus of raw strings was a sort of super-literal literal >>> which has many >>> applications. The r”literal” syntax has a precedent in Python and there >>> seemed >>> to be a syntactic gap that could be occupied but perhaps there are other >>> alternatives >>> we could discuss. It would be a shame to see ‘quoted strings’ be used >>> for this however. >>> I still live in hope one day it will be used for single character >>> UNICODE values. >>> >>> Since what passes for a single character changes by Unicode >> revision--such as whenever they get around to enumerating the permitted >> modifying attributes of the poop emoji--it is quite impossible (and Swift's >> `Character` doesn't attempt to) to enforce single-characterness at compile >> time. We should put any such notions to rest up front. >> > > Unless I'm misunderstanding you here, I don't think that's true: writing > something like `let c: Character = "ab"` is definitely a compile-time > error: https://gist.github.com/allevato/ae267e2aaaa7939d6233d66a87b48fc0 > > To the original point though, I don't think Swift needs to use single > quotes for single characters (or single scalars). Type inference already > infers Characters from single-character String literals in contexts where a > Character is expected, and the only time you need to be explicit is if > you're trying to resolve an overload or initialize a variable by itself. > Using single quotes to avoid writing "as Character" would feel like a waste. > i still think single quotes should be used as an alternate literal for UInt8, like char. there’s a lot of cases where you’re working with low-level 8-bit ASCII data and both String and Character and Unicode.Scalar are inappropriate, and typing out hex literals makes code *less* readable.
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
