TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

A Paradigma Funcional

Por:   •  20/9/2015  •  Resenha  •  1.258 Palavras (6 Páginas)  •  324 Visualizações

Página 1 de 6

Paradigma Funcional

Introdução

Uma função é uma regra para mapear (ou associar) elementos de um conjunto (o domínio)

em elementos de outros conjuntos (o contra-domínio).

Ex.:

Quadrado(x)

x  x’

( 2 3 4 )  ( 4 9 16 )

domínio  contra-domínio

Uma vez que a função está definida ela pode ser aplicada a um elemento particular do seu

domínio e essa aplicação fornece o elemento associado no contra-domínio.

Quadrado(x) ≡ x * x, usa-se o símbolo “≡” para expressar “é equivalente a” nesta definição x

é um parâmetro, denotando qualquer elemento do domínio. Em tempo de aplicação, especifica-se um

elemento particular do domínio. Este elemento, chamado argumento, substitui o parâmetro de

definição.

Uma linguagem funcional faz uso das propriedades matemáticas das funções.

Uma linguagem funcional tem 4 componentes:

A) Um conjunto de funções primitivas: As funções primitivas são prédefinidas

pela linguagem e podem ser aplicadas.

B) Um conjunto de formas funcionais: As formas funcionais são mecanismos

pelos quais se podem combinar funções para criar novas funções.

C) A operação de aplicação: A operação de aplicação é o mecanismo

embutido para aplicar uma função a seus argumentos e produzir um valor.

D) Um conjunto de dados (ou objetos): Os dados são os elementos

Paradigma Funcional Page 1 of 10

http://www.ulbra.inf.br/moodle/file.php/167/logfun.htm 13/03/2013

permitidos nos domínios e co-domínios.

Os objetos da linguagem são bastante simples:

Um objeto pode ser um átomo ou uma seqüência de objetos, a seqüência vazia é representada por

NIL.

Átomos são cadeias de caracteres, como A, ABC, 26.

Há um conjunto de funções e formas funcionais.

Não há variável, qualquer dado pode ser usado literalmente.

Uma seqüência de N objetos x1,x2,x3,...,xn é representada por , e a função ƒ

aplicada ao parâmetro x por ƒ:x.

Paradigma Funcional Page 2 of 10

http://www.ulbra.inf.br/moodle/file.php/167/logfun.htm 13/03/2013

Funções primitivas

A linguagem fornece certas funções primitivas que correspondem aproximadamente ás

operações embutidas das linguagens imperativas.

A) Operação de seleção e estruturação

i : ≡ xi  2 : ,d> ≡

first : ≡ x1  first : ≡ a

last : ≡ xn  last : ≡ c

tail left :  tl :

length : ≡ n  length : ≡ 3

rotation left:

rotl :

rotation right :

rotr :

constrution : > ≡

cons : <1,<2,3,4>> ≡ <1,2,3,4>

*nota tail = cortar; length = contar; i = seleção

Paradigma Funcional Page 3 of 10

http://www.ulbra.inf.br/moodle/file.php/167/logfun.htm 13/03/2013

B) Operação Identidade

id : x ≡ x

C) Operações aritméticas

+ : ≡ x + y  + : <4,2> ≡ 6

- : ≡ x + y  - : <4,2> ≡ 2

* : ≡ x + y  * : <4,2> ≡ 8

/ : ≡ x + y  / : <6,2> ≡ 3

| : ≡ x + y  | : <5,2> ≡ 1 5 mod 2

D) Operações Predicado

> : ≡ T if x > y , otherwise F

< : ≡ T if x < y , otherwise F

atom : x ≡ T if x atomo  atom : ≡ F

Paradigma Funcional Page 4 of 10

http://www.ulbra.inf.br/moodle/file.php/167/logfun.htm 13/03/2013

null : x ≡ T if x nil  null : ≡ F

equal : x ≡ T if x =y  eq : ≡ F

and : x ≡ T if both are T  and : ≡ F

or : x ≡ T if one is T  or : ≡ T

not : x ≡ T if x is F  not : F ≡ T

E) Operações de seleção e estruturação completas

distribution left : > ≡ <, , …,y,xn>>

distl : > ≡ <,,>

distribution rigth : <,y> ≡ <,,…,xn,y>>

distr : <,d> ≡ <,,>

append rigth : <,y> ≡

appdr : <,a> ≡

tail right :

tlr :

i right : ≡ x n-i+1  2r : ≡ c

Paradigma Funcional Page 5 of 10

http://www.ulbra.inf.br/moodle/file.php/167/logfun.htm 13/03/2013

Formas Funcionais

A) Composição

( ƒ ○ g ): x ≡ ƒ : ( g : x )

ex.: (rotl ○ cons ) : >

rotl ( cons : >)

rotl :

(2 ○ tl ) :

2 : ( tl : )

2 :

(last ○ rotr ○ first ) : <,d,>

(last ○ rotr) :

...

Baixar como (para membros premium)  txt (7.3 Kb)   pdf (109.6 Kb)   docx (1.3 Mb)  
Continuar por mais 5 páginas »
Disponível apenas no TrabalhosGratuitos.com