D (programming language)

D programming language
D Programming Language logo.svg
Paradigm compiled, multi-paradigm: procedural, object-oriented, functional, generic, concurrent
Designed by Walter Bright, Andrei Alexandrescu (since 2007)
Developer D Language Foundation
First appeared 8 December 2001; 16 years ago (2001-12-08)[1]
Stable release
2.078.2[2] / 8 February 2018; 14 days ago (2018-02-08)[3]
Typing discipline strong, static, inferred
OS Unix-like (FreeBSD, Linux etc.), Windows, macOS
License Boost[4][5][6]
Filename extensions .d
Website dlang.org
Major implementations
DMD (reference implementation), GDC, LDC, SDC
Influenced by
C, C++, C#, Eiffel,[7] Java, Python
Influenced
MiniD, DScript, Vala, Qore, Swift,[8] Genie

The D programming language is an object-oriented, imperative, multi-paradigm system programming language created by Walter Bright of Digital Mars and released in 2001. Bright was joined in the design and development effort in 2007 by Andrei Alexandrescu. Though it originated as a re-engineering of C++, D is a distinct language, having redesigned some core C++ features while also taking inspiration from other languages, notably Java, Python, Ruby, C#, and Eiffel.

D's design goals attempt to combine the performance and safety of compiled languages with the expressive power of modern dynamic languages. Idiomatic D code is commonly as fast as equivalent C++ code, while being shorter[9] and memory-safe.[10]

Type inference, automatic memory management and syntactic sugar for common types allow faster development, while bounds checking, design by contract features and a concurrency-aware type system help reduce the occurrence of bugs.[11]

  1. ^ Cite error: The named reference D1 changelog1 was invoked but never defined (see the help page).
  2. ^ "Change Log: 2.078.2 – D Programming Language". D Programming Language 2.0. D Language Foundation. Retrieved 8 February 2018. 
  3. ^ "DMD 2.078.0 Released". Retrieved 4 January 2018. 
  4. ^ "dmd front end now switched to Boost license". Retrieved 9 September 2014. 
  5. ^ "dmd Backend converted to Boost License". 7 April 2017. Retrieved 9 April 2017. 
  6. ^ "D 2.0 FAQ". Retrieved 11 August 2015. 
  7. ^ Alexandrescu, Andrei (2010). The D programming language (First ed.). Upper Saddle River, NJ: Addison-Wesley. p. 314. ISBN 0321635361. 
  8. ^ "Building assert() in Swift, Part 2: __FILE__ and __LINE__". Retrieved 25 September 2014. 
  9. ^ Cite error: The named reference short was invoked but never defined (see the help page).
  10. ^ Bright, Walter. D programming Language Specification (e-book ed.). 7227: Digital Mars (via Amazon).  Memory Safety has an entire chapter, with recipes. It's a major theme of the language. Failures to reach this standard are defects.
  11. ^ Andrei Alexandrescu (2 August 2010). Three Cool Things About D. 

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Nelliwinne