SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
Davi Felipe Russi, davirussi@inf.ufsm.br
Andrea Schwertner Charão, andrea@inf.ufsm.br
              Universidade Federal de Santa Maria
Haskell é uma linguagem que é comumente
usada no ensino do paradigma funcional.

Ambientes de Desenvolvimento Integrados
(IDEs) facilitam a programação de aplicativos.
Alunos da graduação tem dificuldades com o
aprendizado da linguagem funcional Haskell.

Erros iniciais como de sintaxe e lógica podem
ser minimizados com uso de IDEs.
Conhecer os Ambientes de Desenvolvimento
Integrado disponíveis para Linguagem de
Programação Haskell.

Analisar seus recursos e avaliar
experimentalmente suas características

Definir a melhor IDE para o ensino-
aprendizagem.
O uso de IDEs no ensino de linguagens de
programação é um assunto bastante
explorado.

De forma geral, entende-se que este tipo de
ferramenta possa trazer vantagens para o
aluno que está iniciando o aprendizado de
uma nova linguagem de programação (Pears
et al., 2007; Caspersen, 2007).
Existem, algumas IDEs que foram criadas com
o propósito do ensino como: BlueJ (Kölling et
al., 2003), Greenfoot (Henriksen & Kölling,
2004) e DrJava (Allen, Cartwright & Stoler,
2002) para linguagem Java.
Em relação a linguagem Haskell, existiu um
trabalho visando este mesmo propósito o
HEAT (Ashton et al., 2005). Mas, de acordo
com os autores apresentava problemas de
funcionamento.
Levantamento de IDEs disponíveis.
Elaboração de uma lista com 6 ambientes.
A análise iniciou pela leitura da
documentação.
Experimentação das mesmas.
As observações de cada ferramenta foram
reunidas e sistematizadas em documentos
para referência.
Aplicação da IDE mais completa em sala de
aula
Disciplina: Paradigmas de Programação(UFSM)
É teórico-prática de 4 horas/semanais (3º
semestre)
Utiliza-se a linguagem Haskell para o ensino
do paradigma funcional.
Interpretador (GHC ou HUGS) mais editor de
texto.


                  +
Alguns alunos tinham problemas como:
esquecer de carregar o programa modificado
no interpretador.
Escolha do IDE Eclipse com seu plugin para
Haskell (EclipseFP).
Reunir opiniões e observações sobre o seu
uso durante a disciplina de graduação.
Turma de 30 alunos com 15 horas aulas
teórico-práticas sobre linguagem funcional e
Haskell.
Em uma aula foi utilizado a combinação
interpretador mais editor
Em seis aulas o Eclipse com o plugin
EclipseFP
As opiniões eram dadas verbalmente durante
as aulas práticas e então registradas pelo
professor.
Formulário online onde os alunos podiam dar
sua opinião anonimamente:
 Questões sobre IDEs geral
 Questões sobre o Eclipse
 Opiniões e sugestões.
Os alunos apresentaram maior facilidade com
o ciclo edição, e testes dos programas.
Alguns alunos comentaram que preferem
usar IDE por causa da maior variedade de
recursos.
Vários alunos registraram que o uso da IDE
ajudou a evoluir na programação em Haskell,
o que corrobora com a hipótese inicial.
Outros comentaram que a experiência foi
positiva já que o Eclipse é uma ferramenta
popular para o desenvolvimento C, C++ e
Java.
 Acredita-se que essa popularidade é mais
uma motivação para o aprendizado da
linguagem Haskell.
Alguns aluno apresentaram dificuldades na
instalação completa da IDE.
 Alguns computadores do laboratório também
apresentaram a ferramenta parcialmente
instalada. (sem realce de sintaxe e ajuda
rápida)
 Este fato acabou desmotivando alguns alunos
que usaram a combinação editor mais
interpretador.
Desenvolvimento de documentação específica
para cada uma das IDEs analisadas.
Geração da tabela comparando alguns dos
aspectos mais importantes de cada IDE
Resultados positivos do estudo de caso.
ALLEN, E.; CARTWRIGHT, R.; STOLER, B. DrJava: a lightweight pedagogic
environment for Java. In: SIGCSE '02: SIGCSE technical symposium on
computer science education, 33, 2002, Cincinnati, USA. Anais. ACM,
                  education
2002, p. 137-141.

ASHTON, D.; OLIVE, C.; TRAVERS, J.; WHEST, L. HEAT – A Beginners' IDE
                                                         Beginners'
for Haskell Technical Report. Canterbury: University of Kent, 2005.
    Haskell.

CASPERSEN, M. E. Educating Novices in The Skills of Programming
                                                    Programming.
Aarhus, Denmark: University of Aarhus, 2007. 323 p. Tese de
Doutorado.

HENRIKSEN, P.; KÖLLING, M. Greenfoot: combining object visualisation
with interaction. In: OOPSLA '04: ACM SIGPLAN conference on Object-
                                                            Object-
oriented programming systems, languages, and applications, 19, 2004,
                                 languages,    applications
Vancouver, Canada. Anais. ACM, 2004, pp. 73-82.
HUGUES, J. Why Functional Programming Matters.
Computer Journal v.32, n.2, p. 98-207, 1989.
          Journal.

JONES, S. P. Haskell 98 Language and Libraries – The
Revised Report. 2002. Disponível em:
<http://www.haskell.org/onlinereport/>. Acesso em:
Outubro/2011.

KÖLLING, M., QUIG, B., PATTERSON, A.; ROSENBERG, J., The
BlueJ system and its pedagogy, Journal of Computer
Science Education v.13, n.4, p. 249-268, 2003.
        Education,

PEARS, A.; SEIDMAN, S.; MALMI, L.; MANNILA, L.; ADAMS,
E.; BENNEDSEN, J.; DEVLIN, M.; PATERSON, J. A survey of
literature on the teaching of introductory programming.
SIGCSE Bull v.39, n.4, p. 204-223, 2007.
        Bull.
Perguntas?

Weitere ähnliche Inhalte

Ähnlich wie Haskell

Sobre a Criação de Unidades de Aprendizagem do Padrão IMS Learning Design - u...
Sobre a Criação de Unidades de Aprendizagem do Padrão IMS Learning Design - u...Sobre a Criação de Unidades de Aprendizagem do Padrão IMS Learning Design - u...
Sobre a Criação de Unidades de Aprendizagem do Padrão IMS Learning Design - u...Luiz Matos
 
Recursos Educacionais Abertos para leitura e produção textual
Recursos Educacionais Abertos para leitura e produção textualRecursos Educacionais Abertos para leitura e produção textual
Recursos Educacionais Abertos para leitura e produção textualJoyce Fettermann
 
A LÓGICA DE PROGRAMAÇÃO COMO FERRAMENTA METODOLÓGICA PARA O ENSINO DE CIÊNCIA...
A LÓGICA DE PROGRAMAÇÃO COMO FERRAMENTA METODOLÓGICA PARA O ENSINO DE CIÊNCIA...A LÓGICA DE PROGRAMAÇÃO COMO FERRAMENTA METODOLÓGICA PARA O ENSINO DE CIÊNCIA...
A LÓGICA DE PROGRAMAÇÃO COMO FERRAMENTA METODOLÓGICA PARA O ENSINO DE CIÊNCIA...hawbertt
 
Ode Aprendizagem -Revista Hipertextos
Ode Aprendizagem -Revista HipertextosOde Aprendizagem -Revista Hipertextos
Ode Aprendizagem -Revista HipertextosLuciana Lima
 
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 3º PERÍODO PROGRAMAÇÃO ORIE...
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 3º PERÍODO PROGRAMAÇÃO ORIE...CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 3º PERÍODO PROGRAMAÇÃO ORIE...
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 3º PERÍODO PROGRAMAÇÃO ORIE...Os Fantasmas !
 
Modelo de artigo revista igapó
Modelo de artigo revista igapóModelo de artigo revista igapó
Modelo de artigo revista igapóRegina Alencar
 
Modelo de artigo revista igapó
Modelo de artigo revista igapóModelo de artigo revista igapó
Modelo de artigo revista igapóRegina Alencar
 
Modelo de artigo revista igapó
Modelo de artigo revista igapóModelo de artigo revista igapó
Modelo de artigo revista igapóRegina Alencar
 
Ementa disciplina eletiva_ferramentas_e_estrategias_2018-2
Ementa disciplina eletiva_ferramentas_e_estrategias_2018-2Ementa disciplina eletiva_ferramentas_e_estrategias_2018-2
Ementa disciplina eletiva_ferramentas_e_estrategias_2018-2Gonzalo Abio
 
Apresentacão Pesquisa-Design em um curso sobre multimodalidade e mmultiletram...
Apresentacão Pesquisa-Design em um curso sobre multimodalidade e mmultiletram...Apresentacão Pesquisa-Design em um curso sobre multimodalidade e mmultiletram...
Apresentacão Pesquisa-Design em um curso sobre multimodalidade e mmultiletram...Gonzalo Abio
 
Objetos de aprendizagem e recursos didaticos
Objetos de aprendizagem e recursos didaticosObjetos de aprendizagem e recursos didaticos
Objetos de aprendizagem e recursos didaticoscarolnacari
 
Design de ambientes para EaD: (re)significações do usuário
Design de ambientes para EaD: (re)significações do usuárioDesign de ambientes para EaD: (re)significações do usuário
Design de ambientes para EaD: (re)significações do usuárioTelEduc
 
ENSINO DE PROGRAMAÇÃO DE COMPUTADORES: UMA PROPOSTA DE ABORDAGEM PRÁTICA BASE...
ENSINO DE PROGRAMAÇÃO DE COMPUTADORES: UMA PROPOSTA DE ABORDAGEM PRÁTICA BASE...ENSINO DE PROGRAMAÇÃO DE COMPUTADORES: UMA PROPOSTA DE ABORDAGEM PRÁTICA BASE...
ENSINO DE PROGRAMAÇÃO DE COMPUTADORES: UMA PROPOSTA DE ABORDAGEM PRÁTICA BASE...João Henrique Berssanette
 
Construing Experience in Academic Writing: A Cross-Disciplinary Corpus-Based ...
Construing Experience in Academic Writing: A Cross-Disciplinary Corpus-Based ...Construing Experience in Academic Writing: A Cross-Disciplinary Corpus-Based ...
Construing Experience in Academic Writing: A Cross-Disciplinary Corpus-Based ...emegonline
 
A relevância das Tecnologias da Informação e da Comunicação para os estudos e...
A relevância das Tecnologias da Informação e da Comunicação para os estudos e...A relevância das Tecnologias da Informação e da Comunicação para os estudos e...
A relevância das Tecnologias da Informação e da Comunicação para os estudos e...Adriana Sales Zardini
 
Análise da Prova do IFRJ 2011- Língua Inglesa
Análise da Prova do IFRJ 2011- Língua InglesaAnálise da Prova do IFRJ 2011- Língua Inglesa
Análise da Prova do IFRJ 2011- Língua InglesaThaís Amaral
 
Dissertacao (1)
Dissertacao (1)Dissertacao (1)
Dissertacao (1)fodisz
 
ApresentaçãO U2 S4 G5
ApresentaçãO U2 S4 G5ApresentaçãO U2 S4 G5
ApresentaçãO U2 S4 G5Grupo 5
 

Ähnlich wie Haskell (20)

Sobre a Criação de Unidades de Aprendizagem do Padrão IMS Learning Design - u...
Sobre a Criação de Unidades de Aprendizagem do Padrão IMS Learning Design - u...Sobre a Criação de Unidades de Aprendizagem do Padrão IMS Learning Design - u...
Sobre a Criação de Unidades de Aprendizagem do Padrão IMS Learning Design - u...
 
Recursos Educacionais Abertos para leitura e produção textual
Recursos Educacionais Abertos para leitura e produção textualRecursos Educacionais Abertos para leitura e produção textual
Recursos Educacionais Abertos para leitura e produção textual
 
A LÓGICA DE PROGRAMAÇÃO COMO FERRAMENTA METODOLÓGICA PARA O ENSINO DE CIÊNCIA...
A LÓGICA DE PROGRAMAÇÃO COMO FERRAMENTA METODOLÓGICA PARA O ENSINO DE CIÊNCIA...A LÓGICA DE PROGRAMAÇÃO COMO FERRAMENTA METODOLÓGICA PARA O ENSINO DE CIÊNCIA...
A LÓGICA DE PROGRAMAÇÃO COMO FERRAMENTA METODOLÓGICA PARA O ENSINO DE CIÊNCIA...
 
Ode Aprendizagem -Revista Hipertextos
Ode Aprendizagem -Revista HipertextosOde Aprendizagem -Revista Hipertextos
Ode Aprendizagem -Revista Hipertextos
 
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 3º PERÍODO PROGRAMAÇÃO ORIE...
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 3º PERÍODO PROGRAMAÇÃO ORIE...CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 3º PERÍODO PROGRAMAÇÃO ORIE...
CST EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS IFPB 3º PERÍODO PROGRAMAÇÃO ORIE...
 
Modelo de artigo revista igapó
Modelo de artigo revista igapóModelo de artigo revista igapó
Modelo de artigo revista igapó
 
Modelo de artigo revista igapó
Modelo de artigo revista igapóModelo de artigo revista igapó
Modelo de artigo revista igapó
 
Modelo de artigo revista igapó
Modelo de artigo revista igapóModelo de artigo revista igapó
Modelo de artigo revista igapó
 
Ementa disciplina eletiva_ferramentas_e_estrategias_2018-2
Ementa disciplina eletiva_ferramentas_e_estrategias_2018-2Ementa disciplina eletiva_ferramentas_e_estrategias_2018-2
Ementa disciplina eletiva_ferramentas_e_estrategias_2018-2
 
Apresentacão Pesquisa-Design em um curso sobre multimodalidade e mmultiletram...
Apresentacão Pesquisa-Design em um curso sobre multimodalidade e mmultiletram...Apresentacão Pesquisa-Design em um curso sobre multimodalidade e mmultiletram...
Apresentacão Pesquisa-Design em um curso sobre multimodalidade e mmultiletram...
 
Objetos de aprendizagem e recursos didaticos
Objetos de aprendizagem e recursos didaticosObjetos de aprendizagem e recursos didaticos
Objetos de aprendizagem e recursos didaticos
 
Design de ambientes para EaD: (re)significações do usuário
Design de ambientes para EaD: (re)significações do usuárioDesign de ambientes para EaD: (re)significações do usuário
Design de ambientes para EaD: (re)significações do usuário
 
ENSINO DE PROGRAMAÇÃO DE COMPUTADORES: UMA PROPOSTA DE ABORDAGEM PRÁTICA BASE...
ENSINO DE PROGRAMAÇÃO DE COMPUTADORES: UMA PROPOSTA DE ABORDAGEM PRÁTICA BASE...ENSINO DE PROGRAMAÇÃO DE COMPUTADORES: UMA PROPOSTA DE ABORDAGEM PRÁTICA BASE...
ENSINO DE PROGRAMAÇÃO DE COMPUTADORES: UMA PROPOSTA DE ABORDAGEM PRÁTICA BASE...
 
Construing Experience in Academic Writing: A Cross-Disciplinary Corpus-Based ...
Construing Experience in Academic Writing: A Cross-Disciplinary Corpus-Based ...Construing Experience in Academic Writing: A Cross-Disciplinary Corpus-Based ...
Construing Experience in Academic Writing: A Cross-Disciplinary Corpus-Based ...
 
A relevância das Tecnologias da Informação e da Comunicação para os estudos e...
A relevância das Tecnologias da Informação e da Comunicação para os estudos e...A relevância das Tecnologias da Informação e da Comunicação para os estudos e...
A relevância das Tecnologias da Informação e da Comunicação para os estudos e...
 
Sequencia didática
Sequencia didáticaSequencia didática
Sequencia didática
 
Sequência Didática
Sequência DidáticaSequência Didática
Sequência Didática
 
Análise da Prova do IFRJ 2011- Língua Inglesa
Análise da Prova do IFRJ 2011- Língua InglesaAnálise da Prova do IFRJ 2011- Língua Inglesa
Análise da Prova do IFRJ 2011- Língua Inglesa
 
Dissertacao (1)
Dissertacao (1)Dissertacao (1)
Dissertacao (1)
 
ApresentaçãO U2 S4 G5
ApresentaçãO U2 S4 G5ApresentaçãO U2 S4 G5
ApresentaçãO U2 S4 G5
 

Mehr von Davi Felipe Russi

Desafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros Online
Desafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros OnlineDesafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros Online
Desafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros OnlineDavi Felipe Russi
 
Sistemas Colaborativos Conhecimento Coletivo
Sistemas Colaborativos Conhecimento ColetivoSistemas Colaborativos Conhecimento Coletivo
Sistemas Colaborativos Conhecimento ColetivoDavi Felipe Russi
 

Mehr von Davi Felipe Russi (9)

Atalhos no windows 7
Atalhos no windows 7Atalhos no windows 7
Atalhos no windows 7
 
Desafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros Online
Desafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros OnlineDesafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros Online
Desafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros Online
 
Sistemas Colaborativos Conhecimento Coletivo
Sistemas Colaborativos Conhecimento ColetivoSistemas Colaborativos Conhecimento Coletivo
Sistemas Colaborativos Conhecimento Coletivo
 
Titanium appacelerator
Titanium appaceleratorTitanium appacelerator
Titanium appacelerator
 
Monitor de asfalto
Monitor de asfaltoMonitor de asfalto
Monitor de asfalto
 
App banjo android
App banjo androidApp banjo android
App banjo android
 
Problema da parada
Problema da paradaProblema da parada
Problema da parada
 
Apresentação bit torrent
Apresentação   bit torrentApresentação   bit torrent
Apresentação bit torrent
 
2 maquina de post
2 maquina de post2 maquina de post
2 maquina de post
 

Haskell

  • 1. Davi Felipe Russi, davirussi@inf.ufsm.br Andrea Schwertner Charão, andrea@inf.ufsm.br Universidade Federal de Santa Maria
  • 2. Haskell é uma linguagem que é comumente usada no ensino do paradigma funcional. Ambientes de Desenvolvimento Integrados (IDEs) facilitam a programação de aplicativos.
  • 3. Alunos da graduação tem dificuldades com o aprendizado da linguagem funcional Haskell. Erros iniciais como de sintaxe e lógica podem ser minimizados com uso de IDEs.
  • 4. Conhecer os Ambientes de Desenvolvimento Integrado disponíveis para Linguagem de Programação Haskell. Analisar seus recursos e avaliar experimentalmente suas características Definir a melhor IDE para o ensino- aprendizagem.
  • 5. O uso de IDEs no ensino de linguagens de programação é um assunto bastante explorado. De forma geral, entende-se que este tipo de ferramenta possa trazer vantagens para o aluno que está iniciando o aprendizado de uma nova linguagem de programação (Pears et al., 2007; Caspersen, 2007).
  • 6. Existem, algumas IDEs que foram criadas com o propósito do ensino como: BlueJ (Kölling et al., 2003), Greenfoot (Henriksen & Kölling, 2004) e DrJava (Allen, Cartwright & Stoler, 2002) para linguagem Java.
  • 7. Em relação a linguagem Haskell, existiu um trabalho visando este mesmo propósito o HEAT (Ashton et al., 2005). Mas, de acordo com os autores apresentava problemas de funcionamento.
  • 8. Levantamento de IDEs disponíveis. Elaboração de uma lista com 6 ambientes.
  • 9. A análise iniciou pela leitura da documentação. Experimentação das mesmas. As observações de cada ferramenta foram reunidas e sistematizadas em documentos para referência. Aplicação da IDE mais completa em sala de aula
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16. Disciplina: Paradigmas de Programação(UFSM) É teórico-prática de 4 horas/semanais (3º semestre) Utiliza-se a linguagem Haskell para o ensino do paradigma funcional. Interpretador (GHC ou HUGS) mais editor de texto. +
  • 17. Alguns alunos tinham problemas como: esquecer de carregar o programa modificado no interpretador. Escolha do IDE Eclipse com seu plugin para Haskell (EclipseFP). Reunir opiniões e observações sobre o seu uso durante a disciplina de graduação.
  • 18. Turma de 30 alunos com 15 horas aulas teórico-práticas sobre linguagem funcional e Haskell. Em uma aula foi utilizado a combinação interpretador mais editor Em seis aulas o Eclipse com o plugin EclipseFP
  • 19. As opiniões eram dadas verbalmente durante as aulas práticas e então registradas pelo professor. Formulário online onde os alunos podiam dar sua opinião anonimamente: Questões sobre IDEs geral Questões sobre o Eclipse Opiniões e sugestões.
  • 20. Os alunos apresentaram maior facilidade com o ciclo edição, e testes dos programas. Alguns alunos comentaram que preferem usar IDE por causa da maior variedade de recursos. Vários alunos registraram que o uso da IDE ajudou a evoluir na programação em Haskell, o que corrobora com a hipótese inicial.
  • 21. Outros comentaram que a experiência foi positiva já que o Eclipse é uma ferramenta popular para o desenvolvimento C, C++ e Java. Acredita-se que essa popularidade é mais uma motivação para o aprendizado da linguagem Haskell.
  • 22. Alguns aluno apresentaram dificuldades na instalação completa da IDE. Alguns computadores do laboratório também apresentaram a ferramenta parcialmente instalada. (sem realce de sintaxe e ajuda rápida) Este fato acabou desmotivando alguns alunos que usaram a combinação editor mais interpretador.
  • 23. Desenvolvimento de documentação específica para cada uma das IDEs analisadas. Geração da tabela comparando alguns dos aspectos mais importantes de cada IDE Resultados positivos do estudo de caso.
  • 24. ALLEN, E.; CARTWRIGHT, R.; STOLER, B. DrJava: a lightweight pedagogic environment for Java. In: SIGCSE '02: SIGCSE technical symposium on computer science education, 33, 2002, Cincinnati, USA. Anais. ACM, education 2002, p. 137-141. ASHTON, D.; OLIVE, C.; TRAVERS, J.; WHEST, L. HEAT – A Beginners' IDE Beginners' for Haskell Technical Report. Canterbury: University of Kent, 2005. Haskell. CASPERSEN, M. E. Educating Novices in The Skills of Programming Programming. Aarhus, Denmark: University of Aarhus, 2007. 323 p. Tese de Doutorado. HENRIKSEN, P.; KÖLLING, M. Greenfoot: combining object visualisation with interaction. In: OOPSLA '04: ACM SIGPLAN conference on Object- Object- oriented programming systems, languages, and applications, 19, 2004, languages, applications Vancouver, Canada. Anais. ACM, 2004, pp. 73-82.
  • 25. HUGUES, J. Why Functional Programming Matters. Computer Journal v.32, n.2, p. 98-207, 1989. Journal. JONES, S. P. Haskell 98 Language and Libraries – The Revised Report. 2002. Disponível em: <http://www.haskell.org/onlinereport/>. Acesso em: Outubro/2011. KÖLLING, M., QUIG, B., PATTERSON, A.; ROSENBERG, J., The BlueJ system and its pedagogy, Journal of Computer Science Education v.13, n.4, p. 249-268, 2003. Education, PEARS, A.; SEIDMAN, S.; MALMI, L.; MANNILA, L.; ADAMS, E.; BENNEDSEN, J.; DEVLIN, M.; PATERSON, J. A survey of literature on the teaching of introductory programming. SIGCSE Bull v.39, n.4, p. 204-223, 2007. Bull.