Only want to say

ddcovery antoniocabreraperez at gmail.com
Tue Jan 12 22:46:49 UTC 2021


On Tuesday, 12 January 2021 at 14:33:23 UTC, Adam D. Ruppe wrote:
> On Tuesday, 12 January 2021 at 14:02:02 UTC, Jacob Carlborg 
> wrote:
>> * in-contracts are not included in the generated documentation
>
> I actually tried to solve this in adrdox. It is simple enough 
> to print them, but the Phobos contracts tend to be hideous and 
> completely unhelpful for understanding the function. So I 
> disabled the feature.
>
> Some libs, especially those written with the simpler new 
> syntax, are much nicer though, so I might try enabling that 
> again.

After reading this comment, I decided to abandon the in{} out{} 
body/do{} syntax (sorry for the discussion I initiated about de 
"do" vs "body" :-( ):

* The simpler new version seems to fit with the D standard 
functions syntax well (without the need of "alien" body/do 
words):  it introduces new blocks without changing the syntax of 
the existing ones.

* The simpler contract syntax enforces using declarative 
assertions and removes (partially) the possibility of imperative 
code in contracts. (good for documentation)

The only small problem I found is you can not import exclusive 
contract dependencies (because you have not a block)... but this 
is not a real problem.


More information about the Digitalmars-d mailing list