On Tuesday, 2 December 2014 at 21:10:33 UTC, Meta wrote:
On Tuesday, 2 December 2014 at 16:38:34 UTC, Mayuresh Kathe
wrote:
While I have been a programmer for close to 23 years, it's
been mostly API level code cobbling work.
Would like to learn "D", but am a bit intimidated by the fact
that I don't have much of a grasp over the foundational stuff
(discrete mathematics, machine organization, etc.) and hence
am preparing for the same.
Would like to know if there be anything else I should work
through before approaching "D" via Mr. Alexandrescu's book.
Thanks.
An interesting thing about D (that C++ shares to a degree) is
that it is sufficiently high level that you can write programs
while knowing nothing about the underlying machine. At the same
time (again, like C++) it is sufficiently low level that you
have full access to the machine's capabilities if you want to
use them. If you want to write an operating system in D, you
will need to know about machine organization. If you are
writing a command-line utility to process text, you don't need
to know or care about the specifics of the underlying hardware.
And don't forget - and I'll say this again and again - the
modeling power of D. Machines are only as intelligent as we make
them (not talking about Terminator or The Matrix here!) and D is
a good tool to make a machine work like reality.