|
|
|
|
|
by pschanely
587 days ago
|
|
> I believe your argument on the performance penalty is right, and as a corollary, this implies that contracts are mostly useful if associated with a formal proof system. Contracts in production are probably a bad idea, in most cases. Agree! There is a sliding scale between testing contracts and proving them too. My labor of love for the past several years has been a tool for checking Python contracts using an SMT solver (using symbolic inputs over concrete paths): https://github.com/pschanely/CrossHair That said, these days I think property-based testing gets you the ~same benefits as contracts, and is easier for most people to apply. |
|