I did my dissertation work on software contracts. They are generally useless: programmers won't write them, or will write them incorrectly. Moreover, the runtime enforcement dominates all but the most-expensive functions, and contracts become an antipattern for helper functions due to their enforcement cost.
Without intense compiler support and contract erasure such as David Van Horne's work, this is a dead idea that needs to stay that way.
Without intense compiler support and contract erasure such as David Van Horne's work, this is a dead idea that needs to stay that way.