The state of contract programming in D
Alex Rønne Petersen
xtzgzorex at gmail.com
Sun Mar 4 20:26:30 PST 2012
Hi,
What with D's contract programming getting publicity, I think it's high
time we made the implementation match the documentation (and TDPL).
Just a 'few' contract-related issues:
* http://d.puremagic.com/issues/show_bug.cgi?id=6857
* http://d.puremagic.com/issues/show_bug.cgi?id=7584
* http://d.puremagic.com/issues/show_bug.cgi?id=6549
* http://d.puremagic.com/issues/show_bug.cgi?id=6856
* http://d.puremagic.com/issues/show_bug.cgi?id=7337
* http://d.puremagic.com/issues/show_bug.cgi?id=5039
* http://d.puremagic.com/issues/show_bug.cgi?id=7517
* http://d.puremagic.com/issues/show_bug.cgi?id=519
More subtle issues:
* http://d.puremagic.com/issues/show_bug.cgi?id=2350
* http://d.puremagic.com/issues/show_bug.cgi?id=4995
Syntactical issues/enhancements:
* http://d.puremagic.com/issues/show_bug.cgi?id=6415
* http://d.puremagic.com/issues/show_bug.cgi?id=5038
* http://d.puremagic.com/issues/show_bug.cgi?id=6453
The issues I personally see as most important are related to contract
inheritance and contracts on functions without a body.
Additionally, I think that dropping the need for parentheses on
invariant declarations would be a good idea, such that it feels more
like unittest declarations. Furthermore, the ability to declare multiple
invariants is essential for mixins and meta-programming in general.
(Many of the issues have pull requests pending review.)
Thoughts? I think we need to figure out most of these before 2.059...
--
- Alex
More information about the Digitalmars-d
mailing list