Cardano Overview
  • 📖What is cardano?
    • Cardano 101
    • Onboarding Guide
      • Simple Cardano
    • Cardano Statistics
    • Flawed Narratives About Cardano
      • Facts About Cardano Market Evolution
  • ⚙️How does Cardano work?
    • Table of Contents
      • Three Layers
        • Consensus Layer
          • Proof of Stake (PoS)
          • Pros and Cons of PoS
        • Ledger Layer
        • Network Layer
      • Cryptography
      • Peer-to-peer Communication Between Nodes
      • Interoperability
      • Hard Fork Combinator
      • Stake pools
      • Financial Aspects
        • The ada token: definition and functionality
        • Staking
        • RealFi
  • 🌐Blockchain Model
    • Blockchain Model Contents
      • Cardano Roadmap
        • BYRON
        • SHELLEY
        • GOGUEN
        • BASHO (We are here)
          • Basho Era Progresses with Vasil Hard Fork
        • VOLTAIRE
      • Extended Unspent Transaction Output (EUTXO)
      • No-Surprises Transaction Validation on Cardano
      • Things Cardano Does Not Do
        • Cryptocurrency Burning
  • 🕸️Descentralization
    • Descentralization Contents
      • Ouroboros
      • The Ouroboros Path to Descentralization
        • Further Reading
  • 🌌Scalability
    • Scalability Contents
      • Taking a Closer Look at IOG Research
        • How Layer 1 and Layer 2 Solutions Create a Faster and More Resilient Blockchain
        • Scaling Cardano
      • Layer 1 Solutions
        • Pipelining in Ouroboros
        • Input Endorsers
        • Tiered Pricing
      • Layer 2 Solutions
        • Sidechains
          • Easy Addition of New features
          • Scalability
        • Hydra
        • Mithril
  • 🏛️Governance
    • Governance Contents
      • Liquid Democracy
      • Project Catalyst
      • Catalyst Circle and Community Participation
  • 🎨Cardano Ecosystem
    • Ecosystem Contents
      • Wallets
        • Daedalus
        • Lovelace
          • By building Lovelace we aim to...
        • Yoroi
        • Hardware wallets
        • Other compatible wallets
      • Ecosystem
        • Ecosystem Explorer
        • Marketplaces -Minting service
        • P2P trade
        • Cardano Blockchain Explorer
        • Tools
        • Faucets
        • Documentation
        • Payments
        • News
      • EVM Compatibility
        • Milkomeda
        • Blueshift
      • Descentralized Exchanges (DEX)
      • DApp Store
        • Demeter Run
      • Stable Coins in Cardano
      • Projects
        • Digital Identity
        • Educational Initiatives
        • A Long List of Projects
      • NFTs
      • Glossary
  • 📣Social media
    • Social Media
      • Official Cardano Media
      • Cardano Fans Media
  • 🛠️Developer portal
    • Developer Portal Contents
      • Programming Languages
        • Haskell
        • Plutus
        • Marlowe
      • Plutus Tx: Compiling Haskell Into Plutus Core
      • Cardano Resources and Further Reading
      • Research Papers
  • 📝About
    • About
      • Purpose of This Site
      • Who am I?
Powered by GitBook
On this page
  1. Developer portal
  2. Developer Portal Contents

Plutus Tx: Compiling Haskell Into Plutus Core

Get to the heart of writing smart contract applications on Cardano

PreviousMarloweNextCardano Resources and Further Reading

Last updated 2 years ago

Last week saw the release of the refreshed version of the . This is our showcase for the , at the heart of which is the ability to write smart contract applications in a single, high-level language: Haskell.

Our toolchain allows a single Haskell program to produce not only an executable file that users can run on their own computers, but also the code that runs on the Cardano blockchain. This gives users a battle-tested, high-quality programming language, and makes use of standard tooling and library support. Nobody wants to learn a proprietary programming language and half-baked tools if they don’t have to!

The technology that powers this is called Plutus Tx, and is, in essence, a compiler from Haskell to Plutus Core – the language that runs on the chain – provided as a GHC plug-in. In this post we’ll dive into how this works, and some of the technical challenges.

Contents:

  • Boiling Down Haskell

  • Down the Tube

  • Sneaking Into GHC

  • The Switcheroo

  • Finding the Source

  • Run Time Matters Too

  • Getting Out of the Way

  • Postscript: Show me the Money!

Source:

https://iohk.io/en/blog/posts/2021/02/02/plutus-tx-compiling-haskell-into-plutus-core/
🛠️
Plutus Playground
Plutus Platform
Page cover image
Visual made by
@ieprog