Language Specification /
Original
Difference (last change) (no other diffs, normal page display)
Changed: 1c1
Original chapters of the D language specification: (let's keep the list below in sync with the specs). |
Original chapters of the D language specification: (let's keep the list below in sync with the specs). |
Changed: 5,7c5,7
* Introduction * Overview * Lexical |
* Introduction * Overview * Lexical |
Changed: 9c9
* Modules |
* Modules |
Changed: 11,14c11,14
* Declarations ** typedef, alias, const, static, final, synchronized, deprecated * Types * Properties |
* Declarations ** typedef, alias, const, static, final, synchronized, deprecated * Types * Properties |
Changed: 17,32c17,32
* Attributes ** extern, deprecated, private, protected, public, export, static, final, override, abstract, const, auto * Expressions ** this, super, null, true, false, assert, function, delegate * Statements ** Labeled Statements, Blocks, if, debug & version, while, do, for, switch/default, continue, break, return, goto, with, synchronize, try/catch/finally, throw, volatile, asm * Arrays ** Prefix and Postfix Declarations, Slicing, Array operations ** Array properties: .size, .length, .dup, .sort, .reverse, Bounds Checking, Arrays of Bits, Strings ** Associative Arrays properties: .size, .length, .keys, .values, .rehash * Structs, Unions, Enums * Classes ** fields, super class, constructors, destructors, invariant, unittest, Class Allocators and Deallocators, Auto Classes, Interfaces * Functions ** Covariant, Overloading, Parameters (in, out, inout), Nested Functions, Delegates, Function Pointers, Dynamic Closures * Operator Overloading |
* Attributes ** extern, deprecated, private, protected, public, export, static, final, override, abstract, const, auto * Expressions ** this, super, null, true, false, assert, function, delegate * Statements ** Labeled Statements, Blocks, if, debug & version, while, do, for, switch/default, continue, break, return, goto, with, synchronize, try/catch/finally, throw, volatile, asm * Arrays ** Prefix and Postfix Declarations, Slicing, Array operations ** Array properties: .size, .length, .dup, .sort, .reverse, Bounds Checking, Arrays of Bits, Strings ** Associative Arrays properties: .size, .length, .keys, .values, .rehash * Structs, Unions, Enums * Classes ** fields, super class, constructors, destructors, invariant, unittest, Class Allocators and Deallocators, Auto Classes, Interfaces * Functions ** Covariant, Overloading, Parameters (in, out, inout), Nested Functions, Delegates, Function Pointers, Dynamic Closures * Operator Overloading |
Changed: 34,36c34,36
* Templates * Contracts * Versioning |
* Templates * Contracts * Versioning |
Changed: 38,42c38,42
Changed: 45c45
* Inline Assembler |
* Inline Assembler |
Changed: 47,62c47,62
* Interfacing To C * Portability Guide * Embedding D in HTML * Memory Model * Phobos (Runtime Library) * D for Win32 * C .h to D Modules * FAQ * Style Guide * [Example: http://www.digitalmars.com/d/wc.html wc]: classic word count program * D Compiler * Future * D Change Log (download, revisions) * D Links * Forum, http://www.digitalmars.com/drn-bin/wwwnews?D * Acknowledgements |
* Interfacing To C * Portability Guide * Embedding D in HTML * Memory Model * Phobos (Runtime Library) * D for Win32 * C .h to D Modules * FAQ * Style Guide * [Example: DigitalMars:d/wc.html wc]: classic word count program * D Compiler * Future * D Change Log (download, revisions) * D Links * Forum, digitalmars.D newsgroup * Acknowledgements |
Changed: 65,72c65,71
* D vs C/C++/C#/Java * Converting C to D * Converting C++ to D * The C Preprocessor vs D * D strings vs C++ std::string * D complex vs C++ std::complex * D Design by Contract vs C++ |
* D vs C/C++/C#/Java * Converting C to D * Converting C++ to D * The C Preprocessor vs D * D strings vs C++ std::string * D complex vs C++ std::complex * D Design by Contract vs C++ |
Original chapters of the D language specification: (let's keep the list below in sync with the specs).
You can take these links and create your own ordering you find intuitive.
- Introduction
- Overview
- Lexical
- Compilation phases, Source File encodings, Literals, Keywords, Tokens, Pragmas
- Modules
- Imports, Static Construction and Destruction
- Declarations
- Types
- Properties
- Integral Types: .init .size .max .min .sign (?)
- Floating Point Types: .init .size .max .min .sign / .nan .isnan .infinity .isinfinity .isnormal .digits .epsilon .mantissa .maxExp
- Attributes
- extern, deprecated, private, protected, public, export, static, final, override, abstract, const, auto
- Expressions
- Statements
- Labeled Statements, Blocks, if, debug & version, while, do, for, switch/default, continue, break, return, goto, with, synchronize, try/catch/finally, throw, volatile, asm
- Arrays
- Prefix and Postfix Declarations, Slicing, Array operations
- Array properties: .size, .length, .dup, .sort, .reverse, Bounds Checking, Arrays of Bits, Strings
- Associative Arrays properties: .size, .length, .keys, .values, .rehash
- Structs, Unions, Enums
- Classes
- fields, super class, constructors, destructors, invariant, unittest, Class Allocators and Deallocators, Auto Classes, Interfaces
- Functions
- Covariant, Overloading, Parameters (in, out, inout), Nested Functions, Delegates, Function Pointers, Dynamic Closures
- Operator Overloading
- opfunc: opNeg, opCom, opPostInc, opPostDec; opAdd, opSub, opMul, opDiv, opMod, opAnd, opOr, opXor, opShl, opShr, opUShr, opCat, opEquals, opCmp, opAddAssign, opSubAssign, opMulAssign, opDivAssign, opModAssign, opAndAssign, opOrAssign, opXorAssign, opShlAssign, opUshAssign, opCatAssign, opCall, opIndex, opSlice
- Templates
- Contracts
- Versioning
- Predefined Versions: DigitalMars, X86, Win32, linux, LittleEndian, BigEndian, D_InlineAsm, none
- Handling errors
- Garbage Collection
- Memory Management
- Copy On Write, Real Time (considerations), Free Lists, reference counting, Explicit Class Instance Allocation, Mark/Release, RAII, Allocating Class Instances On The Stack
- Floating Point
- Complex and Imaginary types, (e.g. 4.5 + 2i),
- Complex number properties: .re, .im
- Inline Assembler
- align, even, naked, Opcodes, $, __LOCAL_SIZE
- Interfacing To C
- Portability Guide
- Embedding D in HTML
- Memory Model
- Phobos (Runtime Library)
- D for Win32
- C .h to D Modules
- FAQ
- Style Guide
- [Example: DigitalMars:d/wc.html wc]: classic word count program
- D Compiler
- Future
- D Change Log (download, revisions)
- D Links
- Forum, digitalmars.D newsgroup
- Acknowledgements
- D vs C/C++/C#/Java
- Converting C to D
- Converting C++ to D
- The C Preprocessor vs D
- D strings vs C++ std::string
- D complex vs C++ std::complex
- D Design by Contract vs C++