packages feed

HaRe-0.6: tools/hs2alfa/Prelude.alfa

package Prelude where
  Unit :: Set
    = data Unit
  Bool :: Set
    = data False | True
  Char :: Set
    = data A | B | C
  List (A::Set) :: Set
    = data Nil | (:) (x::A) (xs::List A)
  postulate undefined (A::Set) ::A

Class :: #2
  = Type

Star :: Type
  = Set

if (A::Star)(cnd::Prelude.Bool)(thn::A)(els::A) :: A
  = case cnd of {
      (False) -> els;
      (True) -> thn;}
{-# Alfa hiding on
var "Unit" as "()"
con "Unit" as "()"
con "Nil" as "[]"
con "Cons" infix rightassoc 5 as ":"
con ":" infix rightassoc 5
var "List" mixfix as "[_]"
var "Star" as "*" with symbolfont
var "if" hide 1 mixfix as "if _ then _ else _"
 #-}