Difference between revisions of "Articles"

From D Wiki
Jump to: navigation, search
(Inheriting Purity)
(Fixed my name)
 
(72 intermediate revisions by 19 users not shown)
Line 1: Line 1:
== Architecture and Design ==
+
{{Article Group
* [http://www.drdobbs.com/architecture-and-design/component-programming-in-d/240008321 Component Programming in D] -- Walter Bright, 02-Oct-2012
+
| Name = Beginning
 +
| Articles =
  
== General ==
+
{{Article
* [http://semitwist.com/articles/article/view/dispelling-common-d-myths Dispelling Common D Myths] - Nicholas Sabalausky
+
| name = Dispelling Common D Myths
* [http://klickverbot.at/blog/2012/05/purity-in-d/ Purity in D] – David Nadlinger
+
| url = http://semitwist.com/articles/article/view/dispelling-common-d-myths
* [http://www.drdobbs.com/cpp/nans-just-dont-get-no-respect/240005723 NaNs Just Don't Get No Respect] -- Walter Bright, 16-Aug-2012
+
| author = Nick Sabalausky ("Nicolas", not "Nicholas")
* [http://www.drdobbs.com/cpp/voldemort-types-in-d/232901591 Voldemort Types In D] -- Walter Bright, 07-May-2012
+
}}
* [http://www.drdobbs.com/cpp/uniform-function-call-syntax/232700394 Uniform Function Call Syntax] (UFCS) -
 
- Walter Bright, 28-Mar-2012
 
* [http://www.drdobbs.com/cpp/inheriting-purity/232601305 Inheriting Purity] -- Walter Bright, 22-Feb-2012
 
  
== Concurrency ==
+
{{Article
* [http://octarineparrot.com/article/view/getting-more-fiber-in-your-diet Getting more fiber in your diet] - OctarineParrot DevLog
+
| name = "D"iving Into the D Programming Language
 +
| url = http://www.informit.com/articles/article.aspx?p=1381876
 +
| author = Andrei Alexandrescu
 +
}}
 +
 
 +
{{Article
 +
| name = D: A Newbie-Oriented Tutorial
 +
| url = http://compsci.ca/v3/viewtopic.php?t=9518
 +
| author = Andrei Alexandrescu
 +
}}
 +
 
 +
{{Article
 +
| name = The Case for D
 +
| url = http://www.drdobbs.com/parallel/the-case-for-d/217801225
 +
| author = Andrei Alexandrescu
 +
| published = June 15, 2009
 +
}}
 +
 
 +
{{Article
 +
| name = Getting Started with the D Programming Language
 +
| url = http://www.gamedev.net/page/resources/_/technical/general-programming/getting-started-with-the-d-programming-language-r3306
 +
| author = Michael Parker
 +
}}
 +
{{Article
 +
| name = Sockets introduction
 +
| url = http://dpldocs.info/this-week-in-d/Blog.Posted_2019_11_11.html#sockets-tutorial
 +
| author = Adam D. Ruppe
 +
| published = November 11, 2019
 +
 
 +
}}
 +
 
 +
 
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = General
 +
| Articles =
 +
 
 +
 
 +
 
 +
{{Article
 +
| name = Real Close to the Machine: Floating Point in D
 +
| url = https://dlang.org/d-floating-point.html
 +
| author = Don Clugston
 +
| published =
 +
}}
 +
 
 +
{{Article
 +
| name = Functional image processing in D
 +
| url = http://blog.thecybershadow.net/2014/03/21/functional-image-processing-in-d/
 +
| author = Vladimir Panteleev
 +
| published = March 21, 2014
 +
}}
 +
 
 +
{{Article
 +
| name = Implementing Pure Functions
 +
| url = http://www.drdobbs.com/tools/implementing-pure-functions/230700070#
 +
| author = Walter Bright
 +
| published = June 15, 2011
 +
}}
 +
 
 +
{{Article
 +
| name = NaNs Just Don't Get No Respect
 +
| url = http://www.drdobbs.com/cpp/nans-just-dont-get-no-respect/240005723
 +
| author = Walter Bright
 +
| published = August 16, 2012
 +
}}
 +
 
 +
{{Article
 +
| name = Voldemort Types In D
 +
| url = http://www.drdobbs.com/cpp/voldemort-types-in-d/232901591
 +
| author = Walter Bright
 +
| published = May 07, 2012
 +
}}
 +
 
 +
{{Article
 +
| name = Increasing Compiler Speed by Over 75%
 +
| url = http://www.drdobbs.com/cpp/increasing-compiler-speed-by-over-75/240158941#
 +
| author = Walter Bright
 +
| published = July 25, 2013
 +
}}
 +
 
 +
{{Article
 +
| name = DCompute: Running D on the GPU
 +
| url = https://dlang.org/blog/2017/10/30/d-compute-running-d-on-the-gpu/
 +
| author = Nicholas Wilson
 +
| published = October 30, 2017
 +
}}
 +
 
 +
{{Article
 +
  | name = Faster Command Line Tools in D
 +
  | url = https://dlang.org/blog/2017/05/24/faster-command-line-tools-in-d/
 +
  | author = Jon Degenhardt
 +
  | published = May 24, 2017
 +
}}
 +
 
 +
{{Article
 +
| name = Useful Workarounds
 +
}}
 +
 
 +
{{Article
 +
| name  = D as a Better C
 +
| url  = https://dlang.org/blog/2017/08/23/d-as-a-better-c/
 +
| author = Walter Bright
 +
| published = August 23, 2017
 +
}}
 +
 
 +
{{Article
 +
| name = SafeD
 +
| url = https://dlang.org/safed.html
 +
| author = Bartosz Milewski
 +
| published =
 +
}}
 +
 
 +
 
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Memory Management
 +
| Articles =
 +
 
 +
{{Article
 +
| name = Memory Management
 +
}}
 +
 
 +
{{Article
 +
| name = Real World Comparison, GC vs. Manual Memory Management
 +
| url = http://3d.benjamin-thaut.de/?p=20
 +
| author = Benjamin Thaut
 +
}}
 +
 
 +
{{Article
 +
| name = Don’t Fear the Reaper - A Basic Introduction to the GC
 +
| url = https://dlang.org/blog/2017/03/20/dont-fear-the-reaper/
 +
| author = Michael Parker
 +
| published = March 20, 2017
 +
}}
 +
 
 +
{{Article
 +
| name = Life in the Fast Lane - Introduction to Avoiding the GC and GC Profiling
 +
| url = https://dlang.org/blog/2017/06/16/life-in-the-fast-lane/
 +
| author = Michael Parker
 +
| published = June 16, 2017
 +
}}
 +
 
 +
{{Article
 +
| name = Go Your Own Way (Part One: The Stack)
 +
| url = https://dlang.org/blog/2017/07/07/go-your-own-way-part-one-the-stack/
 +
| author = Michael Parker
 +
| published = July 7, 2017
 +
}}
 +
 
 +
{{Article
 +
| name = Go Your Own Way (Part Two: The Heap)
 +
| url = https://dlang.org/blog/2017/09/25/go-your-own-way-part-two-the-heap/
 +
| alt1 = [http://dblog-ext.info/articles/gc-part4.html extended info]
 +
| author = Michael Parker
 +
| published = September 25, 2017
 +
}}
 +
 
 +
{{Article
 +
| name = Memory Safety
 +
| url = https://jakobovrum.github.io/d/2016/01/20/memory-safety.html
 +
| author = Jakob Øvrum
 +
| published = January 20 2016
 +
}}
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Templates
 +
| Articles =
 +
 
 +
{{Article
 +
| name = Introduction to D templates
 +
}}
 +
 
 +
{{Article
 +
| name = Templates in D Explained
 +
| url = http://nomad.so/2013/07/templates-in-d-explained/
 +
| author = Gary Willoughby
 +
}}
 +
 
 +
{{Article
 +
| name = The ABC’s of Templates in D
 +
| url = https://dlang.org/blog/2020/07/31/the-abcs-of-templates-in-d/
 +
| author = Michael Parker
 +
| published = July 31, 2020
 +
}}
 +
 
 +
{{Article
 +
| name = Templates Primer, In D
 +
| url = https://semitwist.com/articles/article/view/template-primer-in-d
 +
| author = Nick Sabalausky ("Nicolas", not "Nicholas")
 +
}}
 +
 
 +
{{Article
 +
| name = Understanding Templates in D2 (PDF)
 +
| url = https://github.com/PhilippeSigaud/D-templates-tutorial/blob/master/D-templates-tutorial.pdf?raw=true
 +
| alt1 = [https://github.com/PhilippeSigaud/D-templates-tutorial/blob/master/D-templates-tutorial.epub?raw=true EPUB]
 +
| author = Philippe Sigaud
 +
}}
 +
 
 +
{{Article
 +
| name = Comparison of C++ and D Templates
 +
| url = https://dlang.org/articles/template-comparison.html
 +
}}
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Features
 +
| Articles =
 +
 
 +
 
 +
{{Article
 +
| name = Uniform Function Call Syntax
 +
| url = http://www.drdobbs.com/cpp/uniform-function-call-syntax/232700394
 +
| author = Walter Bright
 +
| published = March 28, 2012
 +
}}
 +
 
 +
{{Article
 +
| name = Rationale for D built-ins: (Dynamic Arrays, Strings, Associative Arrays)
 +
| url = https://dlang.org/articles/builtin.html
 +
| author =
 +
| published =
 +
}}
 +
 
 +
{{Article
 +
| name = Understanding Ranges (adapted from Chapter 6 of the book Learning D)
 +
| url = https://www.packtpub.com/books/content/understanding-ranges
 +
| author = Michael Parker
 +
| published = December 2015
 +
}}
 +
 
 +
{{Article
 +
| name = D's Auto Decoding and You
 +
| url = https://jackstouffer.com/blog/d_auto_decoding_and_you.html
 +
| author = Jack Stouffer
 +
| published = May 2016
 +
}}
 +
 
 +
{{Article
 +
| name = Purity in D
 +
| url = http://klickverbot.at/blog/2012/05/purity-in-d/
 +
| author = David Nadlinger
 +
}}
 +
 
 +
{{Article
 +
| name = Inheriting Purity
 +
| url = http://www.drdobbs.com/cpp/inheriting-purity/232601305
 +
| author = Walter Bright
 +
| published = February 22, 2012
 +
}}
 +
 
 +
{{Article
 +
| name = Unit Testing In Action
 +
| url = https://dlang.org/blog/2017/10/20/unit-testing-in-action/
 +
| author = Mario Kröplin
 +
| published = October 20, 2017
 +
}}
 +
 
 +
{{Article
 +
| name = Compile-Time Sort in D
 +
| url = https://dlang.org/blog/2017/06/05/compile-time-sort-in-d/
 +
| author = Michael Parker
 +
| published = June 5, 2017
 +
}}
 +
 
 +
{{Article
 +
| name = D Slices
 +
| url = https://dlang.org/d-array-article.html
 +
| author = Steven Schveighoffer
 +
| published = 2011-2012
 +
}}
 +
 
 +
{{Article
 +
| name = Defining custom print format specifiers
 +
}}
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Modules
 +
| Articles =
 +
 
 +
{{Article
 +
| name = Introduction to std.datetime
 +
| url = https://dlang.org/articles/intro-to-datetime.html
 +
| author = Jonathan M Davis
 +
| published = 2011
 +
}}
 +
 
 +
{{Article
 +
| name = std.variant Is Everything Cool About D
 +
| url = https://dlang.org/blog/2018/03/29/std-variant-is-everything-cool-about-d/
 +
| author = Jared Hanson
 +
| published = March 29, 2018
 +
}}
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Architecture and Design
 +
| Articles =
 +
 
 +
{{Article
 +
| name = Component Programming in D
 +
| url = http://www.drdobbs.com/architecture-and-design/component-programming-in-d/240008321
 +
| author = Walter Bright
 +
| published = October 2, 2012
 +
}}
 +
 
 +
{{Article
 +
| name = Component programming with ranges 
 +
| author = H. S. Teoh
 +
| published = August 6, 2013
 +
}}
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Concurrency
 +
| Articles =
 +
 
 +
{{Article
 +
| name = Concurrency in the D Programming Language
 +
| url = http://www.informit.com/articles/article.aspx?p=1609144
 +
| author = Andrei Alexandrescu
 +
| published = July 6, 2010
 +
}}
 +
 
 +
{{Article
 +
| name = Getting more fiber in your diet
 +
| url = http://octarineparrot.com/article/view/getting-more-fiber-in-your-diet
 +
| author = OctarineParrot DevLog
 +
}}
 +
 
 +
{{Article
 +
| name = Go to D
 +
| author = Jin
 +
}}
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Operating System Development
 +
| Articles =
 +
 
 +
{{Article
 +
| name = D Bare Bones
 +
| url = http://wiki.osdev.org/D_Bare_Bones
 +
| author = Unknown
 +
}}
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Metaprogramming
 +
| Articles =
 +
 
 +
{{Article
 +
| name = Have Your Efficiency, and Flexibility Too - Metaprogramming Techniques For No-Compromise Code
 +
| url = http://www.semitwist.com/articles/EfficientAndFlexible/SinglePage/
 +
| author = Nick Sabalausky ("Nicolas", not "Nicholas")
 +
}}
 +
 
 +
{{Article
 +
| name = Transforming an array/slice of structs into a struct of arrays/slices using metaprogramming
 +
| url = http://wiki.dlang.org/Transforming_slice_of_structs_into_struct_of_slices
 +
| author = Laeeth Isharc for the D forums
 +
}}
 +
 
 +
{{Article
 +
| name = Compile-time vs. compile-time
 +
| author = H. S. Teoh
 +
| published = March, 2017
 +
}}
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Windows Specific
 +
| Articles =
 +
 
 +
{{Article
 +
| name = Compiling and linking with DMD on Windows
 +
}}
 +
 
 +
{{Article
 +
| name = Linking With Unilink
 +
}}
 +
 
 +
{{Article
 +
| name = Using Windows Resource Files with D2
 +
}}
 +
 
 +
{{Article
 +
| name = Programming Windows code samples translated to D2
 +
| url = https://github.com/AndrejMitrovic/DWinProgramming
 +
| author = Andrej Mitrovic
 +
}}
 +
 
 +
{{Article
 +
  | name = DMD, Windows and C
 +
  | url = https://dlang.org/blog/2017/10/25/dmd-windows-and-c/
 +
  | author = Michael Parker
 +
  | published = October 25, 2017
 +
}}
 +
 
 +
}}
 +
 
 +
{{Article Group
 +
| Name = Interfacing to C
 +
| Articles =
 +
 
 +
{{Article
 +
| name = Interfacing D with C: Getting Started
 +
| url = https://dlang.org/blog/2017/12/05/interfacing-d-with-c-getting-started/
 +
| author =  Michael Parker
 +
| published = December 05, 2017
 +
}}
 +
 
 +
{{Article
 +
| name = D Exceptions and C Callbacks
 +
| url = http://www.gamedev.net/page/resources/_/technical/general-programming/d-exceptions-and-c-callbacks-r3323
 +
| author =  Michael Parker
 +
}}
 +
 
 +
{{Article
 +
| name = Binding D to C Part 1
 +
| url = http://www.gamedev.net/blog/1140/entry-2254003-binding-d-to-c/
 +
| author =  Michael Parker
 +
}}
 +
 
 +
{{Article
 +
| name = Binding D to C Part 2
 +
| url = http://www.gamedev.net/blog/1140/entry-2254108-binding-d-to-c-part-two/
 +
| author =  Michael Parker
 +
}}
 +
 
 +
{{Article
 +
| name = Binding D to C Part 3
 +
| url = http://www.gamedev.net/blog/1140/entry-2254632-binding-d-to-c-part-three/
 +
| author =  Michael Parker
 +
}}
 +
 
 +
{{Article
 +
| name = Binding D to C Part 4
 +
| url = http://www.gamedev.net/blog/1140/entry-2254910-binding-d-to-c-part-four/
 +
| author =  Michael Parker
 +
}}
 +
 
 +
{{Article
 +
| name =  Binding D to C Part 5
 +
| url = http://www.gamedev.net/blog/1140/entry-2255632-binding-d-to-c-part-five/
 +
| author =  Michael Parker
 +
}}
 +
 
 +
}}
 +
 
 +
== See also ==
 +
*[[Interviews]]
 +
*[[Videos]]
 +
 
 +
[[Category:Learn]]

Latest revision as of 04:29, 14 September 2022

Beginning

General

Memory Management

Templates

Features

Modules

Architecture and Design

Concurrency

Operating System Development

Metaprogramming

Windows Specific

Interfacing to C

See also