[swift-evolution] [Discussion] Rename BitwiseOperations protocol

Nevin Brackett-Rozinsky nevin.brackettrozinsky at gmail.com
Sun Jul 3 11:41:58 CDT 2016


I am still curious why the SE-0104 FixedWidthInteger protocol uses member
functions like “.xor” rather than operators for bitwise manipulation.

Nevin

On Fri, Jul 1, 2016 at 8:19 PM, Dave Abrahams via swift-evolution <
swift-evolution at swift.org> wrote:

>
> on Fri Jul 01 2016, Riley Testut <swift-evolution at swift.org> wrote:
>
> > Hi all,
> >
> > This is probably very minor, but I’m not sure the protocol name
> > “BitwiseOperations” fits the Swift API Design Guidelines. Here’s what
> > the guidelines have to say about protocol names:
> >
> > Protocols that describe what something is should read as nouns (e.g.
> Collection).
> >
> > Protocols that describe a capability should be named using the
> > suffixes able, ible, or ing (e.g. Equatable, ProgressReporting).
> >
> > From these two, BitwiseOperations appears to be (attempting) to follow
> > the first rule, yet “BitwiseOperations” doesn’t really describe what
> > the type is, but rather that it can do bitwise operations. The
> > documentation itself even describes the protocol as “a type that
> > supports standard bitwise arithmetic operators."
> >
> > I propose we rename it to “BitwiseOperable”, or something
> > similar. Again, a small change, but if this were to ever happen, I
> > think Swift 3 is the time.
>
> BitwiseOperations should really be retired after
>
> https://github.com/apple/swift-evolution/blob/master/proposals/0104-improved-integers.md
> is implemented, and its uses replaced by FixedWidthInteger.
>
> --
> Dave
>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160703/091790fd/attachment.html>


More information about the swift-evolution mailing list