www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - core languga

reply %u <uuuuuu gmial.com> writes:
Hi
excuse my ignorance

what does that term mean?
and what the different b/w learning D & pobos
Feb 09 2011
parent Jonathan M Davis <jmdavisProg gmx.com> writes:
On Wednesday, February 09, 2011 13:43:14 %u wrote:
 Hi
 excuse my ignorance
 
 what does that term mean?
 and what the different b/w learning D & pobos
??? I think that you needed to read over that message again before sending it. It's not exactly clear. If you're asking about the term "core language," that refers to the language itself rather than any of its libraries. So, if you're talking about the core language, then you're talking about the programming language itself and not any of its libraries. As for the difference between D and Phobos, D is the language, and Phobos is its standard library. You can technically use D without ever using Phobos, but most programs are likely to use Phobos, and I would expect that in the long run, it will be a very rare program indeed which doesn't use Phobos at all. Pretty much every programming language has a separation between the language itself and its standard library, but pretty much everyone uses the standard library. For instance, would you use Java without ArrayList or C++ without vector? You _can_, but most people don't. With any programming language, you have to learn the language itself to use it, and the language itself will generally lean towards certain programming paradigms and ways of doing things. On top of that, the standard library will then generally give you base functionality that most people need but isn't in the language itself, and the standard library will then tend to do things in a particular way and follow certain programming paradigms. So, if you learn to use the standard library of a language well, then you're likely to program in certain ways that you wouldn't necessarily do yourself if you just took the core language and used only your own libraries. D and Phobos are no different in that respect than any other programming language. The language itself has certain facilities that support and encourage certain ways of programming. Phobos builds on that and adds its own concepts and ways of doing things. For instance, ranges are essentially a thing of Phobos and not the language itself (though the language itself does understand them enough for you to be able to use input ranges in foreach loops). So, you could program in D just fine without knowing anything about ranges or using them at all, but if you want to use Phobos, you're likely going to have to learn about and use ranges. So, as with any programming language, if you want to be proficient in D, then you're really going to have learn both the core language and the standard library. - Jonathan M Davis
Feb 09 2011