Beyond D2

From D Wiki
Revision as of 00:30, 10 November 2013 by Timotheecour (talk | contribs)
Jump to: navigation, search

D questionable design choices

DMD

fix export DIP45

Get the DIP approved by Walter. Prototype an implementation to find further issues.

complete "Cross-module template overload" feature

https://github.com/D-Programming-Language/dmd/pull/2417

complete DIP42 feature

Related
https://github.com/D-Programming-Language/dmd/pull/2559
Allow lazy evaluation in manifest constant initializer.

introduce "uniform construction" syntax

Because it is already approved by Andrei.
https://github.com/D-Programming-Language/dmd/pull/1356

Druntime

high-level shared library support

Initial work in pull request #617. Need to improve the API of the Library wrapper.

Phobos

Reduce dependency hell, split up huge modules to enable fine-grained imports.

More safety - @safe writeln ?

Split std.datetime so that it's a package rather than a module.

Rework std.variant's Algebraic (ADTs)

  • add compile-time checking that all possible types are handled by user code
  • allow recursive data types

Other

automate release builds

  • Nick Sabalausky wrote a release tool.
  • Brad Roberts added install targets to the makefiles (dmd, druntime and phobos).
  • Nightly builds from the autotesters
  • Reusing existing makefiles is preferred
  • Package scripts must build from source (see Issue 10710)
  • Dejan Lekic made a Fedora SPEC file
  • Multi-arch cross-compiler should be optional (more dependencies/bigger size for rarely needed feature)