On Thu, Jun 22, 2017 at 02:08:32PM +0000, jmh530 via Digitalmars-d wrote:
[...]
> My recollection is that the most significant reason to use contracts
> in D is because of contract inheritance. There's a lot of focus in
> this discussion on normal functions, when I would say that contracts
> really aren't even needed.
[...]

I agree that contract inheritance is an important use case, but FWIW, I
write contracts in my non-class methods all the time.  They are useful
to document to the user (i.e., me 3 months later after I forgot the
details of the code) what exactly the function expects / assumes, and
for catching accidental wrong usages.  Coupled with judiciously crafted
unittests, this is invaluable for weeding out bugs in my code both
during coding and also prevents regressions / future wrong usages of the
function later.


T

-- 
People tell me that I'm paranoid, but they're just out to get me.

Reply via email to