Today we announced that we’ve been working with the team at VMware to integrate our smart contract language, DAML, with their enterprise blockchain platform, VMware Blockchain. You can read the formal announcement here.

This is especially notable as it is the first third-party blockchain that DAML will be compatible with, giving you the ability to write your distributed applications in the best in class smart contract language and then deploy it to a choice of platforms depending on your requirements. Why would you write ledger specific applications and get locked into betting on one technology?

What is DAML?

If you’re already familiar with DAML you can skip past this section. But if DAML is new to you, it’s probably best described as a domain-specific programming language for modeling, automating, and enforcing multi-party agreements. You can learn all the details of what it means to develop smart contracts in DAML from this extensive blog series written by our engineers.

To summarize the key value proposition for DAML, think about productivity and future-proofing.

Be Productive. DAML has language-level constructs to deal with boilerplate concerns like signatures, data schemas, and privacy. These constructs allow you to focus only on the business logic of your project and leave lower-level issues to the platform. For example, do you find it hard to define fine-grained data permissions once your contracts involve many parties and data types? DAML allows you to define explicitly in code who is able to see which parts of your model, and who is allowed to perform which updates to it. And the runtime enforces the rules that you set out.

Be Future-Proof. The contracts that you develop will need to be upgraded, extended, and probably composed with other workflows over time. It’s inevitable. With DAML, upgrades are defined in code and can be executed in a non-disruptive, zero-downtime fashion; adding new roles and workflows to an existing solution is a trivial exercise; and integrating systems across domains is as simple as defining shared contracts. The code that you write today will not be broken by the requirements of the future.

Why DAML on other platforms?

Who wants to write applications for a single blockchain? While it may seem like there are dominant platforms starting to emerge within the DLT industry, in our opinion the ledger wars are only really getting started. We’ve heard from several of you, as well as many of our clients, that there are concerns about investing in capabilities that are specific to one platform when it’s unclear what the long term winner or winners will be. As more platforms from technology multinationals enter the market, this concern is only going to increase and those dominant platforms may not look so dominant anymore… Developers need choice.

DAML code is designed to run on more than just the DA Platform. This allows you to write your code and pick the deployment platform that best meets the needs of the organization. This allows you to write and test contracts on your own machine, using the Sandbox environment that ships with the open source DAML SDK, and know that target platforms can be switched seamlessly to meet needs without requiring changes to the application.

Why VMware Blockchain first?

VMware has deep technical expertise developing virtualization and distributed systems at scale. They share our vision for a world of interconnected networks with effective permissioning, high-throughput, and taking security, privacy, and uptime seriously. VMware’s customers deeply care about these properties, each of which aligns very closely to the benefits of using DAML over other smart contract languages.

“VMware is delighted to be working together on customer deployments to layer VMware Blockchain alongside DAML.” Michael DiPetrillo, Senior Director of Blockchain at VMware

Some blockchain ecosystems have hundreds of customers and partners, VMware has hundreds of thousands and soon they will all have access to VMware Blockchain and DAML! So what better time to download the DAML SDK and start writing secure, distributed applications for multiple platforms.

Next Steps: