# log-e-sappho experimental type system implementation ## sappho grammar ``` s, t ::= s | t (disjunction, a.k.a. union) | s & t (conjunction, a.k.a. intersection) | s => t (implication) | s -> t (arrow, a.k.a. function) | forall x . t (forall, polymorphic) | box t (box, modular logic) | a [t..] (type operator application) | x (variable) | n (nominal) | true (true, a.k.a. top) | false (false, a.k.a. bottom) | { m : t } (member, a.k.a. atomic record) x ∈ var n ∈ nominal a ∈ opname ```