Plutus: Writing reliable smart contracts
With Membership
Minimum paid price

Plutus: Writing reliable smart contracts

NOTICE: This book is out of date. It shows PLUTUS as it was in 2019. We are currently working in the new edition that depicts the latest development of the PLUTUS programming language.

About the Book

This practical ebook is a guide to programming with the Plutus language for highly secure smart contracts on the Cardano blockchain, home of the ada cryptocurrency. Plutus is based on the Haskell functional programming language and comes complete with a full testing environment accessed via GitHub or any browser.

The ebook will help you get to grips with using smart contracts on a blockchain by providing real-life examples and functional sample code. Plutus: Writing Reliable Smart Contracts is the first ebook about this new and exciting language and is written by experts from IOHK, the developers of Cardano and ada.

This ebook is concise and focused and uses sample scenarios to help the reader grasp the concepts of this new language. The pitch and flow of this book makes it appealing and is it easy to navigate through the samples which get progressively more complex.

  • Share this book

  • Categories

    • Computers and Programming
    • Haskell
    • Distributed Systems
  • Feedback

    Email the Author(s)

About the Authors

Lars Brünjes
Lars Brünjes

Dr. Lars Brünjes holds a Ph. D. in Pure Mathematics from the University of Regensburg (Germany) and has been a postdoc at the universities of Cambridge (UK) and Regensburg. After working as a Software Architect for ten years, he  joined the blockchain engineering company IOHK in 2016. As Director of Education for IOHK he gives talks and delivers trainings and courses in the programming language Haskell all over the world, but is also involved in IOHK research projects.

Polina Vinogradova
Polina Vinogradova

Polina holds a Ph. D. in Computer Science from the University of Ottawa. Her Ph. D. research consisted of the formalization of category-theoretic proofs, definitions and examples related to the study of abstract computation. She obtained her Master's degree in Mathematics, also from the University of Ottawa, with the focus of her thesis being the study of abstract computation using Category theory, in particular, Turing categories. 

Polina has been working at IOHK as a formal methods software developer since 2018. In 2019, she was a co-instructor (alongside the head instructor, Lars Bruenjes) for the IOHK-run Haskell course in Ethiopia, teaching an all-female cohort of Ethiopian and Ugandan students, many of who went on to work at IOHK afterwards. Later in 2019, Polina took part in running several educational events on the Marlowe smart contract software developed by IOHK team, including a hackathon in Ulaanbaatar, Mongolia, and a workshop in Tel Aviv, Israel. Since then, Polina has been working on the Plutus book.

For more about Polina's experience in Ethiopia, check out this blog post:

Alejandro Garcia Fdz
Alejandro Garcia Fdz

I’m a Project Manager in the Education Department at IOHK, Computer Science teacher and Entrepreneur with experience creating small tech companies. I love leading small focused teams to achieve success. I’m an accredited Kanban Trainer.

Table of Contents

About the Authors



1. Preface

2. UTxO Style Accounting

3. Smart Contracts

3.1. The Power of the Smart Contract

3.2. Real-world and Non Fungible Tokens

3.3. Loans

3.4. ACTUS

4. Welcome to Plutus - A New Language for Reliable Smart Contracts

4.1. Why Plutus?

4.2. About the Plutus Framework

4.3. Running Plutus Playground

5. Plutus Tx

5.1. What is Plutus Tx?

5.2. Writing basic PlutusTx programs

5.3. Functions and datatypes

5.4. The Plutus Tx Prelude and Plutus Tx Builtins

5.5. Lifting values

6. Extended UTxO Model

6.1. Scripts

6.2. Validator, Redeemer, and Data Scripts

6.3. Additional Extended Model Notes

7. Writing Off-Chain Code

8. Our First On-Chain Code

9. A Contract with Parameters

10. Multi-Stage Contracts

11. Looking Beyond Ada and Using Arbitrary Custom Tokens



The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub