New paper: "Distributed Electronic Rights in JavaScript"

Mark S. Miller erights at
Mon Jan 14 15:30:52 PST 2013

On Mon, Jan 14, 2013 at 3:05 PM, Mark S. Miller <erights at> wrote:
> A fair point. By "contracts" in that first word, we refer to
> real-world contracts. For software "contracts", we initially had a
> footnote trying to explain the relationship between the "smart
> contracts" we're talking about and the type-like "contracts" that this
> literature refers to. Perhaps unwisely, I removed it because I thought
> it created more confusion than it cleared up. By introducing "the
> exchange of rights" in that same first sentence I hope we make it
> clear that we're talking about a different kind of contract, one
> closer to the real world notion.
> I'll see if I can find the footnote I deleted, at least for the record
> here on es-discuss ;).

The footnote I (again, perhaps unwisely) deleted is:

> Although types as contracts [2] and higher order contracts [3] can be seen as very
> special cases of smart contracts, their purpose is typically dierent: locating bugs
> during development rather than protection from misbehavior in the wild.

> 2. Meyer, B.: Applying Design by Contract". IEEE Computer 25(10) (1992) 40{51
> 3. Findler, R.B., Felleisen, M.: Contracts for higher-order functions. ACM SIGPLAN
>     Notices 37(9) (2002) 48--59

If you find this confusing, or wrong but don't quite know what you'd
say instead, without taking up too much space in a paper that's really
about something else, perhaps you can sympathize with my edit.

In any case, I will point out that we've been using the term "smart
contract" for this flavor of software contract since Nick Szabo coined
it, which <> guesses was in
1993 -- only one year after Meyer. I don't remember any of the papers
in this other literature clarifying how their use of the term
"contract" was distinct from "smart contract". Perhaps because the
difference looked clear enough when looking over the gap in that

For the record, in retrospect, yes, I should have left in a footnote
and worked to make it clearer. My apologies to my co-authors for
making this particular edit without discussion.


More information about the es-discuss mailing list