Você está na página 1de 2

PROGRAMAÇÃO FUNCIONAL

Nome: João Victor Francelino


Disciplina: Paradigmas de Programação

1. Quais as características de uma programação funcional

2. Cite exemplos de algumas linguagens funcionais.

3. O que são os átomos e listas presentes na linguagem funcional (pode utilizar o LISP
como modelo).

Acesse o link http://ww2.inf.ufg.br/~eduardo/lp/alunos/lisp/intro.html e responda as


questões abaixo envolvendo paradigmas de programação:

4. Explique o que é mutabilidade e efeito colateral e PF.

5. Qual a relação e uso do cálculo lambda em um PF.

6. O que significa a não tipificação de dados em uma linguagem de programação?


Como isso é demonstrada no LISP? Cite alguma outra linguagem de programação
que tenha a mesma característica.

7. Porque no texto se afirma “Lisp possui, atualmente, uma eficiência comparável à das
restantes linguagens”.

8. O que é a clareza lógica utilizada pelo LISP (programação funcional)?

9. Na sequência acesse e leia a conclusão apresentada. http://www-


formal.stanford.edu/jmc/history/lisp/node6.html#SECTION00060000000000000000
O que você entendeu sobre a mesma ?

10. Procure 4 exemplos utilizando o LISP e tente executar em um ambiente oinline.

Respostas

1 - A programação funcional corresponde à programação padrão é baseada no conceito


de declarar o comportamento de um programa como um modelo matemático funcional,
em vez de sequências explícitas de instruções para um processador, que é o principal
conceito na programação imperativa.

2 – Clojure, Scala, Haskell, Rust e Erlang.

3 - As expressões que escrevemos em Scheme podem ser classificadas em dois tipos:


átomos e listas. Os átomos podem ser de três tipos: numerais, textos e símbolos. Uma
lista, por sua vez, é uma sequência de expressões entre parênteses.

4 - Imutabilidade, ou Objetos imutáveis, em linhas gerais, são objetos que, uma vez
instanciados, não podem ter seus estados internos modificados. Um código imutável é um
código sem efeitos colaterais. Ou seja, tendo constantes que não podem mudar, você não
vai ficar retribuindo valores a variáveis e gerando efeitos colaterais mortais no seu código.
Todavia, esse princípio tornou-se um dos motivos para que PF não “engatasse” tanto
quanto Imperativa e POO.

5 - Define apenas variáveis, funções com um único parâmetro e aplicação de funções.

6 - Linguagem tipada, ou linguagem tipificada, é uma linguagem de programação que


usa variáveis com tipos específicos. LISP é caracterizada pelas seguintes ideias:
computação de expressões simbólicas além das numéricas, representação das
expressões simbólicas e de outras informações é feita pela estrutura de listas na memória
do computador.

7 – Por que ela é uma linguagem que como ele mesmo diz, “LISP é uma linguagem
dinâmica, cujos programas são constituídos por pequenos módulos, de funcionalidade
genérica e que cumprem um objetivo muito simples. É a sua combinação que produz um
programa completo.”

8 - O resultado mostra que programas LISP podem ser interpretados como sentenças e
esquemas de primeira ordem lógica, confirmando que clareza logica valeria apena.

9 – O LISP apesar de se criada há um bom tempo, ainda é muito atual. Ela ainda tem
recursos operacionais incomparáveis por outras linguagens. A conclusão ainda termina
dizendo, “O LISP se tornará obsoleto quando alguém fizer uma linguagem mais
abrangente que domine o LISP praticamente e também dê uma semântica matemática
clara a um conjunto mais abrangente de recursos.”, então basicamente o LISP é uma
linguagem ainda atual e muito abrangente.

10 - Em termos práticos, em LISP há duas estruturas de dados: o átomo e a lista; o átomo


pode ser numérico, ou alfanumérico. Exemplos de átomos: atomo1, a, 12, 54, bola, nil.

Você também pode gostar