Tuesday, February 14, 2017

Mi primer post en Prolog

Como siempre...estaba buscando el próximo lenguaje de programación que quieo aprender...y de alguna manera...Prolog se metió en el camino...

Ya había jugado con Programación Lógica en el pasado cuando aprendí Mercury...pero realmente...cuando se trata de lógica...Prolog se gana el premio...

Ustedes sabían que el primer compilador de Erlang se construyó en Prolog? Yo tampoco -:P

Para aprender...Estoy utilizándo SWI-Prolog que parece ser el mejor y más usado...y debo admitirlo...me encanta -;)


Así que...a simple vista...Prolog me recuerda a Mercury obviamente...pero también un poco a Forth...y extrañamente a Haskell en el sentido de que la recursividad es un elemente muy importante...

Como sucede generalmente cuando aprendo un nuevo lenguaje de programación...Empecé con mi aplicación de lista de números Fibonacci...así que aquí está...

fibonacci.pl
fibo(NUM,A,B,[H|T]) :- (NUM > 1 -> H is A + B, X is NUM - 1, 
                        (A =:= 0 -> fibo(X,H,B,T); fibo(X,H,A,T))).
fibo(_,_,_,[]).

fibonacci(NUM,R) :- fibo(NUM,0,1,X), !, append([0,1], X, R).

extensión .pl? Sip...la misma que Perl...pero como pueden ver...no tiene nada que ver como Perl -;)

En fín...aquí está el resultado...


Mi aplicación de Números LED está felizmente terminada y van a poder verla justo después de este blog -;)

Saludos,

Blag.
Development Culture.

No comments: