www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Need to find materials for new learners about this programming

reply nickjonson <jonsonnick31 gmail.com> writes:
I am new to this programming language, so I really need learning 
materials about it, I searched online and they mostly just guided 
me.
Aug 06
next sibling parent Max Haughton <maxhaton gmail.com> writes:
On Tuesday, 6 August 2019 at 07:28:04 UTC, nickjonson wrote:
 I am new to this programming language, so I really need 
 learning materials about it, I searched online and they mostly 
 just guided me.
Ali's book is probably the best from-scratch introduction (linked on the homepage). There is also the tour on the homepage, which you can (and should) play with
Aug 06
prev sibling next sibling parent reply Max Haughton <maxhaton gmail.com> writes:
On Tuesday, 6 August 2019 at 07:28:04 UTC, nickjonson wrote:
 I am new to this programming language, so I really need 
 learning materials about it, I searched online and they mostly 
 just guided me.
http://ddili.org/ders/d.en/index.html
Aug 06
parent nickjonson <jonsonnick31 gmail.com> writes:
On Tuesday, 6 August 2019 at 07:34:58 UTC, Max Haughton wrote:
 On Tuesday, 6 August 2019 at 07:28:04 UTC, nickjonson wrote:
 I am new to this programming language, so I really need 
 learning materials about it, I searched online and they mostly 
 just guided me.
http://ddili.org/ders/d.en/index.html
Thank you very much
Aug 06
prev sibling next sibling parent reply RazvanN <razvan.nitu1305 gmail.com> writes:
On Tuesday, 6 August 2019 at 07:28:04 UTC, nickjonson wrote:
 I am new to this programming language, so I really need 
 learning materials about it, I searched online and they mostly 
 just guided me.
You can also use the materials we developed for our D ramp up Summer School [1]. It is not extensive, but it is more condensed. [1] https://ocw.cs.pub.ro/courses/dss
Aug 06
parent reply bpr <brogoff gmail.com> writes:
On Tuesday, 6 August 2019 at 07:45:01 UTC, RazvanN wrote:
 On Tuesday, 6 August 2019 at 07:28:04 UTC, nickjonson wrote:
 I am new to this programming language, so I really need 
 learning materials about it, I searched online and they mostly 
 just guided me.
You can also use the materials we developed for our D ramp up Summer School [1]. It is not extensive, but it is more condensed. [1] https://ocw.cs.pub.ro/courses/dss
Cool! One thing I didn't care for reading this that templates are introduced via the shorthand for function and struct/class templates, rather than introducing the general template mechanism first and then showing the shorthand. Templates are one of D's best features and I don't think they should be cropped to fit the C++ viewpoint.
Aug 06
parent reply =?UTF-8?Q?Ali_=c3=87ehreli?= <acehreli yahoo.com> writes:
On 08/06/2019 10:52 AM, bpr wrote:
 On Tuesday, 6 August 2019 at 07:45:01 UTC, RazvanN wrote:
 On Tuesday, 6 August 2019 at 07:28:04 UTC, nickjonson wrote:
 I am new to this programming language, so I really need learning
 materials about it, I searched online and they mostly just guided me.
You can also use the materials we developed for our D ramp up Summer School [1]. It is not extensive, but it is more condensed. [1] https://ocw.cs.pub.ro/courses/dss
Cool! One thing I didn't care for reading this that templates are introduced via the shorthand for function and struct/class templates, rather than introducing the general template mechanism first and then showing the shorthand. Templates are one of D's best features and I don't think they should be cropped to fit the C++ viewpoint.
I think it comes from my earlier choice of that order. (RazvanN and others relied of my format.) I don't remember now exactly why but it was usually for trying to minimize forward references. The actual syntax appears 14 chapters after the shorthand syntax: http://ddili.org/ders/d.en/templates_more.html Ali
Aug 06
next sibling parent RazvanN <razvan.nitu1305 gmail.com> writes:
On Tuesday, 6 August 2019 at 18:58:20 UTC, Ali Çehreli wrote:
 I think it comes from my earlier choice of that order. (RazvanN 
 and others relied of my format.)
That is partly true. We were more concerned with students understanding the basics of templates in general, so we wanted to avoid anything that might cause confusion. The shorthand syntax is simpler and allowed us to focus on the core concepts of templates and template instantiations. Later on, after they get a bit of experience, understanding the general form and syntax will come naturally.
Aug 06
prev sibling parent reply bpr <brogoff gmail.com> writes:
On Tuesday, 6 August 2019 at 18:58:20 UTC, Ali Çehreli wrote:
 On 08/06/2019 10:52 AM, bpr wrote:
 Cool! One thing I didn't care for reading this that templates
are
 introduced via the shorthand for function and struct/class
templates,
 rather than introducing the general template mechanism first
and then
 showing the shorthand. Templates are one of D's best features
and I
 don't think they should be cropped to fit the C++ viewpoint.
I think it comes from my earlier choice of that order. (RazvanN and others relied of my format.) I don't remember now exactly why but it was usually for trying to minimize forward references. The actual syntax appears 14 chapters after the shorthand syntax: http://ddili.org/ders/d.en/templates_more.html Ali
Oh I didn't realize that, and didn't mean to disparage your book, which is an outstanding introduction to D aimed at beginning programmers. I assumed that the page I cited was intended for people who knew a bit about programming. That said, have you ever considered introducing it the other way? The full D template is powerful, and reminds me a bit of the parameterized modules of ML family languages like OCaml and SML.
Aug 06
next sibling parent =?UTF-8?Q?Ali_=c3=87ehreli?= <acehreli yahoo.com> writes:
On 08/06/2019 05:40 PM, bpr wrote:

   http://ddili.org/ders/d.en/templates_more.html
 didn't mean to disparage your book
No worries; I did not read it that way. :)
 have you ever considered introducing it
 the other way?
[Introducing the full template syntax after the shorthand syntax.] I'm with Razvan on this one: The simple syntax is very approachable and makes it very easy to introduce the topic. Elsewhere, I chose the reverse order when introducing loops: - First the while loop - Then the for loop - Then the foreach loop (- And finally iterating over user defined types and ranges) Some people argue that the order should be reversed because foreach is what we should mostly be using but I think looping is a relatively simple concept that going from bottom up was the right decision there. With the lambda syntax, I chose the full syntax first and then the => syntax: http://ddili.org/ders/d.en/lambda.html#ix_lambda.=%3E Ali
Aug 06
prev sibling parent aberba <karabutaworld gmail.com> writes:
On Wednesday, 7 August 2019 at 00:40:09 UTC, bpr wrote:
 On Tuesday, 6 August 2019 at 18:58:20 UTC, Ali Çehreli wrote:
 On 08/06/2019 10:52 AM, bpr wrote:
 Oh I didn't realize that, and didn't mean to disparage your 
 book, which is an outstanding introduction to D aimed at 
 beginning programmers. I assumed that the page I cited was 
 intended for people who knew a bit about programming. That 
 said, have you ever considered introducing it the other way?
https://github.com/aberba/learn-coding
Aug 08
prev sibling parent Guillaume Piolat <first.last gmail.com> writes:
On Tuesday, 6 August 2019 at 07:28:04 UTC, nickjonson wrote:
 I am new to this programming language, so I really need 
 learning materials about it, I searched online and they mostly 
 just guided me.
https://p0nce.github.io/d-idioms/#Which-book-should-I-read?
Aug 06