Lee Braine has been leading an initiative to bring standardisation to this area with Smart Contract Templates, an idea which Barclays demonstrated earlier this year and the R3 consortium hosted a summit on last month.

To get things started, he offered a concise definition of a smart contract. He said: "A smart contract is an agreement that is both automatable and enforceable; automatable on a computer, perhaps requiring some human input and control, and enforceable by either traditional legal means, such as dispute resolution in the courts, or via a permissionless distributed blockchain."

Murphy agreed with this definition, and added some thought's from a lawyer's perspective. "What I see in the blockchain ecosystem is a spectrum of definitions of what smart contracts are and people have different understandings of what they are.

"What Lee has described is towards one end of the spectrum of what people think smart contracts are. There is another end of the spectrum, which I call the purist 'code is contract' school of thought; where people think about attempting to entirely codify complex contracts and for those complex contracts to be fully self-contained and self-enforcing and self-performing in all aspects.

"I think there is a question mark about the code is contract form of smart contracts; whether all of them are in fact legally-enforceable contracts. It's quite an interesting area of law."

Regarding the possibility of error or bugs in computer code causing problems in the automation of such contracts, Murphy pointed out that contracts, in the traditional sense, also suffer various imperfections. "As a lawyer, I can tell you that contracts are very seldom perfect. There can be simple typos in the contract. Or if it's a long term contract, it's just impossible to anticipate what might happen in the future. The contract might become illegal because of a change of law in the future, which would be an extreme example.

"In reality what happens, particularly with complex long term contracts in the conventional world, is that they are often amended because the parties recognise that something is wrong in that contract and needs to be changed," said Murphy.

Byrne, a securities lawyer in his past professional life, began by saying the phrase "smart contract" is a term of art, but essentially it means a piece of code on a blockchain that's running in two places at once, automating an existing legal relationship.

Byrne mentioned a meet-up he attended recently in Brooklyn called "Legal Hackers" which had attracted a bunch of young lawyers who could also write machine code (a useful skill-set if smart contracts become ubiquitous governance instruments).

"They were sick of doing the same thing over and over again manually," said Byrne. "So they are using software to improve how they do it.

"Law is one of those funny disciplines; if you are managing the life cycle of a deal, you are emailing and faxing. But there is no reason, if you are calling an event default, you shouldn't just push a button and then have the payment system on the other side update to reflect this.

"Instead what you are doing is sending an email to a trustee, the trustee is going and talking to their lawyers; there's back and forth and then you have to determine where the new event is occurring. Then, only after a very long back and forth of $100K of legal fees, do you manually change your bank system to reflect the new circumstances."

Byrne said there is a whole generation of young lawyers who are learning to code and basically to make things more efficient because there is a better way to do all this.

Ajit Tripathi said one of the things PwC does is performance assurance, because regardless of technological advancements there will always be ambiguity and interests that differ between counterparties.

"There are financial contracts that are fairly standardised and there is very little ambiguity, but even though there is very little ambiguity there are nonetheless disputes around collateral and the performance of the contracts, where the counterparties wish to dispute whether the other party performed on the contract or not."

Tripathi said there is a role for regulators and for independent verifiers to essentially come and step in and use the verfiability that blockchain technology provides. This feature of blockchains reduces ambiguity and to some extent a lot of back office can be taken out from the performance.

Braine concluded by emphasising there could be valid reasons to change the code in a smart contract other than fixing bugs, such as to reflect updates in regulation, for instance. "In these cases, a suitable governance model would be needed to allow network participants to use a controlled way of deploying updates to the smart contract code that is running – for defects, changes in regulation, and potentially also a kill switch if it's necessary to stop it."