Este é um caso especial desta questão que considero particularmente pertinente.
Estou trabalhando em um jogo para Android e planejando usar o Scala com a libgdx. Estou planejando fazer um jogo de alto desempenho, mas não necessariamente um jogo de alto desempenho. Eu vi a documentação do libgdx sobre Garbage Collection , e isso me faz pensar:
- A programação funcional implica muitos objetos imutáveis.
- Portanto, a mutação de um objeto requer a criação de um novo objeto.
- Assim, muitos objetos são coletados como lixo, o que prejudica o desempenho.
Esse é um problema intransponível? Existem outros problemas significativos com o estilo funcional no Android?
For gaming? Avoid functional languages. Their entire paradigm fails to mesh well with games.
Na verdade, eu li alguns artigos de desenvolvedores de jogos de alto nível expressando interesse em programação funcional. Havia um de Tim Sweeney scribd.com/doc/5687/… e John Carmack parece ter um interesse ativo na avaliação de linguagens funcionais e atualmente está realizando uma porta do Wolfenstein 3d em Haskell, tinyurl.com/cnzx57uPractically all of the run-time code (approximately half a million lines of source code) was written in GOAL (Game Object Assembly Lisp)