Trait Product
lambek::product
pub trait Product { }
impl Product for Top
impl<X, Tail> Product for Cons<X, Tail> where Tail: Product,