On Fri, Nov 19, 2010 at 4:20 PM, Richard Hartmann <richih.mailinglist@gmail.com> wrote:
On Fri, Nov 19, 2010 at 21:45, William Herrin <bill@herrin.us> wrote:
I have an anti-naming proposal: Allow users to place the colons -anywhere- or even leave them out altogether without changing the semantics of the IPv6 address.
A decade or two of established syntax disagree. IPv6 addresses, UUIDs and similar have a unique syntax for a reason. Otherwise, we, nor computers, wouldn't be able to quickly distinguish an IP from a hash.
Hi Richard, I thought about that. Have a "one colon rule" that IPv6 addresses in hexidecimal format have to include at least one colon somewhere. The regex which picks that token out versus the other possibilities is easy enough to write and so is the human rule: "Oh, it's got hexidecimal digits and a colon in it. IPv6 address." There is one serious problem with switching notations: we've already started dropping the leading 0's inside each coloned-off section, and that would have a different meaning if the colons could be placed anywhere. fd00:68::1 and fd:0068::1 mean different things now. The former means fd00:0068::1 while the latter means 00fd:0068::1. I would instead have them mean the same thing: fd00:6800::1. The single-colon separator gets syntax but no semantics and the :: separator means "all middle nibbles are zero" instead of "all middle two-byte components are zero." I mean, when you think about it, the consequence that :: means "all middle two-byte components are zero" is kinda weird.
Even if they were for readability only, they would still be for humans. Same as the specific, canonical name we are trying to agree on.
If people want to interpret more into the colons than there is to see, they will do so regardless of a name.
Anything you call out will be interpreted as special. The more you call it out, the greater the expectation that the distinction is important. That's human nature. You've explained netmasks before to folks whose brains couldn't get past the dots in the address. We all have. And referring to IP address notation as "dotted quads" just reinforces classful addressing concepts so that folks assigning themselves 10/8 subnets damn near always split on /16 and /24 boundaries.
The rest of us will work faster, more efficiently and not explain the same old thing a gazillion times.
And even more efficiently when we don't have to repeatedly explain that the mental model implied by the notation style is, in fact, not how the technology actually works. On Fri, Nov 19, 2010 at 4:31 PM, Richard Hartmann <richih.mailinglist@gmail.com> wrote:
In any case, other than "some people might see the colons as magic markers" I don't really see an argument in favour of avoiding a common name. And that does not seem to hold much water. This is not meant to be an attack, I simply wonder if I am missing something.
No sweat. When I shoot my mouth off, I expect to be challenged on the remarks. Part of the fun lies in discovering whether the thesis is defensible. By the by, as long as I'm criticizing IPv6 notation, let me express just how poor a choice of separator character the colon is. The colon separates the IPv4 address from a directory or port description only slightly less often than the slash. Writing the parsers to handle an IPv6 address as a drop in is a pain in the tail. Should have used a dash, underscore or plus. Those are far more rarely used in tokenization. Regards, Bill Herrin -- William D. Herrin ................ herrin@dirtside.comĀ bill@herrin.us 3005 Crane Dr. ...................... Web: <http://bill.herrin.us/> Falls Church, VA 22042-3004