Correctness

How important is correctness? This is a raging debate in our industry today. I think the answer depends strongly on the kind of problem a developer is trying to solve: is the problem contracting or expanding? A contracting problem is well-defined, or has the potential to be well-defined with enough rigorous thought. An expanding problem … Read moreCorrectness

Talk: Contracts as Types

This talk about gradual typing in Clojure makes a case for combining dynamic languages with slowly-more-specific typing. (These days, I like TypeScript for this.) First delivery, Philly ETE ,April 2015: Also, PolyConf in Poznan, July 2015: PolyConf 15: Contracts as Types / Jessica Kerr – YouTube I wish I could find the version from Craft … Read moreTalk: Contracts as Types

Fun with Optional Typing: narrowing errors

After moving from Scala to Clojure, I miss the types. Lately I’ve been playing with Prismatic Schema, a sort of optional typing mechanism for Clojure. It has some surprising benefits, even over Scala’s typing sometimes. I plan some posts about interesting ones of those, but first a more ordinary use of types: locating errors. Today … Read moreFun with Optional Typing: narrowing errors