Orbis
  • Orbis
  • High-Level Overview
  • Technology
    • zk-SNARKs
    • Halo 2
    • Cardano
      • EUTXO
  • Architecture
    • Process
    • L1 Rollup Protocol: On-Chain Inputs and Outputs
    • L2 Rollup Protocol: On-Rollup Transactions
    • Orbis Specification Language (OSL)
  • Smart Contracts
    • Programming on Orbis
    • Plutus Language Family
  • Design Considerations
    • Reliability
    • Liveness and Safety
    • Decentralization
      • Single node
      • Static master/workers
      • Dynamic master/workers
    • Data Availability
    • Upgradability and Governance
    • Performance
  • Inter-Rollup and Inter-Protocol Bridges
  • HALO Token
    • HALO
    • Tokenomics
  • Official Links
    • Website
    • Twitter
    • Blog
    • Discord
    • Github
    • LinkedIn
Powered by GitBook
On this page
Export as PDF
  1. Smart Contracts

Plutus Language Family

Out of the box, Orbis will support writing on-rollup smart contract scripts in Haskell using PlutusTx, Plutarch, and in Pluto. All these script languages will have a shared compilation pipeline that compiles to TinyRAM via UPLC.

PlutusTx and Plutarch are domain-specific languages embedded in Haskell (Haskell-EDSLs). Pluto is a language built from scratch and not embedded in another language. Pluto and Plutarch were created to address several performance issues involving the Haskell-to-Plutus code generation in PlutusTx. PlutusTx has several performance problems regarding the size of the generated code and the time and space required to execute the resulting code. In comparison, Pluto and Plutarch have shown improvements by orders of magnitude in all these metrics in porting programs from PlutusTx to Pluto or Plutarch.

Orbis Labs will provide SDKs that allow the off-rollup portions of a dapp that interact with the on-rollup contract to be written in various languages. Orbis will include SDKs for writing the off-rollup portions of a dapp in Haskell, TypeScript/JavaScript, and Python. Over time, off-chain dapp code development SDKs for more languages will be added.

PreviousProgramming on OrbisNextReliability

Last updated 2 years ago