[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Htdp: Contracts




When I used the word contract in this context, I was unaware of Meyer's
contract work in the Eiffel context. I also meant it in the much weaker
sense of "type" but since Scheme is unityped or dynamically typed, I 
didn't want to abuse terminology and introduced the word "contract"
instead. 

For me, a contract is a weak invariant (logical assertion about a
function). Yes, (math) functions are invariant but it is often a good idea
to document weaker properties of our programs even if they are invariants. 

MrSpidey can check most of the contracts we use in HtDP. One day we wish to
scale contracts to Units properly and Robby is working on that. But, to get
a publishable dissertation into place, he is developing the contract work
in the context of Java. Eventually we will put it into Scheme. 

-- Matthias