Este repositório tem a finalidade de abrigar meus estudos e resoluções
dos exercícios propostos pelo livro “Algoritmos Funcionais”, escrito
pelo José Augusto Navarro
. Também pretendo extender esse repositório
com os estudos pessoais desenvolvidos a parit de outras bibliografias
sobre o assunto, logo, existirá uma pasta para cada bibliografia.
Nele, é apresentada de forma introdutória, o paradigma declaritivo funcional
aplicado à teoria dos conjuntos. A forma primordial de expressão dos códigos
apresentados no livro, é por meio do “português funcional”, porém também são
utilizadas as linguagens Hope
e Haskell
.
O foco deste repositório é resolver e expandir os desafios e exercícios do livro,
primordialmente utilizando a linguagem funcional pura Haskell
, por decisões pessoais.
Tenho em mente em criar outros repositórios onde abrigarei a resolução de exercícios
de sites de desafio - como o Hackerrank
ou exercism
- além da implementação de algoritmos
já conhecidos no ramo da Ciência da Computação em diversas outras linguagens nas quais possuo
interesse, como: Erlang
, Elixir
, Clojure
, entre outros dialetos de LISP
.
ps: ESTE REPOSITÓRIO NÃO TEM A INTENÇÃO DE SER UMA COMPLETA REVISÃO DAS BIBLIOGRAFIAS CITADAS, E SIM APRESENTAR NOTAS E RESUMOS DOS MEUS ESTUDOS PESSOAIS QUE PODEM SER USADOS COMO BASE PARA O INICÍO DOS ESTUDOS DE OUTRAS PESSOAS!
Essa tabela tem como sua principal função, me situar e me acostumar com a sintaxe demonstrada no livro.
Português Funcional | Haskell |
---|---|
const | definição indireta |
var | definição indireta |
se | if |
então | then |
senão | else |
número | a$ |
lógico | Bool |
lista número | [a] |
nada | [] |
-o- | round |
-o- | Ord |
-o- | Eq |
escreva | |
.verdadeiro. | True |
.falso. | False |
# | ++ |
>> | -> |
<< | = |
^ | ^, ^^ or ** |
/ | / |
mod | mod |
div | div |
+ | + |
- | - |
* | * |
.e. | && |
.ou. | | | |
.não. | not |
> | > |
< | < |
>= | >= |
<= | <= |
= | == |
<> | /= |
| x (lambda) | definição indireta |
$ O tipo a
, pode significar, dependendo da situação operacional, os tipos: Int
,
Double
, Integer
, RealFrac
, Fractional Integral
ou Floating
, além de ocorrer às vezes,
o uso do recurso fromIntegral
.