Scala has a handy @tailrec annotation <https://www.scala-lang.org/api/2.12.1/scala/annotation/tailrec.html> that makes the compiler error out if the function is not amenable to tail call optimization. One possible footgun while learning Elixir and recursion is trying to implement a tail-recursive fn and realizing when the stack blows up that you haven't in fact succeeded. This annotation would serve as a safeguard.
-- *O conteúdo desta mensagem é confidencial e destinado exclusivamente aos destinatários. Caso a receba por engano, favor destruí-la e notificar o remetente de imediato. O correio eletrônico não configura meio seguro para transmissão de dados e o remetente NÃO se responsabiliza por eventual erro, atraso, extravio, interceptação ou infecção por vírus. Cabe ao destinatário solicitar versão física sempre que necessário.* * ** The content of this message is confidential and was intended solely to its recipient. **In case this message is received by mistake, please destroy it and notify the sender immediately. Electronic mails are not a safe channel for data transmission and the sender accepts NO liability for eventual errors, delays, loss, interception or virus infection. When necessary, the receiver must request a hard-copy version.* -- You received this message because you are subscribed to the Google Groups "elixir-lang-core" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/f02e06bf-a9ab-482b-b5de-1b11a8cdb9d8n%40googlegroups.com.
