No description
Find a file
2021-07-24 19:27:23 +02:00
code small update 2021-07-24 19:27:23 +02:00
README.md updated README 2021-07-21 13:14:27 +02:00

Plutus Pioneer Program

Lectures

  • Lecture #1

    • Welcome.
    • The (E)UTxO-model.
    • Building the example code.
    • An auction contract in the EUTxO-model.
    • A brief look at the auction code.
    • Running an example auction contract on a local Playground.
    • Homework.
  • Lecture #2

    • Triggering change.
    • Low-level, untyped on-chain validation scripts.
    • High-level, typed on-chain validation scripts.
  • Lecture #3

    • Script contexts.
    • Time handling.
    • Parameterized contracts.
  • Lecture #4

    • Monads.
    • The EmulatorTrace-monad.
    • The Contract-monad.

Code Examples

Exercises

  • Week #1

    • Clone the The Plutus repository, check out the correct commit as specified in cabal.project.
    • Set-up IOHK binary caches How to set up the IOHK binary caches. "If you do not do this, you will end up building GHC, which takes several hours. If you find yourself building GHC, STOP and fix the cache."
    • Enter a nix-shell.
    • Build the English Auction contract with cabal build (you may need to run cabal update first).
    • Go to the plutus-playground-client folder.
    • Start the Playground server with plutus-playground-server.
    • Start the Playground client (in another nix-shell) with npm run start.
    • Copy-paste the auction contract into the Playground editor.
    • Compile.
    • Simulate various auction scenarios.
  • Week #2

    • Fix and complete the code in the Homework1 module.
    • Fix and complete the code in the Homework2 module.
  • Week #3

    • Fix and complete the code in the Homework1 module.
    • Fix and complete the code in the Homework2 module.
  • Week #4

    • Implement function payTrace in the Homework module.
    • Handle exceptions thrown by submitTx in function payContract in the same module.

Some Plutus Modules

Additional Resources