Introducing the Digital Asset Modeling Language: A Powerful Alternative to Smart Contracts for Financial Institutions
Posted by Digital Asset on Apr 20, 2016 9:00:00 AM

Today we are delighted to announce the acquisition of Elevence, a technology firm that has developed an expressive language for financial institutions to model and execute agreements with certainty and finality. This technology complements Digital Asset's existing software by providing a new, verifiable way for parties to a transaction to prove updates to a distributed ledger while preserving data confidentiality.

Elevence have a seriously impressive team of Computer Scientists and financial technologists, all of whom have either a PhD or Master's in related fields. We have been working closely with them for the last few months to begin integrating their technology with our stack. Along with joining forces, we are excited to announce the Digital Asset Modeling Language, a privacy preserving yet provable alternative to Smart Contracts designed specifically for financial services.

WHAT IS A SMART CONTRACT?

Smart Contracts are software applications that are shared and run on all nodes across a blockchain network. The primary goal of blockchains with inbuilt Smart Contracts was to create self-enforcing agreements that independently control and automate the exchange of value according to predetermined rules based on predefined inputs. As with Bitcoin, Smart Contract platforms like Ethereum were designed to minimize the role of trust and enable actors that did not know each other to enter into software-enforced contractual agreements that are censorship resistant, meaning neither party, nor even governments can tamper with or prevent their execution.

WHAT ARE THE CHALLENGES OF APPLYING SMART CONTRACTS TO FINANCE?

Popular Smart Contract implementations require that the plain text of an agreement be shared across all nodes in a distributed network. While this ensures trust, it is incompatible with many applications in financial markets where the disclosure of the existence of an agreement between trading parties (e.g., a large sell order), much less deal terms, could move market prices and are rightly confidential.

Additionally, a defining characteristic of Smart Contracts is that they are self executing and/or self enforcing. In order to enforce parties to comply with the terms of a Smart Contract, the Smart Contract must be pre-funded with the full value that may need to be paid out, and will only release funds back to participants when execution has completed.

We believe there is a superior alternative to Smart Contracts for financial institutions in the majority of cases, and introduce a new language and execution environment specifically tailored for this purpose, called the Digital Asset Modeling Language.

WHAT IS THE DIGITAL ASSET MODELING LANGUAGE (DAML)?

DAML is an expressive language designed for financial institutions to model and execute agreements with certainty and finality. This technology complements Digital Asset's existing technology by providing a new, verifiable way for parties to a transaction to prove updates to a distributed ledger while preserving data confidentiality. DAML codifies rights and obligations in a similar manner to traditional legal contracts and workflows, and is more easily interpretable by a non-technical audience than most programming languages. It is a new Haskell-inspired functional programming language that has been under development for two years.

IS DAML A SMART CONTRACT PROGRAMMING LANGUAGE?

DAML is similar to a Smart Contract language in many ways but it is designed with the needs of financial institutions in mind. As such, it is optimized for usage in a private execution environment rather than in an open execution environment, in which it would be processed by all of the nodes in a network. DAML is designed to achieve many of the same benefits of Smart Contracts without the unnecessary trade-offs that make them unsuitable for financial services.

It could be argued that this is a closer fit to the original definition of Smart Contracts coined by Nick Szabo in the 1990s, which also focused on verifiability - but only by the stakeholders of that agreement rather than by everyone, and on certainty - being able to predict accurately all possible outcomes of the agreement rather than introducing doubt with unnecessary complexity.

WHAT ARE THE MAIN BENEFITS TO USING DAML?

Existing financial infrastructure is a fragmented collection of partial information spread across siloed data stores. Multiple records of similar but inconsistent information is duplicated and processed independently, and then the resulting outputs are compared and synchronized through a cumbersome reconciliation process. While distributed ledgers solve the problem of agreement on what the current state of the ledger is, they cannot solve the issue of agreement on what should happen to it next for complex financial agreements without revealing their contents.

By combining a shared log containing the complete provenance of these rights and obligations with an off-chain execution environment for processing the workflows of the behaviors being modeled, DAML ensures that all stakeholders can reach the same conclusions as to the result of a common workflow.

Having certainty in the integrity of both the ledger and the metadata dramatically reduces the frictions that arise from keeping multiple distinct systems in sync, and allows more flexible and efficient settlement systems by eliminating reconciliation, automating certain processes, and providing efficient arbitration.

IS DAML PROCESSED BY EVERY NODE IN THE NETWORK?

No, unlike Smart Contract platforms, agreements written using DAML do not need to be shared across multiple, often completely public, nodes in a network. Parties do not need to reveal the terms of their agreement to any undesirable third parties and it can be safely processed and authorized by only the relevant participants. All data is revealed on a need to know basis and even the distributed ledger, which only contains references to the agreement, is encrypted so other entities cannot detect even its existence on the ledger, let alone the terms.

HOW DOES DAML INTERACT WITH A DISTRIBUTED LEDGER LIKE HYPERLEDGER?

DAML serves as a logic and validation layer sitting above the ledger, providing an auditable way to prove why updates to the distributed ledger have occurred. An agreement modeled in DAML is only active if Hyperledger confirms it is valid and not referenced by any other transaction. This creates an independently verifiable logical mapping between the original business intent all the way through to the relevant Hyperledger transactions. The combination of the Digital Asset Modeling Language and Hyperledger allows for scale and privacy while maintaining a fully reconciled system across multiple parties.

HOW CAN THE EXECUTION OF DAML AGREEMENTS BE INDEPENDENTLY VERIFIED?

Each resulting step in the workflow of a DAML agreement is tied to a reference in Hyperledger and contains requirements on which parties’ cryptographic authorization is required to proceed. This ensures that every step in a DAML agreement, and hence every corresponding entry into Hyperledger, is only made with the full, multi-party authorization of all stakeholders of the transaction.

Nodes in the Hyperledger network that are not party to the agreement are still able to agree upon its outcome because they can independently verify that all of the required authorizations have been made without ever actually seeing the contents of the agreement itself. However, the contents of agreements can be provably revealed to authorized third parties such as regulators.

WHAT IS A TURING-COMPLETE LANGUAGE?

To be a Turing-complete programming language, the language must be adaptable enough to be able to solve any possible computational problem. The flexibility demanded by the Turing-completeness test requires specific capabilities to be present in a language, such as the ability to reference itself, however this can lead to undesired outcomes such as an infinite loop. A basic calculator is not Turing-complete as it can only process certain, predefined operations such as addition or multiplication. Personal computers are Turing-complete as they can theoretically process any algorithm.

WHY ISN’T DAML TURING-COMPLETE?

DAML was intentionally designed not to be Turing-complete. While Turing-complete languages can model any business domain, what they gain in flexibility they lose in analysability. This is because a Turing-complete language can be used to write any possible program. A program written in a Turing-complete language can therefore have any possible output. One cannot reason about the output of any possible program and therefore one cannot write a program that needs knowledge about the structure of that output in order to function. By restricting a language to only be able to write programs relevant to financial usage, the potential outputs of those programs becomes predictable. This allows those outputs to be queried and analysed for risk, position, interconnectedness, etc. that wouldn’t otherwise be possible.


We are delighted to welcome the Elevence team to Digital Asset as our technology and team continues to grow.

Today we are delighted to announce the acquisition of Elevence, a technology firm that has developed an expressive language for financial institutions to model and execute agreements with certainty and finality. This technology complements Digital Asset's existing software by providing a new, verifiable way for parties to a transaction to prove updates to a distributed ledger while preserving data confidentiality.

Elevence have a seriously impressive team of Computer Scientists and financial technologists, all of whom have either a PhD or Master's in related fields. We have been working closely with them for the last few months to begin integrating their technology with our stack. Along with joining forces, we are excited to announce the Digital Asset Modeling Language, a privacy preserving yet provable alternative to Smart Contracts designed specifically for financial services.

WHAT IS A SMART CONTRACT?

Smart Contracts are software applications that are shared and run on all nodes across a blockchain network. The primary goal of blockchains with inbuilt Smart Contracts was to create self-enforcing agreements that independently control and automate the exchange of value according to predetermined rules based on predefined inputs. As with Bitcoin, Smart Contract platforms like Ethereum were designed to minimize the role of trust and enable actors that did not know each other to enter into software-enforced contractual agreements that are censorship resistant, meaning neither party, nor even governments can tamper with or prevent their execution.

WHAT ARE THE CHALLENGES OF APPLYING SMART CONTRACTS TO FINANCE?

Popular Smart Contract implementations require that the plain text of an agreement be shared across all nodes in a distributed network. While this ensures trust, it is incompatible with many applications in financial markets where the disclosure of the existence of an agreement between trading parties (e.g., a large sell order), much less deal terms, could move market prices and are rightly confidential.

Additionally, a defining characteristic of Smart Contracts is that they are self executing and/or self enforcing. In order to enforce parties to comply with the terms of a Smart Contract, the Smart Contract must be pre-funded with the full value that may need to be paid out, and will only release funds back to participants when execution has completed.

We believe there is a superior alternative to Smart Contracts for financial institutions in the majority of cases, and introduce a new language and execution environment specifically tailored for this purpose, called the Digital Asset Modeling Language.

WHAT IS THE DIGITAL ASSET MODELING LANGUAGE (DAML)?

DAML is an expressive language designed for financial institutions to model and execute agreements with certainty and finality. This technology complements Digital Asset's existing technology by providing a new, verifiable way for parties to a transaction to prove updates to a distributed ledger while preserving data confidentiality. DAML codifies rights and obligations in a similar manner to traditional legal contracts and workflows, and is more easily interpretable by a non-technical audience than most programming languages. It is a new Haskell-inspired functional programming language that has been under development for two years.

IS DAML A SMART CONTRACT PROGRAMMING LANGUAGE?

DAML is similar to a Smart Contract language in many ways but it is designed with the needs of financial institutions in mind. As such, it is optimized for usage in a private execution environment rather than in an open execution environment, in which it would be processed by all of the nodes in a network. DAML is designed to achieve many of the same benefits of Smart Contracts without the unnecessary trade-offs that make them unsuitable for financial services.

It could be argued that this is a closer fit to the original definition of Smart Contracts coined by Nick Szabo in the 1990s, which also focused on verifiability - but only by the stakeholders of that agreement rather than by everyone, and on certainty - being able to predict accurately all possible outcomes of the agreement rather than introducing doubt with unnecessary complexity.

WHAT ARE THE MAIN BENEFITS TO USING DAML?

Existing financial infrastructure is a fragmented collection of partial information spread across siloed data stores. Multiple records of similar but inconsistent information is duplicated and processed independently, and then the resulting outputs are compared and synchronized through a cumbersome reconciliation process. While distributed ledgers solve the problem of agreement on what the current state of the ledger is, they cannot solve the issue of agreement on what should happen to it next for complex financial agreements without revealing their contents.

By combining a shared log containing the complete provenance of these rights and obligations with an off-chain execution environment for processing the workflows of the behaviors being modeled, DAML ensures that all stakeholders can reach the same conclusions as to the result of a common workflow.

Having certainty in the integrity of both the ledger and the metadata dramatically reduces the frictions that arise from keeping multiple distinct systems in sync, and allows more flexible and efficient settlement systems by eliminating reconciliation, automating certain processes, and providing efficient arbitration.

IS DAML PROCESSED BY EVERY NODE IN THE NETWORK?

No, unlike Smart Contract platforms, agreements written using DAML do not need to be shared across multiple, often completely public, nodes in a network. Parties do not need to reveal the terms of their agreement to any undesirable third parties and it can be safely processed and authorized by only the relevant participants. All data is revealed on a need to know basis and even the distributed ledger, which only contains references to the agreement, is encrypted so other entities cannot detect even its existence on the ledger, let alone the terms.

HOW DOES DAML INTERACT WITH A DISTRIBUTED LEDGER LIKE HYPERLEDGER?

DAML serves as a logic and validation layer sitting above the ledger, providing an auditable way to prove why updates to the distributed ledger have occurred. An agreement modeled in DAML is only active if Hyperledger confirms it is valid and not referenced by any other transaction. This creates an independently verifiable logical mapping between the original business intent all the way through to the relevant Hyperledger transactions. The combination of the Digital Asset Modeling Language and Hyperledger allows for scale and privacy while maintaining a fully reconciled system across multiple parties.

HOW CAN THE EXECUTION OF DAML AGREEMENTS BE INDEPENDENTLY VERIFIED?

Each resulting step in the workflow of a DAML agreement is tied to a reference in Hyperledger and contains requirements on which parties’ cryptographic authorization is required to proceed. This ensures that every step in a DAML agreement, and hence every corresponding entry into Hyperledger, is only made with the full, multi-party authorization of all stakeholders of the transaction.

Nodes in the Hyperledger network that are not party to the agreement are still able to agree upon its outcome because they can independently verify that all of the required authorizations have been made without ever actually seeing the contents of the agreement itself. However, the contents of agreements can be provably revealed to authorized third parties such as regulators.

WHAT IS A TURING-COMPLETE LANGUAGE?

To be a Turing-complete programming language, the language must be adaptable enough to be able to solve any possible computational problem. The flexibility demanded by the Turing-completeness test requires specific capabilities to be present in a language, such as the ability to reference itself, however this can lead to undesired outcomes such as an infinite loop. A basic calculator is not Turing-complete as it can only process certain, predefined operations such as addition or multiplication. Personal computers are Turing-complete as they can theoretically process any algorithm.

WHY ISN’T DAML TURING-COMPLETE?

DAML was intentionally designed not to be Turing-complete. While Turing-complete languages can model any business domain, what they gain in flexibility they lose in analysability. This is because a Turing-complete language can be used to write any possible program. A program written in a Turing-complete language can therefore have any possible output. One cannot reason about the output of any possible program and therefore one cannot write a program that needs knowledge about the structure of that output in order to function. By restricting a language to only be able to write programs relevant to financial usage, the potential outputs of those programs becomes predictable. This allows those outputs to be queried and analysed for risk, position, interconnectedness, etc. that wouldn’t otherwise be possible.


We are delighted to welcome the Elevence team to Digital Asset as our technology and team continues to grow.

Topics:

Smart Contracts, DAML

Recent Posts
NEWS
Bursa Malaysia Partners with Digital Asset and VMware to Develop Dematerialization Proof-of-Concept
09/14/2021
NEWS
Digital Asset Strengthens its C-Suite as it Drives Toward Becoming the Global Economic Network of Interconnected Businesses
07/14/2021
NEWS
Digital Asset partners with Nasdaq to enable Daml on the Marketplace Services Platform
06/24/2021
NEWS
Central Bank Digital Currency: Principles for Technical Implementation
04/28/2021
NEWS
Xpansiv Selects Daml to Scale New ESG Platform in Global Commodity Markets
04/27/2021
NEWS
Digital Asset Raises $120 Million Growth Round to Expand Daml Data Network
04/21/2021
NEWS
How Smart Contracts Bring Real-World Improvements To Post-Trade Settlement
01/12/2021
BLOG
Abstracting Away the Complexities of Blockchain and Smart Contracts
12/16/2020
PRESS RELEASE
DAML for Microsoft Azure Database Now Available
12/8/2020
BLOG
Unlock the Power of Your Existing Infrastructure
12/3/2020
BLOG
Interconnected /November
11/30/2020
BLOG
Digital Asset Demos 4 Key Properties of Interoperability
11/27/2020
BLOG
HKEX Connects Hong Kong and Mainland China Markets with DAML
11/24/2020
PRESS RELEASE
Climate Risk InsurTech Brings Blockchain and Smart Contracts to Financial Risk Solutions
11/19/2020
BLOG
VMware Blockchain with DAML is Now Available
11/18/2020
BLOG
Unlock Developer Productivity Without Getting Locked-in
11/12/2020
PRESS RELEASE
Digital Asset Expands DAML Certification Program
11/10/2020
BLOG
Simplifying Trade Processing  with DAML (Part 2)
11/6/2020
BLOG
Simplifying Trade Processing with DAML
11/4/2020
BLOG
How to Build Distributed Applications Today with the Option to Decentralize Later
10/26/2020
NEWS
GFT Joins Digital Asset’s DAML for Corda Program
10/20/2020
NEWS
Asia Pacific’s DLT Initiatives Offer Valuable Lessons for Global Capital Markets
10/14/2020
PRESS RELEASE
ISDA and Digital Asset Launch CDM Clearing Pilot Using DAML
10/6/2020
NEWS
Digital Asset Expands DAML for Corda Integration Support with Chainstack
09/24/2020
PRESS RELEASE
BNP Paribas and Digital Asset Join Forces to Develop DLT Trade and Settlement Apps
09/15/2020
PRESS RELEASE
DAML Named the Exclusive Smart Contract Language for China’s Blockchain Services Network
09/14/2020
PRESS RELEASE
SGX Uses DAML to Complete its First Digital Bond Issuance
09/1/2020
PRESS RELEASE
Digital Asset, Creators of DAML, Adds VMware As Investor in Series C Round
07/14/2020
PRESS RELEASE
WeBank to Integrate DAML with China’s Leading Blockchain Platform
04/15/2020
PRESS RELEASE
Digital Asset is First Blockchain Startup to Successfully Complete AICPA Type 2 SOC 2 Examination
03/5/2020