Cauda chamando em Java e C #?

votos
1

Eu estava lendo sobre Clojure e encontrou uma discussão sobre Java não suportar chamadas de cauda, ​​na versão atual, e que as pessoas estavam jogando exceções para simular cauda chamando na JVM, de qualquer maneira parece que as pessoas estão fazendo algumas coisas malucas lá fora. Então, isso me fez querer saber sobre a chamada cauda do C #, mesmos problemas?

Publicado 09/12/2008 em 16:03
fonte usuário
Em outras línguas...                            


2 respostas

votos
6

código CLR será chamada de cauda, ​​em alguns casos, mas não outros - isso depende do JIT.

Veja blog de David Broman e um de Shri Borde também.

O compilador C # atualmente não emitem cauda chamada IL, mas às vezes o JIT irá fazê-lo de qualquer maneira.

Respondeu 09/12/2008 em 16:12
fonte usuário

votos
1

Recursão de cauda é possível na JVM em certos casos. Por exemplo, Scala pede uma implementação eficiente de recursão básica cauda (ver este post, procure Idioma Trivia nº 8 , apenas a citação que eu poderia encontrar apenas agora). Fala-se e pesquisa sobre a adição de mais apoio, no mesmo esforço como Invoke dinâmico e outros recursos especializados para idiomas não-Java.

Há também muitas vezes fala sobre esse tipo de questões sobre o Java Posse .

E sim, eu sei que isso não é totalmente uma resposta à sua pergunta ...

Respondeu 09/12/2008 em 16:30
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more