A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Linguagem Lógico-Funcional Curry Gabriel Cardoso - 161578 Jeferson Rubert - 171392.

Apresentações semelhantes


Apresentação em tema: "Linguagem Lógico-Funcional Curry Gabriel Cardoso - 161578 Jeferson Rubert - 171392."— Transcrição da apresentação:

1 Linguagem Lógico-Funcional Curry Gabriel Cardoso - 161578 Jeferson Rubert - 171392

2 Sumário ● Introdução ● Características da Linguagem ● Vantagens e Desvantagens

3 Introdução ● Fusão dos paradigmas funcional e lógico ● Iniciativa internacional no desenvolvimento da linguagem ● Por que escolhemos o Curry? ● Interesse criado durante a disciplina em linguagens lógicas ● Exemplos de execução do Curry ● http://www-ps.informatik.uni- kiel.de/~mh/pakcs/curryinput_c2p.cgi http://www-ps.informatik.uni- kiel.de/~mh/pakcs/curryinput_c2p.cgi

4 Características da Linguagem Tipos de Dados:

5 Características da Linguagem Tipos de Dados: Além disso o usuário pode definir qualquer tipo de dado do seu interesse: data Cores = Azul | Verde | Vermelho

6 Características da Linguagem Operações pré-definidas

7 Características da Linguagem Definição usual: square x = x * x square ( 2 + 3 ) Result: 25 ? Função Anônima (\x -> x * x ) ( 2 + 3) Result: 25 ? Funções:

8 Características da Linguagem Funções Não-determinísticas: Preservam aspectos da programação funcional em conjunto com programação lógica Ex.: oncall Joan = Monday oncall Joan = Wednesday oncall Richard = Monday oncall Luc = Tuesday

9 Características da Linguagem available x | oncall x == today = True | otherwise = False Em virtude do Não-determinismo ● Funções mais simples sem a necessidade de estruturas de dados especificas para certos casos

10 Características da Linguagem Where Cria um escopo local para variáveis declaradas dentro da função chamada com Where Let Idem ao Where, diferenciando no fato que caso seja chamada um nova função, essa estará no escopo do Let Definições Locais

11 Características da Linguagem Variável Lógica e Narrowing Não tem tipo definido, só pode ser declarada dentro do escopo de Where ou Let Utilizadas para realizar teste de condição Ex.: z==2+2 where z free

12 Características da Linguagem Range e Comprehensions Ex.: Seleção de elementos de uma lista usando expressões lógicas

13 Características da Linguagem ● Listas ● Strings ● Tuplas ● Avaliação Preguiçosa ● Função de Ordem Maior

14 Vantagens e Desvantagens Vantagens: ● Pode ser utilizada em programação web ● Linguagem acadêmica, voltada ao aprendizado ● Também pode ser utilizada em bancos de dados e XML

15 Vantagens e Desvantagens Desvantagens: ● Muito pouco utilizada ● Pouco material de apoio sobre a linguagem ● Material existente ainda em fase de construção e consolidação


Carregar ppt "Linguagem Lógico-Funcional Curry Gabriel Cardoso - 161578 Jeferson Rubert - 171392."

Apresentações semelhantes


Anúncios Google