Programando em Go faz alguns meses tenho gostado bastante do equilíbrio que a linguagem possui entre ser fortemente tipada, mas ao mesmo tempo possuir um certo sabor de linguagens dinâmicas, obtido pelo seu foco em simplicidade,convenções e concisão. Comecei a pensar que portar o sudoku solver de Python para Go poderia ser um interessante para contrastar essas diferenças e nesse domingo de tarde chuvosa foi o que fiz, e minha tradução para Go está aqui https://github.com/xboard/sudoku_solver. O fato de ter sido possível traduzir o programa numa tarde e a grande similaridade com a versão em python corroboraram minhas cada vez melhores impressões sobre a linguagem Go. O único recurso que fez falta foi a ausência de list comprehension. Em compensação resolvi usar go routines e channels na função de busca e no meu notebook diversos problemas ficaram mais de 3x mais rápidos!
Como amo (jogar e implementar) jogos de raciocínio e estratégia, tenho que confessar que me diverti bastante! :)
2 comentários:
Que tal aproveitar o tempo livre nos longos plantões da Lu para cursar o curso de IA do Norvig?
http://www.ai-class.com/
Eu me inscrevei. Podemos ser colegas de classe uma vez mais ;)
Graças ao seu tweet já me increvi!
E como seremos colegas novamente, já sei de quem novamente copiarei as tarefas! ;-)
Postar um comentário