Estou curioso. Eu tenho trabalhado nesse tipo de dados no OCaml : type 'a exptree = | Epsilon | Delta of 'a exptree * 'a exptree | Omicron of 'a | Iota of 'a exptree exptree Que pode ser manipulado usando funções recursivas de tipo explícito (um recurso que foi adicionado recentemente)....