[Haskell-cafe] New type of ($) operator in GHC 8.0 is problematic
spam at scientician.net
Sat Feb 13 11:42:48 UTC 2016
(This is getting waaaaayyy off-topic, so I'll stop after this post.)
On 02/13/2016 12:31 PM, Joachim Durchholz wrote:
>> Unfortunately, the Scala people seem to be tiring of the long names and
>> are regressing towards just using top-level names like "play" and
>> "argonaut" and such... :/
> I think that's mostly exceptions for the really-well-known frameworks.
> Similar to the "java.*" and "javax.*" namespaces.
> I can understand why they prefer "play.*" over "com.playframework.*",
> but I don't really get why they say "argonaut.*" instead of
> "io.argonaut.*". Weird.
Unfortunately it's not only famous/popular frameworks... but upon
reconsideration, actually, I think the problem may be imports being
"scoped" in a good-in-theory-but-bad-in-practice way. The issue usually
is an inability to refer to things with short names because you have
(I won't expand in the interest of brevity. This is off-topic enough
> OT3H it's not a really serious problem. The DNS as namespace means you
> have a spot that's guaranteed to be free for your code, and as long as
> nobody uses a TLD for his package root, it's all fine.
> Things could become ugly for the Play framework is somebody registers
> "play" as a new TLD. It would be a clearly a problem for the Play
> framework, not for the DNS, so at least the responsibilities for fixing
> the problem will be easy to assign. Or maybe the Playframework guys will
> get a chance at reserving whatever .play domains would collide with
> their package names, it's quite possible they'd get heard during the
> sunrise period of a hypothetical new .play TLD.
Well, reserving a name is kind of precondition, but *expiry* of domains
could also be bad -- arguably *worse*. I think the main benefit isn't
really tied to domain names per se, but that fact that people/companies
*tend to* pick names that are slightly different as
top-level/next-level/next-level so conflicts would be rare *in practice*
even if there wasn't a "have-a-domain-name" requirement -- which in fact
there *isn't*; it's still just a convention in Java, but it *is*
More information about the Haskell-Cafe