Computable Contracts
-
Upload
effacts -
Category
Technology
-
view
52 -
download
1
Transcript of Computable Contracts
What is a contract?A legal technology to create private
obligations enforceable by law.
The value of a contract stems largely from the incremental incentive effect of this legal enforcement -> damages and/or
performance.
Key issues● Use of natural language and the
current state of NLP● Discrete and abstract terms like
“reasonable” or “best effort”● Legal uncertainty on both the law and
the facts
init: contract.storage[OWNER] = msg.sender code:
cmd = msg.data[0]state = contract.storage[NDA_STATE]
# Owner initializes NDA contractif state == NDA_STATE_NEW and cmd == "new" and msg.sender == contract.storage[OWNER]:
contract.storage[COUNTERPARTY] = msg.data[1] contract.storage[NDA_HASH] = msg.data[2] contract.storage[NDA_VERSION] = msg.data[3] contract.storage[NDA_CREATION_TIMESTAMP] = block.timestamp contract.storage[ARBITRATOR] = msg.data[4] contract.storage[MAX_DAMAGES] = msg.data[5] contract.storage[NDA_STATE] = NDA_STATE_PENDING return(1)
# Counterparty accepts the NDA by specifying the NDA hashelif state == NDA_STATE_PENDING and cmd == "accept" and msg.sender ==
contract.storage[COUNTERPARTY]:
Contract Definition Language