Haskell: Difference between revisions
No edit summary |
|||
Line 9: | Line 9: | ||
==A list of OS/2 implementations of Haskell== | ==A list of OS/2 implementations of Haskell== | ||
* [[Gofer]] - aka HUGS - Open source - Discontinued | * [[Gofer]] - aka HUGS - Open source - Discontinued | ||
* [[NHC]] - Open source - Discontinued | * [[NHC]] - Open source - Discontinued | ||
===Foreign libraries with Haskell bindings=== | |||
* [[Cairo]] - 2D graphics library - Open source - Current | * [[Cairo]] - 2D graphics library - Open source - Current | ||
* [[LibcURL]] - Internet URL (WWW, FTP, etc) access - Open Source - Current | * [[LibcURL]] - Internet URL (WWW, FTP, etc) access - Open Source - Current | ||
** [https://hackage.haskell.org/package/curlhs curlhs] - | ** [https://hackage.haskell.org/package/curlhs curlhs] - Haskell interface for libcURL - Released under the [[ISC License]] | ||
* [[LZ4]] - Compression library - Open source - Current | * [[LZ4]] - Compression library - Open source - Current | ||
* [[Snappy]] - Compression | * [[Snappy]] - Compression library - Open Source - Current | ||
===OS/2 text editors with Haskell support=== | |||
* [[jEdit]] - Java based - Haskell syntax highlighting built in - Current | * [[jEdit]] - Java based - Haskell syntax highlighting built in - Current | ||
==A list of DOS implementations of Haskell== | ==A list of DOS implementations of Haskell== | ||
* [[Gofer]] - Open source - Discontinued | * [[Gofer]] - Open source - Discontinued | ||
==Publications== | ==Publications== | ||
* [https://www.haskell.org/onlinereport Haskell 98 Standard] | * [https://www.haskell.org/onlinereport Haskell 98 Standard] | ||
* P. Hudak, S.L. Peyton Jones & P.L. Wadler (eds.) et al: Report on the Functional Programming Language Haskell: A Non-strict, Purely Functional Language, Version 1.2 | * P. Hudak, S.L. Peyton Jones & P.L. Wadler (eds.) et al: Report on the Functional Programming Language Haskell: A Non-strict, Purely Functional Language, Version 1.2 - 1992 - ACM SIGPLAN Notices, 27(5) (March 1992) | ||
* Hal Daumé III: [https://www.umiacs.umd.edu/~hal/docs/daume02yaht.pdf Yet Another Haskell Tutorial] - 2006 - In PDF format | * Hal Daumé III: [https://www.umiacs.umd.edu/~hal/docs/daume02yaht.pdf Yet Another Haskell Tutorial] - 2006 - In PDF format | ||
* Thomas Hallgren: [http://programatica.cs.pdx.edu/P/hallgren.pdf A Lexer for Haskell in Haskell (first draft)] - 2003 | * Thomas Hallgren: [http://programatica.cs.pdx.edu/P/hallgren.pdf A Lexer for Haskell in Haskell (first draft)] - 2003 | ||
* Daniel Johannes Pieter Leijen: [http://research.microsoft.com/pubs/65216/phd-thesis.pdf The λ Abroad: A Functional Approach To Software Components] - 2003 | * Daniel Johannes Pieter Leijen: [http://research.microsoft.com/pubs/65216/phd-thesis.pdf The λ Abroad: A Functional Approach To Software Components] - 2003 | ||
* Conor McBride & Ross Paterson: [http://www.staff.city.ac.uk/~ross/papers/Applicative.pdf Functional Pearl - Applicative programming with effects] - | * Conor McBride & Ross Paterson: [http://www.staff.city.ac.uk/~ross/papers/Applicative.pdf Functional Pearl - Applicative programming with effects] - 2008 - In PDF Format | ||
* Christopher Brown and Simon Thompson: [https://www.cs.kent.ac.uk/pubs/2010/2976/content.pdf Clone Detection and Elimination for Haskell] | * Christopher Brown and Simon Thompson: [https://www.cs.kent.ac.uk/pubs/2010/2976/content.pdf Clone Detection and Elimination for Haskell] | ||
* Georgios Fourtounis, Nikolaos Papaspyrou & Panos Rondogiannis: [http://www.softlab.ntua.gr/~gfour/dftoic/dftoic.pdf The Generalized Intensional Transformation for Implementing Lazy Functional Languages] - PDF | * Georgios Fourtounis, Nikolaos Papaspyrou & Panos Rondogiannis: [http://www.softlab.ntua.gr/~gfour/dftoic/dftoic.pdf The Generalized Intensional Transformation for Implementing Lazy Functional Languages] - PDF | ||
;Parallel programming | ;Parallel programming | ||
* William Jones: [http://www.doc.ic.ac.uk/teaching/distinguished-projects/2009/w.jones.pdf | * William Jones: ''Warp Speed Haskell'' - 2009 [http://www.doc.ic.ac.uk/teaching/distinguished-projects/2009/w.jones.pdf PDF] | ||
;History | ;History | ||
* Paul Hudak, John Hughes, Simon Peyton Jones and Philip Wadler: [http://haskell.cs.yale.edu/wp-content/uploads/2011/02/history.pdf | * Paul Hudak, John Hughes, Simon Peyton Jones and Philip Wadler: ''A History of Haskell: Being Lazy With Class''' - [http://haskell.cs.yale.edu/wp-content/uploads/2011/02/history.pdf PDF] | ||
;Mondrian | ;Mondrian | ||
* Erik Mejer | * Erik Mejer; Koen Klaessen: ''The design and implementation of Mondrian'' - [http://userpages.uni-koblenz.de/~laemmel/TheEagle/dl/MeijerC97.pdf PDF] | ||
==Links== | |||
* [http://haskell.org Haskell homepage] | |||
* [https://www.haskell.org/arrows/ Arrows: A General Interface to Computation] | |||
[[Category:Programming Languages]] | [[Category:Programming Languages]][[Category:Haskell]] | ||
[[Category:Haskell]] | |||
[[Category:Functional programming]] | [[Category:Functional programming]] |
Revision as of 23:10, 17 October 2016

Strongly typed, lazy functional programming language. Generated a lot of interest during the 1990's and is still one of the more popular functional languages out there but was greatly hampered at the time by the complete incompatibility of different tools available, and lack of standards and standard adherence in general.
While things have gotten a lot better in the last couple of decades, there is still some distance between the standards and the available tools, the Haskell 98 specification and later for instance state that Haskell supports Unicode but actually none of the implementations do so except via kludgy workarounds.
The language was originally designed by a committee in 1987 to 89, with version one of the Haskell specification being released in 89, originally it was intended to be a variant of David Turner’s Miranda but Turner refused permission for this as he was afraid of incompatible variants of the language existing in the wild the Haskell committee ended up deliberately making the language incompatible with Miranda, however the two languages are still structurally very similar.
Haskell has grown a few dialects of it own including Mondrian that simplifies the Haskell structures.
A list of OS/2 implementations of Haskell
Foreign libraries with Haskell bindings
- Cairo - 2D graphics library - Open source - Current
- LibcURL - Internet URL (WWW, FTP, etc) access - Open Source - Current
- curlhs - Haskell interface for libcURL - Released under the ISC License
- LZ4 - Compression library - Open source - Current
- Snappy - Compression library - Open Source - Current
OS/2 text editors with Haskell support
- jEdit - Java based - Haskell syntax highlighting built in - Current
A list of DOS implementations of Haskell
- Gofer - Open source - Discontinued
Publications
- Haskell 98 Standard
- P. Hudak, S.L. Peyton Jones & P.L. Wadler (eds.) et al: Report on the Functional Programming Language Haskell: A Non-strict, Purely Functional Language, Version 1.2 - 1992 - ACM SIGPLAN Notices, 27(5) (March 1992)
- Hal Daumé III: Yet Another Haskell Tutorial - 2006 - In PDF format
- Thomas Hallgren: A Lexer for Haskell in Haskell (first draft) - 2003
- Daniel Johannes Pieter Leijen: The λ Abroad: A Functional Approach To Software Components - 2003
- Conor McBride & Ross Paterson: Functional Pearl - Applicative programming with effects - 2008 - In PDF Format
- Christopher Brown and Simon Thompson: Clone Detection and Elimination for Haskell
- Georgios Fourtounis, Nikolaos Papaspyrou & Panos Rondogiannis: The Generalized Intensional Transformation for Implementing Lazy Functional Languages - PDF
- Parallel programming
- William Jones: Warp Speed Haskell - 2009 PDF
- History
- Paul Hudak, John Hughes, Simon Peyton Jones and Philip Wadler: A History of Haskell: Being Lazy With Class' - PDF
- Mondrian
- Erik Mejer; Koen Klaessen: The design and implementation of Mondrian - PDF