Além dos tipos padrão no Verse, existem algumas construções adicionais que podem ser usadas da mesma forma que você usaria um tipo, mas que tecnicamente não são tipos. void é uma dessas construções.
Quando usada como o resultado de uma função, ela indica que essa função pode retornar qualquer valor, mas quando chamada, não retornará qualquer resultado particular de interesse.
Por exemplo:
~~~(verse) Foo() : void = {}
Isso significa que Foo [terá sucesso](failure-in-verse), mas não retornará um valor.
Por exemplo:
~~~(verse)
FirstInt(X:int, :void) : int = X
Tecnicamente, void pode ser considerada uma função definida como
~~~(verse) void(:any) : true ~~~
Quando usado como um tipo, é possível considerá-la como sendo aplicada a qualquer coisa que seja atribuída ao identificador tipado correspondente.
Apenas void pode ser usada como função em uma posição de tipo. Funções usadas dessa forma são conhecidas como "functors".