An ode to Serpent

Serpent is (in my opinion) so much easier to learn — and has so many fewer features (this is a good thing, as far as security goes) — that I really don’t understand why it was abandoned by almost all Ethereum devs in favor of Solidity, which is more complex (and therefore, harder to get … [Read more…]

Code is law, except when it isn’t

Taken literally, “code is law” is caveat emptor taken to its logical extreme. That said, what many people (including many of The DAO’s unfortunate investors) evidently don’t realize is that this notion of “code is law” is deeply at odds to the common law idea that the intent/spirit of a contract supersedes its letter. In … [Read more…]

Functional programming = more reliable software?

Is there actual data showing that functional programming leads to more reliable software? I hear this claim a lot but have never seen data supporting it. One counterpoint is that real-world safety-critical software (for instance, avionics software) is typically written in a simple procedural style — see for instance the JPL / MISRA-C guidelines — … [Read more…]