www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - The name "Phobos" in user-facing docs

reply John Gabriele <jgabriele fastmail.fm> writes:
After having started learning some D lately, two things about the 
standard library have struck me:

  1. It has its own name. Phobos. This is unusual. I don't know of 
any other language who's std lib has any name other than "the 
{lang} standard library". Why does it have its own distinct name, 
and why do I (as a user) need to know it?

  2. There is evidently *still* some lingering FUD out there about 
some long-since-settled dual-standard-library issue. I haven't 
been around here long enough, but I still see references to Tango 
here and there.

I think it would help D's image to simply remove the name 
"phobos" from any user-facing docs. That is, change "phobos" to 
"the standard library" everywhere users would be looking. (Of 
course, *internally* the name "phobos" may still be useful for 
repo names, mailing list names, and what have you.)

Just the fact that the std lib *has* it's own user-facing name 
suggests that there may be more than one standard library (or 
else, why would it need its own special name to begin with?). It 
may also imply that the door is open for some other young upstart 
library to swoop in usurp the title of official standard library. 
The standard library having its own distinct user-facing name 
appears to sow confusion.

Maybe, historically, it was useful to have distinct names for 
competing potential D standard libraries, in order to distinguish 
them. Is that still the case?
Jan 12 2018
next sibling parent reply Dukc <ajieskola gmail.com> writes:
On Friday, 12 January 2018 at 21:24:40 UTC, John Gabriele wrote:
  1. It has its own name. Phobos. This is unusual. I don't know 
 of any other language who's std lib has any name other than 
 "the {lang} standard library". Why does it have its own 
 distinct name, and why do I (as a user) need to know it?
Because Walter Bright's company is named Digital Mars, D was initially named "Mars programming language". I am fairly certain that's the original reason for the name of the library. After all, why change it now when it's in common use? Where I live we have a saying: "A dear child has many names".
Jan 12 2018
parent John Gabriele <jgabriele fastmail.fm> writes:
On Friday, 12 January 2018 at 22:24:16 UTC, Dukc wrote:
 On Friday, 12 January 2018 at 21:24:40 UTC, John Gabriele wrote:
  1. It has its own name. Phobos. This is unusual. I don't know 
 of any other language who's std lib has any name other than 
 "the {lang} standard library". Why does it have its own 
 distinct name, and why do I (as a user) need to know it?
Because Walter Bright's company is named Digital Mars, D was initially named "Mars programming language". I am fairly certain that's the original reason for the name of the library. After all, why change it now when it's in common use? Where I live we have a saying: "A dear child has many names".
I don't think it should be changed, just removed from a few user-facing spots to increase clarity and remove any doubt about what's the D standard library. Links and titles should just say "D Standard Library" or "Library Reference", and not mention "Phobos". It's a distraction to new users or possibly-returning-users who were around during the D1->D2 std lib transition. On <https://dlang.org/phobos/index.html>, it appears to me that it shouldn't say "phobos" anywhere (it's only in the top paragraphs as it is). Though maybe Walter or others like Phobos mentioned there for nostalgic reasons. Anyhow, my comments aren't intended as complaints, but rather what I see as low-hanging easy marketing improvements for D.
Jan 12 2018
prev sibling next sibling parent reply Michael <michael toohuman.io> writes:
On Friday, 12 January 2018 at 21:24:40 UTC, John Gabriele wrote:
 After having started learning some D lately, two things about 
 the standard library have struck me:

  1. It has its own name. Phobos. This is unusual. I don't know 
 of any other language who's std lib has any name other than 
 "the {lang} standard library". Why does it have its own 
 distinct name, and why do I (as a user) need to know it?

  2. There is evidently *still* some lingering FUD out there 
 about some long-since-settled dual-standard-library issue. I 
 haven't been around here long enough, but I still see 
 references to Tango here and there.

 I think it would help D's image to simply remove the name 
 "phobos" from any user-facing docs. That is, change "phobos" to 
 "the standard library" everywhere users would be looking. (Of 
 course, *internally* the name "phobos" may still be useful for 
 repo names, mailing list names, and what have you.)

 Just the fact that the std lib *has* it's own user-facing name 
 suggests that there may be more than one standard library (or 
 else, why would it need its own special name to begin with?). 
 It may also imply that the door is open for some other young 
 upstart library to swoop in usurp the title of official 
 standard library. The standard library having its own distinct 
 user-facing name appears to sow confusion.

 Maybe, historically, it was useful to have distinct names for 
 competing potential D standard libraries, in order to 
 distinguish them. Is that still the case?
I mean, you're correct to say it's an artifact of D being an old language. Tango was the original, and Phobos was introduced for D2 as a competing library. I don't see this as being confusing for new users. When I learnt D, I simply understood that the standard library was called "Phobos" instead of "STL" some other associated term. It didn't ever become confusing, and when I learnt about Tango I was immediately made aware (by the context) that Tango was simply the old standard library, where Phobos had replaced it. This isn't any more confusing than C99, C11 etc. as versioning numbers for updates to the language and their libraries. D1 and Tango, D2 and Phobos. I don't think it's common to get the impression that Tango is still a competing library, though that may differ for some users.
Jan 12 2018
next sibling parent Michael <michael toohuman.io> writes:
On Friday, 12 January 2018 at 22:26:38 UTC, Michael wrote:
 On Friday, 12 January 2018 at 21:24:40 UTC, John Gabriele wrote:
 [...]
I mean, you're correct to say it's an artifact of D being an old language. Tango was the original, and Phobos was introduced for D2 as a competing library. I don't see this as being confusing for new users. When I learnt D, I simply understood that the standard library was called "Phobos" instead of "STL" some other associated term. It didn't ever become confusing, and when I learnt about Tango I was immediately made aware (by the context) that Tango was simply the old standard library, where Phobos had replaced it. This isn't any more confusing than C99, C11 etc. as versioning numbers for updates to the language and their libraries. D1 and Tango, D2 and Phobos. I don't think it's common to get the impression that Tango is still a competing library, though that may differ for some users.
I also just really like the name and hope that kind of convention continues. You have a core language (Digital Mars (the planet), or D) and its accompanying moon (Tango, then Phobos). I think it suits the language.
Jan 12 2018
prev sibling parent ag0aep6g <anonymous example.com> writes:
On 01/12/2018 11:26 PM, Michael wrote:
 Tango was the original, and Phobos was introduced for D2 as a 
 competing library.
Phobos is the original. In D1, Tango was an alternative standard library. With D2, you have Phobos as the standard library and you can use Tango on top of it. http://code.dlang.org/packages/tango
Jan 12 2018
prev sibling parent Tony <tonytdominguez aol.com> writes:
I had similar feelings when starting out with D - "why don't they 
say "standard library" instead of "Phobos"? I don't know that it 
would change D's image, but I think it would be better for 
newcomers if they only saw "standard library".
Jan 12 2018