Personal tools

Es/Implementaciones

From HaskellWiki

Revision as of 22:58, 5 November 2006 by Miguel (Talk | contribs)

Jump to: navigation, search
The copyright status of this work is not known. Please help resolve this on the talk page.

Contents

1 El Intérprete de Haskell Hugs

Este portable y pequeño intérprete escrito en C corre en casi cualquier máquina. Hugs se usa mejor como un sistema para el desarrollo de programas en Haskell: se jacta de compilación rápida, soporta compilación incremental, y tiene la conveniencia de un intérprete interactivo (dentro del cuál nos podemos mover de módulo a moódulo para probar diferentes porciones de un programa). Sin embargo, siendo un intérprete, no alcanza cercanamente el tiempo de ejecución de, por ejemplo, GHC, nhc98, ó HBC. Es definitivamente el mejor sistema para principiantes aprendiendo Haskell. Hugs 98 es compatible con Haskell 98. Disponible para todas las plataformas Unix incluyendo Linux, DOS, Windows 3.x, y Win32 (Windows 95, Win32s, NT) y Macintosh. Tiene muchas librerías incluyendo librerías para Win32, un mecanismo de interfaz extranjera para facilitar la interoperabilidad con C y la versión de Windows tiene una interfaz gráfica de usuario, llamada WinHugs. Explicaciones de alguno de los mensajes de error comúnes en Hugs y sus causas pueden ser encontrados en Simon Thompson's page.

2 GHC el Glasgow Haskell Compiler

GHC es un compilador optimizado para Haskell, y el cual ofrece muchas extensiones al lenguaje. GHC es el compilador estándar 'defacto' si se quiere código rápido. GHC está escrito en Haskell (más extensiones), y su tamaño y complejidad lo hace menos portable que Hugs, corre más lento, y necesita más memoria. Sin embargo, los programas que producen son mucho más rápidos.

También tiene un ambiente interactivo, GHCi, el cual es como Hugs pero soporta carga interactiva de código compilado. GHC provee diagnóstico para tiempo y espacio, y soporta programación paralela (recientemente) y concurrente. Está disponible para la mayoría de las plataformas más comúnes, incluyendo Windows, MacOS X, y varias variantes Unix (Linux, *BSD, Solaris).

3 nhc98

Un pequeño, y fácil de instalar compilador, compatible con el estándar Haskell 98. Ofrece algunas avanzadas clases de diagnóstico de montículo no presente en ningún otro compilador Haskell. Produce código medio-rápido, y la compilación es bastante rápida. El compilador optimiza el ahorro de espacio, eso implica, que produce programas pequeños requiriendo comparativamente poco espacio en tiempo de ejecución (y es mucho más pequeño que otros compiladores). Se encuentra disponible para todas las plataformas como-Unix (incluyendo MacOS-X, Cygwin/Windows, Linux, Solaris, *BSD, AIX, HP-UX, Ultrix, IRIX, etc.) - escrito en Haskell 98, pero puede ser rápida y fácilmente compilado desde las fuentes de C.

4 HBI and HBC, Chalmers' Haskell Interpreter and Compiler

El compilador Chalmers Haskell-B 0.9999.5c implementa Haskell 98, al igual que algunas extensiones. Fué escrito por Lennart Augustsson, y está basado en el compilador clásico LML de Augustsson y Johnsson. El intérprete tambien puede cargar código compilado con HBC. No ha habido entrega oficial durante los últimos años y posee poco soporte, pero el compilador existe y puede ser usado. Desafortunadamente las páginas web y la documentación no han sido actualizadas recientemente! Se pueden descargar fuentes no oficiales desde snapshot y los correspondientes binarios Linux x86 (basados en snapshots de Thomas Hallgren y Magnus Carlsson).

5 Helium

Helium es un lenguaje de programación funcional y un compilador diseñado especialmente para enseñar Haskell. La calidad de los mensajes de error han sido la principal preocupación tanto en la elección de las características del lenguaje y en la implementación del compilador. El lenguaje es un sub-conjunto de Haskell. La ausencia de sobrecarga es la más notable diferencia con Haskell. El compilador mantiene la pista de un montón de información para producir mensajes de errores informativos.

6 Jhc

Jhc es un compilador experimental con el objetivo de probar nuevos métodos de optimización y explorar el diseño de las implementaciones Haskell.

7 Yhc the York Haskell Compiler

Ych es un derivado de nhc98, con los objetivos de ser más simple, más portable, más eficiente e integrando soporte para Hat.


Nota: Esta es una traducción del artículo original en Inglés : Implementations