Eu sou novo na programação funcional, então esses são apenas alguns pensamentos.
Há um exemplo interessante de um Ray Tracer no F # que ilustra alguns dos pontos fortes da programação funcional, como funções de ordem superior , recursão , paralelismo e correspondência de padrões . Estendendo alguns desses conceitos, parece que a matemática raster é uma área-chave no GIS para a qual a programação funcional pode ser particularmente adequada.
edit: Aqui está outro exemplo do mesmo site: Regra 30 Autômatos celulares
Outro pensamento é que você não precisa escrever todo o seu programa em F #. Você pode ter o programa principal escrito em C # e criar projetos / montagens em F # que resolvem problemas específicos de programação funcional. Eu li que você também pode usar o ILMerge para mesclar C # e F # em um executável / assembly.
Por último, há um monte de coisas de programação funcional que você pode fazer em C # com LINQ , através da utilização de expressões lambda , funções de ordem superior ( Select
, Where
, etc.), seqüência padrão de correspondência, etc.