Introducing the new command line interface tool for Marlowe

Learn how to submit transactions and interact with Marlowe contracts from the CLI

19 April 2022 Niamh Ahern 5 mins read

Introducing the new command line interface tool for Marlowe

Marlowe is an open source, domain specific language (DSL) with a suite of products for the community that will catalyze the adoption of Cardano in finance. It is constantly being enhanced and updated, and a command line interface (CLI) is just something you can't do without. So, we created a more convenient way to interact with Marlowe using the new CLI tool. This new tool supports a straightforward workflow for users who want to run contracts from the command line. It lets you focus on the Marlowe contract itself, while the tool manages details of the input and state for the contract. Additionally, it automates many aspects of Plutus as well as interaction with the Cardano node itself to reduce the burden on users.

Purpose

The new Marlowe CLI tool facilitates the internal development and testing of Marlowe contracts. This includes measuring transaction sizes, submitting transactions, testing wallet integrations, and debugging validators. It also provides integration with external developer workflows and toolsets for Marlowe contracts, similar to how the Cardano development community has heavily integrated the Cardano CLI tool into various services like libraries, faucets, token minting, marketplaces, and so on.

It is also an important step in the path of stress testing our code ahead of the official launch of Marlowe, as it provides early access to the features and capabilities on testnet and later on mainnet.

Additionally, this new CLI tool will become a useful tool for training users on how to get up to speed using Marlowe. We will be demonstrating how to use it during the upcoming Marlowe Pioneers Program which is launching in the next few weeks! Stay tuned to our Marlowe Discord channel for details on when this course starts and how you can get involved.

Running Marlowe contracts

The marlowe-cli command supports several fine-grained and high-level workflows for running Marlowe contracts, but here we will focus on a workflow that abstracts away the specifics of Marlowe’s use of the Plutus language. The tool is installed similarly to other Cardano tools, using standard Cabal or Nix commands. Basic use just involves a couple of commands:

  • Create an example contract from a template
  • Initialize the contract so that the creation transaction can be submitted
  • Apply inputs to a contract
  • Withdraw funds from a contract
  • Submit a transaction from creating, applying inputs, or withdrawing
  • Query the history of a contract

Figure 1: High-level workflow for running Marlowe contracts at the command line. Each rectangle corresponds to running a marlowe-cli command.

There are several ways to design Marlowe contracts, but the easiest are to use the CLI’s template command or the Marlowe Playground. One can also create contracts programmatically using Haskell, JavaScript, or any other language that can output the required JSON files that embody the contract and its initial state. The CLI’s template command can generate simple test contracts, escrow contracts, zero-coupon bonds, token swaps, and covered calls. The Playground contains eight example contracts, but you can also design a custom Marlowe contract with it.

Once a contract has been created and its beginning state defined, the CLI’s initialize command bundles that information together with details of the Cardano network where it will be run. The single resulting JSON-format .marlowe file contains all of the information needed to run or study the Marlowe contract. In addition to the contract and its current state, it contains the address of the Marlowe validators, a serialized copy of its Plutus script, and network details. Examining and extracting information from this JSON file can be useful in learning about how Marlowe works, but isn’t necessary for running Marlowe contracts. Once this necessary information has been bundled, the CLI’s run execute command submits the actual Plutus transaction to the Cardano blockchain, prints statistics about the transaction, and awaits confirmation.

Applying inputs to a contract follows a simpler process. The CLI’s prepare command lets you set up a deposit of funds to the contract, make a choice in it, or notify it. This takes the previous .marlowe file as input and produces a new one as output, which you can submit with the execute command. The prepare command will warn you if the input is illegal or untimely.

Withdrawing funds paid by a Marlowe contract is accomplished with the withdraw command, which allows you to select the address at which the funds will be received. Address selection provides flexibility in disbursing funds, so that the output addresses are not “hard wired” into the contract itself.

Querying the history of a contract can also be done from the command line, or you can use the Cardano blockchain explorer.

Prospects

The command line tool also provides advanced features for creating and manipulating the Plutus validators, datums, redeemers, and hashes involved in Marlowe contracts. Contracts can also be compressed (using Merkle hashes), which makes it possible to run contracts far larger than the Cardano protocol limits on transaction size and memory would otherwise permit. You can also use the CLI to run Marlowe contracts on the PAB, eliminating the need for UTxO management and letting a wallet manage that instead.

This CLI tool is periodically enhanced to meet developer needs as they emerge. In addition to further simplifying Marlowe workflows, the tool’s contract-testing capabilities are being expanded.

Please join us on the Marlowe Discord channel to engage in discussions, ask questions, and hear the latest Marlowe news.

I would like to thank Brian Bush, software engineer for Marlowe, for his help in writing this blog.

Boosting Cardano’s throughput with script referencing

We take a closer look at just some of the enhancements coming to Cardano in June

13 April 2022 Olga Hryniuk 4 mins read

Boosting Cardano’s throughput with script referencing

During the Basho development phase, the ledger continues to optimize and scale for the growing demand. Along with parameter adjustments and node upgrades, Plutus capability continues to develop at a steady pace.

Plutus is a living, evolving smart contract language. Cardano improvement proposals – also known as CIPs – play an important role in this evolution. Through the CIP mechanism, anyone can suggest an improvement to Cardano. CIPs encourage community engagement and proposal reviews, which are continually maintained on the Cardano Foundation’s GitHub repository.

Let’s drill down into two of these. CIPs for reference inputs (CIP-31) and reference scripts (CIP-33) have been submitted to be implemented on Cardano and are among those due to be implemented as part of June’s Vasil hard fork. Along with other scalability improvements, these enhancements to Plutus will boost throughput for decentralized apps (DApps) decentralized finance (DeFi), RealFi, products, smart contracts, and exchanges building or operating on Cardano.

In this post, we take a closer look at what these CIPs are and how they benefit and optimize Cardano's scalability.

Reference inputs

Transaction outputs carry datums, which enable the storage and access to information on the blockchain. However, these datums are constrained in a number of ways. For example, to access datum’s information, you’d have to spend the output that the datum is attached to. This requires the re-creation of a spent output. Any user who wishes to look at the data cannot spend the old output (which is gone), but must spend the new output (which they will not know about until the next block). In practice, this limits some applications to one ‘operation’ per block, thus decreasing the desired performance.

CIP-31 introduces a new mechanism for accessing information in datums – a reference input. Reference inputs allow looking at an output without spending it. This will facilitate access to information stored on the blockchain without the need for spending and re-creating unspent transaction outputs (UTXOs).

Reference inputs also enable the other key improvement – reference scripts.

Reference scripts

When you spend an output locked with a Plutus script, you must include the script in the spending transaction. Hence, the size of the scripts contributes to transaction size, which directly influences Cardano’s throughput.

Large script sizes pose problems for users because:

  1. Larger transactions result in higher fees.
  2. Transactions have size limits. Large scripts can hit the limits. Even if one script fits, multiple scripts in one transaction might not fit. This makes it difficult to execute complex transactions that rely on several scripts.

CIP-33 suggests script referencing as a possible solution. This is the ability to reference a script without including it in each transaction, which hugely reduces the contribution of scripts to the transaction size. Referencing scripts in multiple transactions can significantly reduce transaction sizes, improve throughput, and reduce script execution costs.

How does script referencing work?

The idea is to use reference inputs and outputs that carry actual scripts (reference scripts). The script referencing proposal eliminates sending frequently-used scripts to the chain every time they are used. Instead, scripts will be available in a persistent way on-chain. This means that the transaction using the script will not need to include the script itself, as long as it references the output that contains it.

This approach follows the reference inputs proposal (CIP-31). CIP-31 considers how to enable data sharing on-chain, and concludes that referencing UTXOs is the most appropriate solution. UTXOs store data safely, and take advantage of the existing mechanisms for size control.

For reference scripts, transaction outputs must be extended to carry an optional field to include a script. The minimum UTXO value for such outputs will depend on the size of the script, following the coinsPerUTxOWord protocol parameter.

Community engagement is key

With the proposals already submitted and implemented, Plutus script referencing and reference inputs are planned to be included in the June Vasil hard fork. The CIP process enables the community to contribute to the development of Cardano by proposing, discussing, reviewing, and contributing to improvement proposals. We encourage the developer community to join CIP discussions and visit Cardano Foundation’s CIP repository for more details.

Introducing the Concept of Delegate Representatives (dReps)

dReps will vote on the vast majority of proposals within Project Catalyst and enhance the quality of decision making within each Fund

11 April 2022 Jack Briggs 2 mins read

Introducing the Concept of Delegate Representatives (dReps)

At a recent Project Catalyst Town Hall, IOG announced the concept of delegating your voting power, the role of Delegate Representatives (dReps) and invited those keen to get involved to express an interest. There has been a fantastic response and we’re now excited to share more details.

In less than a year, Project Catalyst has become the world’s largest decentralized innovation fund. It is a focal point for ongoing development and sustainable innovation, driven by the Cardano community. Fund8 had nearly 1,000 proposals put forward, and Catalyst is now on track to fund over 2,100 proposals during 2022. That is staggering!

This continued expansion of the Cardano ecosystem signals fantastic news for the Cardano community as a whole. However, exponential growth poses a challenge though. As the number of proposals increases, so does the community’s responsibility to both review and vote upon them. To ensure that all proposals gain the attention they deserve, and to facilitate continued growth, a new system is required to ensure sustainability.

Delegation enables ada holders to delegate their voting power to one or many dReps. This allows the more passive voter a chance to continue to have their voice heard, but now across more proposals than they could personally read and evaluate.

These dReps will vote on the vast majority of proposals within Project Catalyst, and in turn will enhance the quality of decision making within each Fund. dReps will coordinate and form policies together, source and review data, consult with experts, and ultimately vote on an array of projects and topics that the community has brought forward.

The introduction of dReps is another exciting step forward as the community continues to learn and grow. There will be more to share and discuss over the weeks and months ahead as we roll out delegation into future Project Catalyst funds. To bolster inclusion and diversity, IOG is reopening interest in joining the first dRep cohort.

Over the coming weeks, IOG will be organizing a series of workshops that go into greater detail on what it means to be a dRep, the incentive model, and what impact dReps will have on Project Catalyst.

Project Catalyst launches incubator for Africa

Ariob will help drive innovation and tackle everyday challenges across the continent

5 April 2022 Tim Richmond 6 mins read

Project Catalyst launches incubator for Africa

Input Output Global’s Project Catalyst has launched Ariob, an incubator scheme, in collaboration with iceaddis, a pan-African business incubator, and accelerator. Ariob means ‘a collection of stars’ in Ge’ez, an ancient Semitic language of Ethiopia.

This strategic partnership is designed to enhance the growth of projects funded by Project Catalyst, Cardano’s innovation engine, and offers high potential Catalyst start-ups access to venture-building expertise and resources to help develop products that solve real-life challenges in Africa.

Why Africa?

Africa is home to 1.3 billion people. It is a fascinating and diverse continent that is seeing a huge acceleration in adopting new technologies such as blockchain. Given that there are no allegiances to legacy systems, it is far easier for technological advances to take hold. Projects for financial services, national identity frameworks, and developments in academia have great potential to transform both industry and society. This evolution offers fertile ground for entrepreneurship and innovation to leapfrog over approaches stuck in the past. Therefore, a focus on delivering cutting-edge programs in Africa can accelerate the growth of the Cardano ecosystem.

Last year, Input Output Global (IOG) announced its partnership with the Ethiopian Ministry of Education to provide five million Ethiopian students with a way to verify their academic credentials using Atala PRISM technology, built on Cardano. IOG is also working with World Mobile in Zanzibar to connect the unconnected and enable access to essential online services through blockchain technology.

Project Catalyst, mentorship, and incubation

Project Catalyst is now one of the largest decentralized innovation funds. It is a focal point for ecosystem development and innovation, driven by the Cardano community. With each funding round, the community presents challenges across a range of subjects related to Cardano. These challenges are then answered by the community who present project proposals defining solutions and clear plans. The community then votes on the proposals presented and selects projects to receive funding.

Catalyst enables people to realize great ideas and implement them, but funding is only part of the journey towards success. Other factors, such as education, mentorship, collaborations, and product roadmap development are also needed to nurture projects and help them formalize a business plan and effective go-to-market strategy.

The first entrepreneurship program, to achieve Catalyst funding entitled ‘BoostCamps’, used the Entreprenerdy platform where participating projects could take part in sessions designed to develop their business strategy. Fund7 is the latest round, with an Accelerator & Mentor Challenge. Twelve projects will be funded to create programs and tools to support businesses being built on Cardano.

BoostCamps has so far taken on five cohorts, one of which focuses on projects whose goals include creating positive change in Africa. This activity inspired this newest innovation, the Ariob incubator, where a select number of projects will be chosen to join a support program running through the first half of 2022. This program offers services aimed at realizing creative potential, testing ideas, and using prototypes to find the best product. Ariob will also help connect projects with educational institutes, government organizations, NGOs, and local companies.

Markos Lemma, iceaddis Co-founder, and Chief Executive said: ‘Cardano is a platform that’s creating solutions to real-life challenges in Africa and one of our most valuable relationships is with the Cardano ecosystem. Together, we want to demonstrate that the next big ideas are emerging from African countries, and we are ready to invest our resources to make that happen.

‘As one of the leading pan-Africa incubators and accelerators, we are eager to drive the development of high-potential Catalyst start-ups through the Ariob incubator.’

Projects joining the Ariob incubator

DirectEd is developing a solution to facilitate scholarships for students in low-income countries, using the transparency, peer-to-peer, and smart contract capabilities of blockchain technology to reduce costs and eliminate corruption. Many talented students lack the financial means to realize their potential, but philanthropists may hesitate to donate for two reasons. First, they cannot ensure that the money goes directly to the student, and second, attaching conditions to donations to ensure that funds are used for their intended purpose is costly. DirectEd solves these problems by providing a transparent, secure, and low-cost way of making conditional peer-to-peer donations directly to students.

CheCha: a digital USD voucher system to solve the small change crisis in Zimbabwe. CheCha acts as a trusted third party between customers and vendors to facilitate micro-loans. Vendors can join into partner networks, allowing loan redemption within their closed-loop system, and with the introduction of ada wallets, user-to-user transfers are now possible. In addition, the platform will also become the first commonly recognized liquidity market between fiat and crypto in the country.

CanuckCrypto Ekival: a blockchain-based escrow service that allows users to apply the Hawala system (A system for transferring money, whereby the money is paid to an agent who then instructs a remote associate to pay the final recipient.) to their money transfers. Ekival displays location-based accumulations of value (liquidity pools in the money transfer case) that users based in other locations can commit to acquiring on behalf of beneficiaries.

Thrift Finance: a decentralized and trustless thrift savings system governed, maintained, and upgraded by THRIFT token holders. Thrift aims to create a more accessible and efficient financial system for Africa through smart contracts.

DeliveryChain wants to disrupt the centralized postal industry through a peer-to-peer solution built on blockchain. The aim is to enable cheaper, faster, and more reliable parcel delivery across Africa.

Hippocrades: A decentralized healthcare information exchange that uses blockchain to allow information to be passed between healthcare systems without compromising security and privacy. Hippocrades also provides healthcare modules and APIs for developers to build decentralized health applications ready for Web3.

WADA: Building a Web3 microlending solution that empower Africans on the continent and in the diaspora. WADA’s vision is for a more inclusive economy and society, enabled through blockchain technology.

African Blockchain Center for Developers (ABCD): A talent ecosystem that seeks to mentor Africans and provide opportunities to build revolutionary projects. ABCD’s activities are geared towards closing the developer skill gap by providing learning opportunities and acting as a bridge between skilled people and potential clients.

Waya Collective is building a decentralized enterprise network to find a new equilibrium in global manufacturing. The current practice of centralized production, combined with long and complex supply chains, is ever-more for everyone involved. The Waya Collective intends to provide Africa-focused producers access to loans, know-how, and a network of reliable partners in a decentralized way.

Find out more

We’ll be following the progress of these projects as they advance through the process, so watch out for more news.

The Ariob incubator is open to all Africa-focused projects, so if you’re developing an idea, the team would love to hear from you.

If you’d like to get involved by proposing a challenge, learning more about Project Catalyst, or would like to answer challenges posted by others, please subscribe to the Catalyst mailing list and join the Catalyst Telegram community.

Wave Financial launches ada yield fund to support Cardano's DeFi ecosystem growth

The ada yield fund aims to provide liquidity and other resources to Cardano’s rapidly expanding DeFi platform startups

31 March 2022 Fernando Sanchez 4 mins read

Wave Financial launches ada yield fund to support Cardano's DeFi ecosystem growth

30 March, 2022, Los Angeles, US / Singapore - Wave Financial LLC (Wave), a SEC-regulated digital asset investment management company, is pleased to announce the launch of the Wave ADA Yield Fund. The fund is designed to provide liquidity with millions in line to support new decentralized finance (DeFi) platforms launched in the Cardano ecosystem starting with an initial $100m.

“We’re thrilled to continue breaking ground in the field of cryptocurrency through the creation of innovative new funds, and today we are launching what we believe is the first pure liquidity provisioning fund in crypto,” said David Siemer, CEO of Wave Financial. “Our new fund will support the new decentralized exchanges, lending protocols, and stablecoin issuers building on Cardano. Each of these decentralized applications adds to the strong foundation of the Cardano blockchain as it realizes a fully functional and diverse ecosystem.”

The new ADA Yield Fund represents the continuation of Wave’s mission to support promising entrepreneurs within the crypto space beyond the early stage and foster greater innovation in the overall crypto ecosystem.

“Since the formal launch of smart contracts in 2021, the Cardano community has launched and funded hundreds of companies building on the Cardano blockchain,” said Charles Hoskinson, founder of Input Output, the software technology company that has been an early supporter of Cardano. “Cardano’s growing ecosystem is hosting an ever expanding universe of applications supporting significant numbers of active users – it’s critical for the success of the ecosystem that Cardano-based projects thrive, and so we are pleased that the ADA Yield Fund is committing substantial financial resources to facilitate continued growth and market acceptance.”

Historically, DeFi dApps are among the most popular in crypto in terms of bringing more users and applications on-chain. Specifically, decentralized exchanges (DEX) and defi lenders have gained the fastest popularity in terms of attracting users and capital. DEX typically are set up without market makers, but with two pools of assets that represent each side of a trading pair that serve as a source for DEX counterparties to trade against when they want to transact on either side of the pair. Wave will be using the ADA Yield Fund to provide liquidity to these pairs of pools to support Cardano DEXes. For DeFi lenders, there will also be a similar form of support to augment liquidity to facilitate lending. Also, Wave will continue to support and expand stake pools to strengthen the Cardano network.

"EMURGO is excited to support the creation of this valuable ADA Yield Fund to further drive expansion and adoption of Cardano's quickly developing DeFi ecosystem," said Ken Kodama, founder & CEO of EMURGO, a global blockchain solutions company and venture capital fund that has also been an early supporter of Cardano. "Providing strategic capital resources through the fund will help talented entrepreneurs and projects to build essential DeFi services on Cardano, ultimately delivering impactful solutions and onboarding more users to the global Cardano community."

Frederik Gregaard, CEO of the Cardano Foundation, said, “The launch of the Wave ADA Yield Fund, plus the Wave Financial team’s commitment to supporting promising entrepreneurs, indicates a thriving healthy ecosystem. For our community to build the world’s future financial and social operating system, then the strength of our ecosystem matters. We will always be stronger as a collective than as a single unit.”

Wave is registered with the US Securities & Exchange Commission as an investment adviser. To learn more about Wave Financial, please visit the Wave Financial website. Please direct media inquiries to:

  • US: WaveFinancial@finnpartners.com
  • UK and Europe: Angus.Campbell@citigatedewerogerson.com
Important Disclosures and Other Information
Nothing in this material should be interpreted as an offer or recommendation to buy, sell or hold any security or other financial product. Past performance is no guarantee of future results. Wave Financial LLC is an investment adviser, registered with the US Securities and Exchange Commission (CRD#: 305726). Registration with the federal authority does not imply a certain level of skill or training. Additional information including important disclosures about Wave Financial LLC also is available on the SEC's website at www.adviserinfo.sec.gov. Or, learn more information about Wave Financial at www.wavegp.com.
The ecosystem landscape included in this post is intended to provide generalized guidance; nothing in this analysis is intended as tax advice, investment advice, a recommendation to purchase a security or an introduction to particular funding or capital resource.