New paper: "Distributed Electronic Rights in JavaScript"

Mark S. Miller erights at
Mon Jan 14 15:44:46 PST 2013

On Mon, Jan 14, 2013 at 3:31 PM, Mark S. Miller <erights at> wrote:
> On Mon, Jan 14, 2013 at 3:18 PM, Sam Tobin-Hochstadt <samth at> wrote:
>> On Mon, Jan 14, 2013 at 6: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 disagree, in two senses.  First, behavioral software contracts in
>> the sense of Meyer have a close analogy to real-world contracts, in
>> particular contracts for the exchange of goods.  For example, a spot
>> contract is just an agreement to exchange some good meeting some
>> specified description for another (usually one is money).  Second, I
>> believe that your escrow contracts are closely related to software
>> contracts,

I do need to quibble about your terminology here.  It would be bizarre
to define "software contracts" so they exclude smart contracts
implemented as software. I'm fine with "behavioral contract" as the
term distinct from "smart contract". But clearly, they are both
"software contracts".

> in the sense that we could formulate them as software
>> contracts in a sufficiently-expressive contract system, where the
>> contract/runtime system itself plays the role of trusted host.
> Someone should try this!
> --
>     Cheers,
>     --MarkM


More information about the es-discuss mailing list