Difference between revisions of "Beyond D2"
Timotheecour (talk | contribs) |
Timotheecour (talk | contribs) |
||
Line 1: | Line 1: | ||
− | ( | + | == 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 ==== | ||
+ | * https://github.com/D-Programming-Language/dmd/pull/2467 (Compiler) | ||
+ | * https://github.com/D-Programming-Language/dlang.org/pull/371 (Webpage) | ||
+ | ;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.<br/> | ||
+ | https://github.com/D-Programming-Language/dmd/pull/1356 | ||
+ | === Druntime === | ||
+ | ==== high-level shared library support ==== | ||
+ | Initial work in [https://github.com/D-Programming-Language/druntime/pull/617 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 [https://github.com/D-Programming-Language/installer/pull/24 tool]. | ||
+ | * Brad Roberts added install targets to the makefiles ([https://github.com/D-Programming-Language/dmd/commit/e993c4cefa69a59c03442053f9894c329a36b3af dmd], [https://github.com/D-Programming-Language/druntime/commit/f36a436303290c48add14d248c87e685a3cb1c99 druntime] and [https://github.com/D-Programming-Language/phobos/commit/133cb13b4fb8a0363885d0979a84d2611f27bd75 phobos]). | ||
+ | * Nightly builds from the autotesters | ||
+ | * Reusing existing makefiles is preferred | ||
+ | * Package scripts must build from source (see [http://d.puremagic.com/issues/show_bug.cgi?id=10710 Issue 10710]) | ||
+ | * Dejan Lekic made a [https://www.gitorious.org/dejan-fedora/dejan-fedora Fedora SPEC file] | ||
+ | * Multi-arch cross-compiler should be optional (more dependencies/bigger size for rarely needed feature) |
Revision as of 00:30, 10 November 2013
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
- https://github.com/D-Programming-Language/dmd/pull/2467 (Compiler)
- https://github.com/D-Programming-Language/dlang.org/pull/371 (Webpage)
- 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
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)