Return to search

Compilando Haskell para .NET via F#

Made available in DSpace on 2014-06-12T15:57:39Z (GMT). No. of bitstreams: 2
arquivo3216_1.pdf: 6659432 bytes, checksum: 29ec979f8895b39460684d09a38f9764 (MD5)
license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5)
Previous issue date: 2010 / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior / Diferentes linguagens de programação disponibilizam diferentes formas de se implementar
uma funcionalidade. Por exemplo, acessar um banco de dados usando C++ ou Python
podem ser duas tarefas completamente diferentes. Por outro lado, com o surgimento
da Plataforma .NET o acesso a dados com C++ .NET ou IronPython, por exemplo, se
tornaram atividades muito parecidas tendo apenas algumas diferenças sintáticas.
A Plataforma .NET é distribuída com um conjunto padrão de compiladores para
diferentes linguagens como C#, Visual Basic .NET, JScript e J#, todas são orientadas
a objetos. Com isso podemos notar uma maior atenção comercial dada ao paradigma
de orientação a objetos. No entanto, esse dado não significa que devamos concluir que
outros paradigmas não possam ser suportados, pelo contrário e a criação da linguagem
F# é um exemplo de que a Plataforma .NET pode dar suporte a diversos paradigmas.
Haskell é uma linguagem puramente funcional, não-estrita e fortemente tipada. E por
ser uma linguagem de alto poder de expressão e não permitir efeitos colaterais durante
sua execução, um programa escrito em Haskell se torna mais fácil de testar, otimizar e
paralelizar. No entanto há um grande vazio quando tocamos na questão de ferramentas e
APIs para Haskell.
Devido ao fato de desenvolvedores usarem uma grande gama de ferramentas e tecnologias,
cada qual com diferentes funcionalidades e tipos, tem sido historicamente
difícil garantir a interoperabilidade entre as linguagens. No entanto, os compiladores e
ferramentas que tem como alvo máquinas virtuais como a Plataforma .NET tiram proveito
do suporte a interoperabilidade entre linguagens inerente a esses tipos de sistemas.
O presente trabalho propõe um novo esquema de compilação de Haskell para a
Plataforma .NET utilizando F# como linguagem intermediária. Tal abordagem nos livra
dos inúmeros problemas que a geração de código diretamente para MSIL pode trazer,
possibilitando irmos um pouco mais além na questão da interoperabilidade

Identiferoai:union.ndltd.org:IBICT/oai:repositorio.ufpe.br:123456789/2389
Date31 January 2010
CreatorsKely de Melo Oliveira, Guilherme
ContributorsLuís de Medeiros Santos, Andre
PublisherUniversidade Federal de Pernambuco
Source SetsIBICT Brazilian ETDs
LanguagePortuguese
Detected LanguagePortuguese
Typeinfo:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis
Sourcereponame:Repositório Institucional da UFPE, instname:Universidade Federal de Pernambuco, instacron:UFPE
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0014 seconds