= Michael R. Clarkson
{c}
= Michael Clarkson
{c}
{synonym}
<Michael R. Clarkson> is a <computer scientist> whose teaching connects practical <computer programming> with reasoning about correctness. His work includes <OCaml Programming: Correct + Efficient + Beautiful by Michael R. Clarkson and others>, which develops <functional programming>, <data structures> and methods for specifying and checking program behaviour.<OCaml Programming: Correct + Efficient + Beautiful by Michael R. Clarkson and others/8.3 Module Documentation>[Module implementation, abstraction functions and representation invariants]{ref}
One characteristic example separates an <abstraction function> from a <representation invariant>. A list can represent a mathematical <set>, but an implementation that assumes no duplicate entries must maintain that condition after every operation. The explanation shows how an abstract interface is justified by concrete representation rules.<OCaml Programming: Correct + Efficient + Beautiful by Michael R. Clarkson and others/8.3 Module Documentation>[Sections 8.3.1 and 8.3.4]{ref}
\Image[https://wchs.undergrad.cornell.edu/sites/default/files/styles/homepage_image_blocks_620x620_/public/2026-08/Michael%20Clarkson.png?h=93fa4828&itok=z7-v6sRk]
{title=Portrait of <Michael R. Clarkson>}
{description=Portrait identified on the https://wchs.undergrad.cornell.edu/houses/flora-rose-house/people/michael-clarkson[Cornell University profile].}
{width=240}
Back to article page