Quando queremos ter um código com ramificações, podemos usar cond/1:
cond do
x > 10 -> :this_might_be_the_way
y < 7 -> :or_that_might_be_the_way
true -> :this_is_the_default_way
end
O cond segue o primeiro caminho que for avaliado como true. Pelo menos uma das cláusulas deve ser avaliada como true, caso contrário será lançado um erro em tempo de execução.
A condicional cond costuma ser usada quando há mais de duas ramificações lógicas e cada ramificação tem uma condição baseada em variáveis diferentes. Se todas as condições se basearem nas mesmas variáveis, uma condicional case é mais adequada. Se houver apenas duas ramificações lógicas, use uma condicional if.