Rust – “hello world” contains Lovecraft quotes
github.com
github.com
If the developers would lose even the littlest amount of joy or dedication to the project because their project culture is corrupted by concerns over lawyers and perceptions of irrational programmers, then that would be a significant detriment to the project. I'm not saying the developers work on Rust because there's Lovecraft quotes in there, but the Lovecraft quotes are in there because the developers are in control of the project. One of the main things that keeps you happy in a job is being in control, and there's very little things you are in control over in such a project to begin with.
So what's the upside of this? It makes the developers and some users happy. You shouldn't be asking what's the upside, because it's obvious. What's the downside? 2kb of memory for people with GBs of it to spare. Embedded developers? They're not including the runtime anyway. From my perspective, the naysayers are just irrational. (As developers often are when judging their tools)
edit: anyway, however fun it is to discuss this, it's not really up to us, and the majority of the core developers already reached a concensus in the first 4 comments that the quotes should go, so everyone pitching in after that is pretty much making an elephant out of a fly (including me).
summary of discussion: "There's 2kb of bloat", "That's only 0.56%", "Yes, but it looks unprofessional", "Ok let's remove it", "Ok, but I loved it :("
Developer that is sad because a committee is irrationally ganging up on his loved inclusion of quotes: Steve Klabnik[1]
0] https://lists.debian.org/debian-devel/2014/11/msg00174.html
1] https://github.com/rust-lang/rust/issues/13871#issuecomment-...
Plus, neglecting to include a few Lovecraft quotes does not seem on the same level as "It's clear to me now that [the Debian constitution is] a toxic document, that has slowly but surely led Debian in very unhealthy directions."
Shouldn't that be its users?
One of the main things that keeps you happy in a job is being in control, and there's very little things you are in control over in such a project to begin with.
It makes the developers and some users happy.
In other words, it's there mostly because the developers are more concerned with having fun among themselves, rather than the needs of their users? "some users" is vague, but I doubt it's the majority.
What's the downside? 2kb of memory for people with GBs of it to spare
I wish this "it's only X amount" type of thinking would stop, because this is really 2K multiplied by all the times it gets used.
Fun and games has its time and place, but the runtime library of a new language that's trying to increase its popularity is not it. For example, I enjoy watching 1/2/4K demos, but wouldn't be amused at all if one was embedded in Rust.
No, an open source project with a minor foothold is wholly dependant on its developers/contributors. The users at this point have very little investment.
> because this is really 2K multiplied by all the times it gets used
No matter how many times it gets used, it's still 0.56%.
> Fun and games has its time and place, but the runtime library of a new language that's trying to increase its popularity is not it.
Despite your baseless proposition, Rust has done very well in gaining popularity as a C++ competitor. It has done this by discerning in features that actually matter like safety, structure and consistency.
In general, the developers of a project get to decide if they "care" about users; maybe they're working on the project purely for fun, or for research purposes, and so desires of other people trying to use it are essentially irrelevant.
(This isn't the case for Rust; but the enjoyment of the contributors and core team is still important, most of the contributors and some of the core team are volunteers.)
People defend it, and it hasn't been taken out in 1.0, but it seems like an all downside trade.
I see the value of Easter eggs, but the fact that this issue keeps coming up should be enough of a sign that it isn't worth it in this case.
[1] https://github.com/rust-lang/rust/issues/13871#issuecomment-...
[2] https://github.com/rust-lang/rust/commit/29ad8e15a2b7e202494...
I don't think that there should exist some magic command in Python which prints out "Zen of Python", but it's OK, let it be, no harm done. It's just some executable, which interprets text you passed it and does something based on what is written there. It's almost natural there's some command I don't use.
It's a bit worse when some tool like ack instead of being "better grep" has a shitload of ugly ascii-art in in, because it's a bit distracting when I read the sources or even man-page, but, again, it's not that bad. Stupid, useless, but maybe it's actually my problem I don't like it.
But here is a language compiler which is advertised as "as close to metal as C", "zero overhead" and stuff, and it puts some random text in my binaries! 2KB of it! It's just… marvelous!
Easter Eggs are fun in GTA Vice City or something, but these are tools, goddammit. Would you like it if your hammer would have a secret life, doing something you don't expect it to do? Smashing some details when you don't see it? Well, I wouldn't. And all I expect of a hammer is, well, being hit against some surface when I do so.
It's for people with a sense of humor.
http://www.christianpost.com/news/u-s-military-concerned-abo...
They and other designs, like my favorite the holographic EOTech, are sights designed and manufactured by independent companies that the US Army and Marines found to be useful in combat, one of the truly big advantages of our still having a serious civilian gun culture. And of course Trijicon fixed this after it was requested.
Note also that these are even better Easter eggs, in that one of Trijicon's claims to fame is using tritium to provide sight illumination in the dark, hence using references (not actual quotes) to Bible verses referencing "Jesus being the light of the world" per the article.
Whereas many people including myself are interested in Rust precisely because it promises to deliver us from the Lovecraftian horrors of C and C++ (although not this one: http://www.bobhobbs.com/files/kr_lovecraft.html).
You see, "quote stamped on the hammer" would be the case if it would have poetry in the comments in the sources (which is actually nice unless it raises real problems because of some folks who doesn't understand art, but, unfortunately, have a voice in somebody's organization, e.g. lawyers) or, at max (which actually is even closer to your example), if the compiler binaries itself would contain these quotes, which is weird, but still acceptable.
But this one hammer is stamping quotes on my details, really. I hope you can see the difference.
Edit: I think it's wrong to say it's weird; this thing has effectively been handcrafted with great care, and authored, not simply machined out of a production line - I think, in fact, it's a very normal thing to do (ignoring any performance issues etc)
Not quite 2k though. Isn't there something similar in the python stdlib as well? An xkcd reference or something?
from __future__ import braces
File "<stdin>", line 1
SyntaxError: not a chance