Haskell Platform
Encyclopedia
The Haskell Platform is a collection of software-packages, tools and libraries, which is to create a common platform for using and developing applications in Haskell
Haskell (programming language)
Haskell is a standardized, general-purpose purely functional programming language, with non-strict semantics and strong static typing. It is named after logician Haskell Curry. In Haskell, "a function is a first-class citizen" of the programming language. As a functional programming language, the...

. With the Haskell Platform, Haskell follows the same principle as Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

: "Batteries included". As of 2010, development is no longer in the beta stage.

Motivation

The Haskell Platform aims at unifying Haskell Developing tools into a single package, consisting of a compiler, compiling tools and many standard libraries, therefore making it easier to develop and deploy full-featured haskell-driven applications. Although Haskell is itself a powerful language to handle complex programming tasks, it is useless (or at least less useful compared to other programming languages) without a huge base of libraries allowing for building upon.

Packages included

Currently it consists of :
  • GHC
    Glasgow Haskell Compiler
    The Glorious Glasgow Haskell Compilation System, more commonly known as the Glasgow Haskell Compiler or GHC, is an open source native code compiler for the functional programming language Haskell. The lead developers are Simon Peyton Jones and Simon Marlow...

    , Haskell's flag-ship compiler
  • The GHC-Profiler
  • GHCi, GHCs bytecode
    Bytecode
    Bytecode, also known as p-code , is a term which has been used to denote various forms of instruction sets designed for efficient execution by a software interpreter as well as being suitable for further compilation into machine code...

    -interpreter
    Interpreter (computing)
    In computer science, an interpreter normally means a computer program that executes, i.e. performs, instructions written in a programming language...

  • The GHCi-Debugger
    Debugger
    A debugger or debugging tool is a computer program that is used to test and debug other programs . The code to be examined might alternatively be running on an instruction set simulator , a technique that allows great power in its ability to halt when specific conditions are encountered but which...

  • Alex, a lexer generator
    Lexical analysis
    In computer science, lexical analysis is the process of converting a sequence of characters into a sequence of tokens. A program or function which performs lexical analysis is called a lexical analyzer, lexer or scanner...

    , similar to Lex
  • Happy
    Happy (software)
    Happy is a parser generator written in Haskell. It produces haskell-code and optionally optimized code for Glasgow Haskell Compiler and it's extensions. Happy is contained in the Haskell Platform. It is available for Unix-like systems, such as Mac OS X, Linux and BSDish systems and Windows....

    , a parser generator, similar to Yacc
    Yacc
    The computer program yacc is a parser generator developed by Stephen C. Johnson at AT&T for the Unix operating system. The name is an acronym for "Yet Another Compiler Compiler." It generates a parser based on an analytic grammar written in a notation similar to BNF.Yacc used to be available as...

  • Cabal
    Cabal (software)
    The Haskell Cabal is the Common Architecture for Building Applications and Libraries; it aids in the packaging and distribution of software packages...

    , a package-manager
  • Haddock
    Haddock (software)
    Haddock is a free, portable command-line program documentation generator for Haskell. It is influenced by IDoc , HDoc , and Doxygen. It produces hyperlinked HTML files from annotated Haskell source files, with additional information extracted from type annotations; it supports only partially...

    , a documentation tool
  • hsc2hs, a preprocessor for binding Haskell to C code, allowing C libraries to be used from Haskell
  • various libraries, such as zlib, cgi and OpenGL

Deployment

It is available for Ubuntu 10.10
Ubuntu (operating system)
Ubuntu is a computer operating system based on the Debian Linux distribution and distributed as free and open source software. It is named after the Southern African philosophy of Ubuntu...

, Arch Linux
Arch Linux
Arch Linux is an independently developed, Linux-based operating system for i686 and x86-64 computers. It is composed predominantly of free and open source software, and supports community involvement....

, FreeBSD
FreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...

, Gentoo Linux
Gentoo Linux
Gentoo Linux is a computer operating system built on top of the Linux kernel and based on the Portage package management system. It is distributed as free and open source software. Unlike a conventional software distribution, the user compiles the source code locally according to their chosen...

 (x86-64
X86-64
x86-64 is an extension of the x86 instruction set. It supports vastly larger virtual and physical address spaces than are possible on x86, thereby allowing programmers to conveniently work with much larger data sets. x86-64 also provides 64-bit general purpose registers and numerous other...

 and x86), Fedora
Fedora (operating system)
Fedora is a RPM-based, general purpose collection of software, including an operating system based on the Linux kernel, developed by the community-supported Fedora Project and sponsored by Red Hat...

 , Debian (stable)
Debian
Debian is a computer operating system composed of software packages released as free and open source software primarily under the GNU General Public License along with other free software licenses. Debian GNU/Linux, which includes the GNU OS tools and Linux kernel, is a popular and influential...

  and NixOS. One-click installers exist for Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

 (only Intel) and Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 (64-bit not supported)

2009.2

Included GHC 6.10. It is also the version considered to be included into Debian-stable.

2010.1

Since 2010 the Haskell Platform is no longer considered beta, including GHC 6.12, featuring extensions from Haskell 2010. With this release 64-bit support on Mac OS X Snow Leopard was fixed.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK