hvm 2.0.22

A massively parallel, optimal functional runtime in Rust.
Documentation
@IO/Call = (a (b (c (d ((@IO/Call/tag (a (b (c (d e))))) e)))))

@IO/Call/tag = 1

@IO/Done = (a (b ((@IO/Done/tag (a (b c))) c)))

@IO/Done/tag = 0

@IO/MAGIC = (13683217 16719857)

@IO/bind = ((@IO/bind__C2 a) a)

@IO/bind__C0 = (* (b (a c)))
  & @undefer ~ (a (b c))

@IO/bind__C1 = (* (* (a (b ((c d) (e g))))))
  & @IO/Call ~ (@IO/MAGIC (a (b ((c f) g))))
  & @IO/bind ~ (d (e f))

@IO/bind__C2 = (?((@IO/bind__C0 @IO/bind__C1) a) a)

@IO/wrap = a
  & @IO/Done ~ (@IO/MAGIC a)

@String/Cons = (a (b ((@String/Cons/tag (a (b c))) c)))

@String/Cons/tag = 1

@String/Nil = ((@String/Nil/tag a) a)

@String/Nil/tag = 0

@call = (a (b c))
  & @IO/Call ~ (@IO/MAGIC (a (b (@call__C0 c))))

@call__C0 = a
  & @IO/Done ~ (@IO/MAGIC a)

@main = cb
  & @IO/bind ~ (y ((((z z) (@IO/wrap bb)) bb) cb))
  & @call ~ (l ((w x) y))
  & @String/Cons ~ (73 (k l))
  & @String/Cons ~ (78 (j k))
  & @String/Cons ~ (86 (i j))
  & @String/Cons ~ (65 (h i))
  & @String/Cons ~ (76 (g h))
  & @String/Cons ~ (73 (f g))
  & @String/Cons ~ (68 (e f))
  & @String/Cons ~ (45 (d e))
  & @String/Cons ~ (78 (c d))
  & @String/Cons ~ (65 (b c))
  & @String/Cons ~ (77 (a b))
  & @String/Cons ~ (69 (@String/Nil a))
  & @String/Cons ~ (46 (v w))
  & @String/Cons ~ (47 (u v))
  & @String/Cons ~ (82 (t u))
  & @String/Cons ~ (69 (s t))
  & @String/Cons ~ (65 (r s))
  & @String/Cons ~ (68 (q r))
  & @String/Cons ~ (77 (p q))
  & @String/Cons ~ (69 (o p))
  & @String/Cons ~ (46 (n o))
  & @String/Cons ~ (109 (m n))
  & @String/Cons ~ (100 (@String/Nil m))
  & @String/Cons ~ (114 (@String/Nil x))

@test-io = 1

@undefer = (((a a) b) b)