Marlowe in a nutshell

Marlowe is a small language, with a handful of constructs that, for each contract, describe behavior involving a fixed, finite set of roles.

  • A running contract can make a payment to a role or to a public key.
  • In a complementary way, a contract can wait for an action by one of the roles, such as a deposit of currency, or a choice from a set of options. Crucially, a contract cannot wait indefinitely: if no action has been initiated by a given time (the timeout ), then the contract will continue with another behavior, such as refunding any funds in the contract.
  • Depending on the current state of a contract, it may make a choice between two future courses of action, which are themselves contracts.
  • When no more actions are required, the contract will close, and any remaining currency in the contract will be refunded.

When a contract is run, the roles it involves are fulfilled by participants , which are identities on the blockchain. This model allows a role to be transferred during contract execution, so that roles in a running contract can be traded . Each role is represented by a token on the chain, and transferring this transfers the ability to perform the role’s actions. Taking this further, we can represent a single role with multiple tokens, thus allowing the role to be shared: this could be termed being ‘securitized’.

Read more about the Marlowe system, the playground, oracles, Actus smart contracts in this article:

Dive into Marlowe research papers here:


Thanks for nutshell intro of Marlowe. I am keen to dive into Marlowe. Though, not with programming background, I am confident this will be easy to learn and practice for me, being a banker, and Marlowe being DSL. Where to start with abc of Marlowe, please guide. Thanks.

1 Like

Can I suggest that you take a look at this series of videos?

1 Like

Thanks for sending this link. I have earlier seen one of Simon Thompson videos on Youtube. That’s how I got attracted to Marlowe. I have subscribed to the channel and will see all videos starting with O. Thanks again.

In addition to what Simon wrote, this thread contains all resources, tutorials, playgrounds to start: Marlowe resources and tools (playground, tutorials, documentation)

Many thanks. I have noted all the info and also subscribed to Telegram.

Journey starts.

Mohammed AbdulKhader

India: +91-9581747888 or 91-9032416206 (also Whastapp)

KSA:+966567030692 (also Whastapp)

Skype ID**: abdumail**