GHC

Haskell is an advanced purely functional programming language. The product of more than twenty years of cutting edge research, it allows rapid development of robust, concise, correct software. With strong support for integration with other languages, built-in concurrency, debuggers, profilers, rich libraries and an active community, Haskell makes it easier to produce flexible, maintainable high-quality software.

GHC is a state-of-the-art, open source, compiler and interactive environment for Haskell.

Journal Entries

Avatar

waern don't you want to claim your GHC contributions? https://www.ohloh.net/p/ghc/contributors/24904367922136 SamB — 4 months ago

Avatar

GHC 6.10.1 is out! Yay! feuerbach — 8 months ago

See All Journal Entries


Ratings & Reviews

Community Rating
4.7/5.0

Based on 39 user ratings.

Your Rating

Click to rate this project.

about 1 year ago Avatar
State-of-the-art compiler for Haskell

  by dons

Simply the standard Haskell compiler. See http://haskell.org/ghc/

3 of 3 users found the following review helpful. Was this review helpful to you? |

Links

3 links submitted so far. Submit your own links.

News

Edit RSS feeds.

    Haskell Weekly News: July 4, 2009

    Haskell Weekly News: July 04, 2009
    Welcome to issue 124 of HWN, a newsletter covering
    developments in the Haskell community.

    Announcements HLint 1.6. Neil ... [More] Mitchell
    announced
    the release of HLint
    1.6, a tool for automatically suggesting improvements to Haskell
    code.

    Haskell Implementers Workshop: accepted talks. Simon Marlow
    announced
    that the list of talks at the Haskell
    Implementers Workshop 2009 has now been posted.

    bloxorz clone. Patai Gergely
    announced
    a Haskell
    clone of the game "bloxorz", written by Viktor Devecseri.

    Fun with type functions. Simon Peyton-Jones
    announced
    that he, Ken Shan, and Oleg have finished Version 2 of their paper
    "Fun with Type Functions", which gives a programmer's tour of what type
    functions are and how they are useful. If you have a moment to look at, and
    wanted to help them improve it, leave comments on the linked wiki page.

    package Boolean: Generalized booleans. Conal Elliott
    announced
    Boolean,
    a new package for generalized booleans, which provides type classes
    with generalizations of Boolean values and operations, if-then-else,
    Eq and Ord.

    TernaryTrees-0.1.1.1 - An efficient ternary tree implementation of
    Sets and Maps. Alex Mason
    announced
    the release of TernaryTrees, a
    package that extends Data.Set ad Data.Map with some ternary tree structures,
    one of the more efficient ways of storing strings in a set.

    6.12.1 planning. Simon Marlow
    announced
    plans for a release of GHC 6.12.1, sometime around September. If you
    have the time and inclination to help with any of the listed features,
    please get involved!

    regular-0.1. José Pedro Magalhães
    announced
    the release of the regular
    library. Many generic programs require information about the
    recursive positions of a data type, such as generic fold, generic
    rewriting, and the Zipper data structure. Regular provides
    a fixed point view on data which allows these definitions
    for regular data types. It also serves as the basis for a generic
    rewriting library.

    Google Summer of Code Progress
    updates from participants in the 2008 Google
    Summer of Code.

    Haddock improvements. Isaac Dupree
    has made it easier to generate Haddock documentation for
    non-exported functions, posted an overview
    of the issues involved in getting proper
    cross-package documentation working, and his current plan.

    EclipseFP. Thomas Ten Cate
    has done a lot of work on EclipseFP, including some cosmetic
    updates and getting error
    reporting to work better.

    space profiling. Gergely Patai
    is working
    on a network protocol for his profiling grapher tool, so that other
    tools can monitor the profiling information.

    haskell-src-exts. Niklas Broberg
    has released
    haskell-src-exts
    version 1.0.0!

    fast darcs. Petr Rockai
    has completed quite
    a bit of work on darcs, including a beta release
    of darcs 2.3.

    Discussion Monoid wants a (++) equivalent. Bryan
    O'Sullivan
    suggested
    adding a more concise operator to the Monoid class for 'mappend', leading
    to a long, bike-shed-ish (but hopefully still useful) discussion.

    Reflections on the ICFP 2009 programming contest. Justin Bailey
    began a discussion
    on results and experiences from the ICFP 2009 programming contest.

    Blog noise Haskell news from
    the blogosphere.
    Blog posts from people new to the Haskell community are marked
    with >>>, be sure to welcome them! Gergely Patai: Playing
    and learning.

    Ketil Malde: A
    set of tools for working with 454
    sequences.

    Sebastian Fischer: FP
    Overview.

    Magnus Therning: Making a choice from
    a list in Haskell, Vty (part 1).

    David Amos: Conjugacy
    classes, part 1.

    Well-Typed.Com: GHC and
    Windows DLLs.

    Manuel M T Chakravarty:
    Converting
    typed term representations: from HOAS to de
    Bruijn..

    >>> Ivan Uemlianin: Haskell:
    sort and sortBy.

    Gregory Collins: Building
    a website with Haskell, part
    3.

    Michael Snoyman: Hack
    sample- chat server.

    Luke Palmer: On
    the By functions.

    Magnus Therning: Dataenc finally
    making it into Debian.

    Thomas ten Cate: New
    build instructions.

    Erik de Castro Lopo: Three
    More for the Debian New
    Queue.

    >>> Yuval Kogman: What
    Haskell did to my brain.

    Greg Bacon: FFI:
    calling into kernel32.dll.

    Greg Bacon: Setting
    up a simple test with Cabal.

    Ketil Malde: Dephd
    updates.

    Bryan O'Sullivan: What's
    in a text API?.

    Brent Yorgey: 2009
    ICFP programming contest
    reflections.

    Galois, Inc: Galois,
    Inc. Wins Two Small Business Research Awards from
    Federal Agencies.

    Greg Bacon: Cleaning
    up your Haskell imports.

    Douglas M. Auclair (geophf): Realized
    Constants are Comonadic.

    Quotes of the Week KF8NH: all monads are functors,
    but for Hysterical Raisins not all Monads are Functors.
    lilac: lambda actually is just the greek letter l. it stands
    for lilac. lilac: before mauke we all implemented
    map with a fold every time we needed it. luqui: I'll
    just stick to my religion: I have a personal relationship with our lord
    and savior, the untyped lambda calculus. copumpkin:
    I think I was implemented in haskell. I mean, my parents never used seq,
    ever. Benjamin Russell: Haskell. "Avoid success at
    all costs." Made with dinosaur technology.
    About the Haskell Weekly News New editions are posted to
    the Haskell
    mailing list as well as to the
    Haskell Sequence and Planet
    Haskell. RSS
    is also available, and headlines appear on haskell.org.

    To help create new editions of this newsletter, please
    see the information on how
    to contribute. Send stories to byorgey at cis dot upenn
    dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/
    .

    [Less]

    Haskell Weekly News: June 29, 2009

    Haskell Weekly News: June 29, 2009
    Welcome to issue 123 of HWN, a newsletter covering
    developments in the Haskell community.

    A bit late this week since over the ... [More] weekend I was trying to get some unruly
    satellites to behave (with moderate success). Anyway, some fun stuff this
    week: Haskell on the iPhone; new libraries for 3D animation, web development,
    session types; new releases of haskell-src-exts and darcs; and more. Also,
    if it seems that there haven't been many quotes lately, it's because people
    haven't been @remembering very many in #haskell. I cannot telepathically
    sense (via the Haskell-force, hereafter known as the "Horce") when someone
    says something funny.

    Announcements Haskell Symposium
    call for participation. Stephanie Weirich
    announced
    that registration
    is now open for the ACM SIGPLAN Haskell
    Symposium 2009, to be held on 3 September 2009 in Edinburgh, Scotland
    (co-located with ICFP). The purpose of the Haskell Symposium is to discuss
    experiences with Haskell and future developments for the language. The
    scope of the symposium includes all aspects of the design, semantics,
    theory, application, implementation, and teaching of Haskell.

    jhc 0.6.1. John Meacham
    announced
    the release of jhc 0.6.1,
    featuring a a much simplified
    cross-compilation mechanism.

    X Haskell Bindings 0.3. Antoine
    Latter
    announced
    the 0.3.* series release of the X
    Haskell Bindings. This release, like the prior 0.2.* series focuses
    on making
    the API prettier.

    happstack-0.3.2. Matthew Elder
    announced
    the release of happstack-0.3.2,
    with many changes, updates, and bug fixes.

    sendfile-0.1. Matthew Elder
    announced
    the release of sendfile, a library
    which exposes zero-copy sendfile functionality in a portable way. Right
    now it natively supports linux 2.6+ (maybe older too) and windows 2000+;
    on other platforms it will fall back seamlessly to a portable haskell
    implementation.

    Reusable Corecursive Queues via Continuations. Leon Smith
    requested
    feedback on a draft of an upcoming article in Monad.Reader
    issue 14, "Lloyd Allison's Corecursive Queues: Why
    Continuations Matter", describing the implementation of the control-monad-queue
    package.

    Haskell on the iPhone. Ryan Trinkle
    announced
    that his company, iPwn Studios Inc., is currently preparing to release
    an open source patch to GHC that allows it to output binaries for iPhone
    OS. The patch will be released under a BSD license as soon as possible
    and hopefully integrated into the GHC main-line in the near future.

    Program to set the GNOME desktop background picture randomly. Colin
    Paul Adams
    announced
    gnome-desktop,
    a library which periodically picks a random picture from $HOME/Pictures,
    and sets it as the GNOME desktop background.

    loli: a minimal web dev DSL. Jinjing Wang
    announced
    the release of loli,
    a web development DSL built on top of hack.
    It allows you to easily define routes, build your custom template
    backends through a simple Template interface, and integrate with other
    hack middleware.

    Cal3D animation library. Gregory D. Weber
    announced
    the Cal3D
    for Haskell project, which provides a partial binding to the C++ Cal3D animation library, a
    platform- and graphics-API-independent C++ library for skeletal-based
    character animation. There are three packages available on hackage: cal3d-0.1,
    a Haskell binding to the Cal3D library itself; as well as cal3d-opengl-0.1
    and cal3d-examples-0.1.

    A Reader Monad Tutorial. Henry Laxen
    announced
    a nice Reader
    monad tutorial.

    full-sessions: yet another implementation of session types. Keigo
    Imai
    announced
    the pre-release of full-sessions,
    yet another implementation of session types in Haskell. Session
    types are used to statically check the safe and consistent use of
    communication channels according to protocols. A notable advantage of this
    implementation is that it requires almost no type annotation or term
    annotations. and at the same time provides full functionality of session
    types including channel-generation and channel-passing.

    darcs 2.3 beta 1. Petr Rockai
    announced
    the immediate availability of a first beta release of darcs 2.3. There
    are a number of improvements and bugfixes over the last stable release,
    2.2 (see the announcement for a full list). Moreover, work has been
    done on performance of "darcs whatsnew" for large repositories. This
    has also introduced a slight risk of regressions, but please note
    that all of the disruptive changes are in read-only code paths: the
    new code will never touch your repository, so it is unable to cause
    permanent harm. The worst that could happen is that you get no or
    bad diff from "darcs whatsnew". Please help test it (cabal install darcs-beta)!

    New release of ZeroTH. Robin Green
    announced
    a new release (2009.6.23.3) of ZeroTH, a tool for
    preprocessing Haskell code to run splices and remove Template Haskell
    dependencies. Major changes include support for more Haskell code via
    haskell-src-exts 1.0.0, better error messages, and librification.

    Emping-0.6 and Tests/Examples. Hans van Thiel
    announced
    version 0.6 of Emping,
    a (prototype) interactive tool for the discovery and analysis of (universal,
    not statistical) predictive rules in tables of nominal data.

    haskell-src-exts-1.0.0. Niklas Broberg
    announced
    the first stable release of the haskell-src-exts
    package, version 1.0.0! haskell-src-exts is a package for Haskell
    source code manipulation. In particular it defines an abstract syntax tree
    representation, and a parser and pretty-printer to convert between this
    representation and String. It handles (almost) all syntactic extensions
    to the Haskell 98 standard implemented by GHC, and the parsing can be
    parametrised on what extensions to recognise.

    HaRe (the Haskell Refactorer) in action - short screencast. Claus
    Reinke
    linked
    to a short video
    showing HaRe,
    the Haskell refactorer, in action. HaRe still exists---but needs some
    love in the form of time and/or funding for maintenance and continued
    development.

    Trivial pivoting for the DSP lu decomposition. Fernan Bolando
    announced
    the beginnings of a simple
    circuit simulator using haskell, which uses a modified version of
    the haskell DSP library matrix, extended with a simple pivoting method.

    Discussion make some Applicative functions into methods,
    and split off Data.Functor. Ross Paterson
    proposed
    moving several functions such as (<$), (*>), and so on into their
    respective classes with default definitions, to allow for specialized
    implementations.

    base library and GHC 6.12. Ian Lynagh
    began a discussion
    about how to structure the base library in the future.

    Proposal: ExplicitForall. Niklas Broberg
    proposed
    adding a new GHC extension, ExplicitForall, to be used for turning on
    explicit 'forall' syntax in types, and to help disentangle and simplify
    some existing extensions.

    Generic Graph Class. Ivan Lazar Miljenovic
    proposed
    a generic graph class to serve as a common interface for the many Haskell
    libraries that deal with graph data structures.

    Type system trickery. Andrew Coppin
    asked
    how to statically ensure certain properties of recursive data structures
    with the type system, generating varied suggestions involving GADTs.

    Blog noise Haskell news from
    the blogosphere.
    Blog posts from people new to the Haskell community are marked
    with >>>, be sure to welcome them! Magnus Therning: Making a choice from a
    list in Haskell, Vty (part 0).

    The Gentoo Haskell Team: Haskell
    in Gentoo.

    Michael Snoyman: Hack
    Introduction.

    >>> Henry Laxen: Reader
    Monad Confusion.

    >>> Akshay: Dynamic
    Programming in Haskell and why DP is
    useful.

    David Amos: Direct
    products revisited.

    mightybyte: Basic
    Happstack Blog App.

    David Amos: Some
    groups and some graphs.

    Gergely Patai: Short-term
    hp2any plans.

    Isaac Dupree: cross-package,
    Plan A.

    >>> Oliver Reeves: Data
    Crunching in Haskell.

    Roman Cheplyaka: Halting
    problem.

    Petr Rockai: darcs
    2.3 beta 1.

    Eric Kow (kowey): Haskell
    syntax highlighting on Wikipedia and
    Wikibooks.

    Greg Bacon: Setting
    up a simple test with Cabal.

    Isaac Dupree: Cross-package
    documentation, part 1.

    Sean Leather: RFC:
    Extensible, typed scanf- and printf-like functions
    for Haskell.

    >>> Akshay: Foray
    Into Haskell.

    >>> Ivan Uemlianin: decorate-sort-undecorate
    in Haskell.

    Isaac Dupree: How
    To Navigate Your Code:.

    Petr Rockai: soc
    progress 5.

    DEFUN 2009: The
    tutorial schedule is now ready.

    DEFUN 2009: Last
    call for talk proposals!.

    >>> Greg Bacon: Setting
    up a simple test with Cabal.

    The GHC Team: New
    paper: Parallel Performance Tuning for
    Haskell.

    Brandon Simmons: Fun
    with Lazy Arrays: the LZ77
    Algorithm.

    >>> Keith: Bird
    Tracks Through Math Land: Basic Matrix Ops.

    Quotes of the Week gnuvince: Contributions to
    Hackage are measured in µConals.
    DavidWheeler: Compatibility means deliberately repeating
    other people's mistakes.
    About the Haskell Weekly News New editions are posted to
    the Haskell
    mailing list as well as to the
    Haskell Sequence and Planet
    Haskell. RSS
    is also available, and headlines appear on haskell.org.

    To help create new editions of this newsletter, please
    see the information on how
    to contribute. Send stories to byorgey at cis dot upenn
    dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/
    .

    [Less]

    Haskell Weekly News: June 21, 2009

    Haskell Weekly News: June 21, 2009
    Welcome to issue 122 of HWN, a newsletter covering
    developments in the Haskell community.

    Are you ready for the 12th ... [More] Annual
    ICFP programming contest? It begins this Friday, don't miss it!
    Let's reclaim Haskell's rightful place as the programming language of
    choice for discriminating hackers.

    Announcements Haskell
    protocol-buffers version 1.5.0. Chris Kuklewicz
    announced
    version 1.5.0 of the protocol-buffers,
    protocol-buffers-descriptor,
    and hprotoc
    packages to Hackage. This catches up to Google's version 2.1.0: support
    for "repeated" fields for primitive types; fields can now be marked
    deprecated; the type name resolver will no longer resolve type names to
    fields; and more.

    12th Annual ICFP Contest. Mark Huntington Snyder
    announced
    the 12th Annual ICFP Programming
    Contest, hosted by the University of Kansas Computer Systems
    Design Laboratory at the Information and Telecommunication Technology
    Center. The contest will be held on the weekend of June 26-29. The
    contest task will be released sixteen seconds after 13:00 Central
    Daylight Time (US) on Friday, and entries will be accepted until
    13:00:16 CDT on Monday. There is no preregistration required, and
    participation is free and open to all. Teams may participate from
    any location, and may use any programming language(s). Read the contest blog or subscribe to
    the RSS feed
    to receive timely updates before and during the contest.

    clock 0.1 released. Cetin Sert
    announced
    the release of clock,
    a package for convenient access to high-resolution clock and timer
    functions of different operating systems. It is planned to consist of
    two layers; the lower layer will provide direct access to OS-specific
    clock and timer functions like clock_gettime of Posix or GetTickCount
    of Windows, and its upper layer shall then provide a common API for all
    supported systems. Currently only the lower level is being developed.

    Turbinado V0.7. Alson Kemp
    announced
    version 0.7 of Turbinado,
    a Ruby-On-Rails-like web server and web framework for Haskell. It
    is designed to make creating web application using Haskell
    both easy and joyful. The primary additions in version 0.7 are
    FastCGI support and a new templating system (which includes
    HAML and HTML support). Additional details can be found here.

    haskeline-class. Antoine Latter
    announced
    haskeline-class,
    a small library providing a newtyped MonadState instance for haskeline
    which lifts the class operations to an inner monad (as opposed to its
    existing instance).

    hyena. Johan Tibell
    announced
    the first release of hyena,
    a library for building web servers, based on the work on iteratee style I/O
    by Oleg Kiselyov. The library allows you to create web servers that
    consume their input incrementally, without resorting to lazy I/O. This
    should lead to more predictable resource usage.

    Haskell-based iPhone development. Conal Elliott
    announced
    a collaboration wiki
    page for anyone working with Haskell to make iPhone apps.

    Fwd: Boston Haskell June 23rd meeting: openings for Lightning
    Talks. Ravi Nanavati
    announced
    that there are several available slots for "lightning"
    (5 minute) talks at the June 23 meeting of the Boston
    Area Haskell Users' Group.

    haskell-src-exts 1.0.0 rc1. Niklas Broberg
    announced
    a series of release candidates for haskell-src-exts-1.0.0 (as of this
    writing, the most recent release candidate is version 0.5.6). This
    version is intended to fully support parsing of almost all Haskell
    extensions. Please help with testing!

    BostonHaskell: Next meeting - June 23rd at MIT CSAIL Reading Room
    (32-G882). Ravi Nanavati
    announced
    the second meeting of the Boston
    Area Haskell Users' Group, scheduled for Tuesday, June 23rd from
    6:30pm - 8:30pm. It will be held in the MIT CSAIL Reading Room (32-G882,
    i.e. a room on the 8th floor of the Gates Tower of the MIT's Stata Center
    at 32 Vassar St in Cambridge, MA). Talks include "Automagic Font Conversion
    with Haskell Typeclasses" by Frank Berthold, and "Intermediate Language
    Representations via GADTs" by Nirav Dave.

    traversal transformations. Sjoerd Visscher
    exhibited
    some code for Church-encoded container
    structures using their Foldable instance, and later announced
    the fmlist
    package based on the same code, along with a surprising example of a lazy
    'middle-infinite' list (where elements can be taken from the beginning
    or the end!).

    hledger 0.6 released. Simon Michael
    announced
    the release of hledger 0.6. See the
    announcement for a list of the new features and other information.

    Discussion Adding swap to Data.Tuple. roconnor
    proposed
    adding swap and swap' functions to Data.Tuple.

    Revamping the module hierarchy. Johan Tibell
    began an interesting discussion
    about package names, module names, and the module hierarchy.

    Confusion on the third monad law when using lambda
    abstractions. Jon Strait
    asked
    about the third monad law, leading to some clarification on what precisely
    the law says, and some interesting discussion on idiomatic use of the (<=<)
    (Kleisli composition) operator.

    Need some help with an infinite list. Gunther Schmidt
    asked
    for some help generating a particular infinite list, and got a number
    of interesting suggestions.

    Blog noise Haskell news from
    the blogosphere.
    Blog posts from people new to the Haskell community are marked
    with >>>, be sure to welcome them! Thomas ten Cate: Cosmetics.
    Nice-looking icons for EclipseFP!

    Niklas Broberg: GSoC
    status report, week 4. More release candidates
    for haskell-src-exts 1.0.0.

    >>> Uwe Hoffmann: publishing
    nike runs, part 4: string templates. Real-world
    example of using HStringTemplate.

    Andy Gill:
    Call
    for Participation in the 12th Annual ICFP Programming
    Contest!. June 26-29!

    Sebastian Fischer: Reinventing
    Haskell Backtracking.

    Remco Niemeijer: Programming
    Praxis - Monte Carlo factorization. Remco
    implements Pollard's factorization algorithm
    in 9 lines of Haskell.

    >>> Lee Duhem: Understanding
    Functions Which Use 'instance Monad []' by Equational
    Reasoning.

    Alex McLean: Patterns
    in Haskell. A Haskell music
    generation EDSL.

    David Amos: Group
    generators for graph symmetries.

    >>> adam: Experience
    writing a ray tracer in Haskell. Adam's final project in a Haskell
    class taught by Mark Jones and Tim Sheard.

    Petr Rockai:
    soc
    progress 4.

    Yaakov Nemoy: Haskell
    Bindings to C from Start to Finish. Yaakov outlines his
    experience getting c2hs and the FFI to work.

    Alex
    McLean: Patterns
    in Haskell. Representing rhythmic patterns
    in Haskell.

    >>> Abhishek Tiwari: Haskell
    for Bioinformatics.

    Roman Cheplyaka: Shootout.
    A hilarious comic featuring sound advice on
    Haskell optimization.

    Ketil Malde: Dephd
    updates.

    Neil Mitchell: Draft
    paper on Derive, comments
    wanted.

    Remco Niemeijer: Programming
    Praxis - Who Owns The
    Zebra?.

    Erik de Castro Lopo: Two
    More for the Debian New Queue..

    David Amos: Graph
    symmetries.

    Alson Kemp: Announce:
    Turbinado V0.7.

    Gergely Patai: You
    can draw your own graphs
    now!.

    >>> Jens Petersen: Haskell
    cabal-install rocks .

    Quotes of the Week Botje: <Cheery> oh man. de
    bruijn again kicked me to groin <Botje> the easy fix is to label your
    groin as (-1) :)
    Pseudonym: Telling dons that something has been added to
    the shootout is the new telling Oleg that it can't be done in the type
    system.
    About the Haskell Weekly News New editions are posted to
    the Haskell
    mailing list as well as to the
    Haskell Sequence and Planet
    Haskell. RSS
    is also available, and headlines appear on haskell.org.

    To help create new editions of this newsletter, please
    see the information on how
    to contribute. Send stories to byorgey at cis dot upenn
    dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/
    .

    [Less]

    Haskell Weekly News: June 13, 2009

    Haskell Weekly News: June 13, 2009
    Welcome to issue 121 of HWN, a newsletter covering
    developments in the Haskell community.

    Announcements purely functional lazy ... [More] non-deterministic
    programming. Sebastian Fischer
    announced
    the explicit-sharing
    library, which supports lazy functional-logic programming in Haskell.

    nntp 0.0.1. Maciej Piechotka
    announced
    the release of nntp,
    a library to connect to nntp (i.e. mainly USENET) servers.

    OpenGLRaw 1.0.0.0. Sven Panne
    announced
    the release of OpenGLRaw,
    a low-level binding for OpenGL. The eventual goal is to make the OpenGL
    package easier to install, more modular and a bit more flexible.

    pgm-0.1 on Hackage. Frederick Ross
    announced
    pgm,
    a pure Haskell library to read and write PGM images. It seamlessly handles
    the divide between 1 and 2 byte per pixel images; reads and writes UArrays;
    can handle multiple PGMs concatenated one after another in a file; and
    encodes and decodes all comments in the PGM header, which can be used to
    drop arbitrary metadata into files in a human readable manner.

    iteratee-0.2.1 released. John Lato
    announced
    the release of iteratee-0.2.1,
    a major update to the iteratee library. This library provides types
    and functions for performing enumerator/iteratee based I/O operations in
    Haskell, as described
    by Oleg. The new version is a large redesign, including support for
    resumable exceptions and a greatly simplified interface.

    testrunner-0.9. Reinier Lamers announced
    testrunner, a new
    framework for running unit tests. It can run unit tests in parallel;
    can run QuickCheck and HUnit tests as well as simple boolean expressions;
    and comes with a ready-made main function for your unit test executable.

    serial-0.2. Frederick Ross
    announced
    version 0.2 of serial,
    a library for working with line-oriented POSIX serial ports.

    hunp-0.0. Deniz Dogan
    announced
    hunp, a command-line
    utility which automagically calls the right "unpacker" program for you
    and works on both files and directories.

    Nemesis : easy task management. Jinjing Wang
    announced
    a new release of nemesis,
    a simple rake-like task management tool.

    Data.Reify.CSE. Sebastiaan Visser
    announced
    the data-reify-cse
    module, which implements common sub-expression elimination for graphs
    generated by the Data.Reify package. This package might especially be
    useful for optimizing simple compilers for referentially transparent
    domain specific languages.

    Hac phi accommodation: register by June 15 for reduced rate!
    Brent Yorgey
    reminded
    anyone interested in attending Hac phi that Monday
    15 June is the deadline for getting a special reduced hotel rate.

    alloy-1.0.0 (generic programming). Neil Brown
    announced
    the first
    release of the Allow generic
    programming library. It is intended to be a fairly fast blend of several
    other generics approaches, such as SYB (but without the dynamic typing)
    and Uniplate (but allowing an arbitrary number of target types), for
    performing transformations on specific types in large tree structures.

    StrictBench 0.1 - Benchmarking code through strict
    evaluation. R.A. Niemeijer
    announced
    the release of StrictBench,
    a library for timing full evaluation of values.

    haskeem 0.7.0 uploaded to hackage. Uwe Hollerbach
    announced
    haskeem,
    a small scheme interpreter written in Haskell.

    numtype 1.0 -- Type-level (low cardinality) integers. Bjorn
    Buckwalter
    announced
    the Numeric.NumType
    module, now released as its own package, which implements a unary
    type-level representation of integers, supporting addition, subtraction,
    multiplication, and division.

    Google Summer of Code Progress
    updates from participants in the 2008 Google
    Summer of Code.

    space profiling. Gergely Patai
    has some pretty
    graphs generated by his profiling library.

    haskell-src-exts. Niklas Broberg
    is quite
    close to releasing haskell-src-exts 1.0.0, as soon
    as he has full and correct support for (almost) everything
    code-related, with only a few things left to do. He also wrote
    a
    post explaining the intricacies of parsing code containing the 'forall'
    keyword (well, whether it is a keyword depends on which extensions are
    enabled...)

    fast darcs. Petr Rockai
    made a bit less progress this week, with
    finals and other things interfering, but made some
    progress on some documentation, tracking down a performance regression,
    and other things.

    Discussion Adding an ignore function to
    Control.Monad. Gwern Branwen
    proposed
    adding an 'ignore' function to Control.Monad which explicitly changes an
    m a into a m (). Bikeshedding (and some useful discussion) ensued.

    Wiki user accounts. Philippa Cowderoy
    began a discussion
    of what to do about the current situation with wiki user accounts (namely,
    that account creation is disabled due to spam, and the one maintainer of
    the wiki can't always respond to account creation requests instantly).

    Lightweight type-level dependent programming in Haskell. Ryan
    Ingram
    made an interesting post
    about implementing lightweight closed type classes in Haskell.

    who's up for a hackathon? (ICFP, late Aug, early Sept). Eric Kow
    wanted
    to know who would be interested in having a hackathon immediately
    before or after ICFP in Edinburgh.

    Jobs Galois is hiring functional programmers. Don Stewart
    announced
    that Galois is hiring! See the
    announcement for more details.

    Blog noise Haskell news from
    the blogosphere.
    Blog posts from people new to the Haskell community are marked
    with >>>, be sure to welcome them! Niklas Broberg: GSoC
    status report, week 3.

    Joachim Breitner: Introducing
    L-seed.

    Conal Elliott: Memoizing
    polymorphic functions - part
    two.

    London Haskell Users Group: Next
    Meeting: Sean Leather, Fun and generic things to
    do with EMGM.

    David Amos: It's
    on Hackage!. Haskell for Maths is now just
    a cabal-install away.

    Michael Snoyman: Filename
    encoding issues.

    David Amos: Permutation
    groups.

    Edward Kmett: Recursion
    Schemes: A Field Guide (Redux).

    mightybyte: Intro
    to HAppS-State.

    Conal Elliott: Memoizing
    polymorphic functions - part
    one.

    Lennart Augustsson: More
    LLVM.

    Roman Cheplyaka: Don't
    play with your monads.

    Galois, Inc: Tech
    Talk: Orc in Haskell.

    Petr Rockai: soc progress
    3. Progress on Petr's GSoC darcs project.

    Magnus
    Therning: Using
    msmtp with darcs.

    Erik de Castro Lopo: Debian
    Maintainer. Erik is now a Debian
    maintainer, and plans to give Haskell on Debian a
    much-needed facelift!

    Niklas Broberg: What's
    in a forall?. More Haskell
    parsing fun.

    Well-Typed.Com: GHC,
    primops and exorcising GMP.

    Niklas Broberg: What's
    in a forall?. More than
    you might expect!

    >>> Zsol: Visualizing
    the graphrewrite process behind Haskell. Work on the visual-graphrewrite
    package.

    Eric Kow (kowey): testrunner
    for practical quickcheck.

    Sebastian Fischer: Explicit
    sharing of monadic effects. Purely functional, lazy,
    non-deterministic programming!

    LHC Team: New
    backend.

    >>> James McNeill: Messing
    with Haskell.

    Dan Piponi (sigfpe): Hashing
    Molecules.

    Shin-Cheng Mu: Longest
    Segment Satisfying Suffix and Overlap-Closed
    Predicates.

    David Amos: Simple
    graphs with Math.Combinatorics.Graph. David shows off
    his Haskell for Maths library.

    Gergely Patai: More
    colourful graphs. Graphs from Gergely's GSoC
    project on profiling.

    Bryan O'Sullivan: Case
    conversion and text 0.3. The text module gets solid,
    standards-compliant case conversion.

    Bjorn Buckwalter: numtype
    1.0: Type-level (low cardinality) integers.

    >>>
    Jörn Dinkla: Parallelization
    with Haskell - Easy as can be.

    Quotes of the Week sjanssen: in our sub-culture,
    "considered harmful" means "burn it with fire"
    quicksilver: after all, anyone who insists on talking
    about himself in the third person is clearly someone to be reckoned
    with.
    About the Haskell Weekly News New editions are posted to
    the Haskell
    mailing list as well as to the
    Haskell Sequence and Planet
    Haskell. RSS
    is also available, and headlines appear on haskell.org.

    To help create new editions of this newsletter, please
    see the information on how
    to contribute. Send stories to byorgey at cis dot upenn
    dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/
    .

    [Less]

    Haskell Weekly News: June 6, 2009

    Haskell Weekly News: June 06, 2009
    Welcome to issue 120 of HWN, a newsletter covering
    developments in the Haskell community.

    Sorry for the massive HWN, I missed last ... [More] week so
    you're getting two for the price of one! Registration for Hac phi is now open, be
    sure to register soon (register by June 15 to get a special hotel rate).

    Announcements Reminder: Haskell Implementers' Workshop CFT
    deadline in 2 weeks. Simon Marlow
    reminded
    everyone to consider submitting a talk proposal for the Haskell
    Implementers' Workshop, to be held in conjunction with ICFP in Edinburgh,
    Scotland on 5 September. The deadline for submissions is a couple of
    weeks away (15 June); all that is needed is an abstract.

    storable-record. Henning Thielemann
    announced
    storable-record,
    a small package for simplified declaration of Storable
    instances for records. It may be used as an alternative to the
    c2hs
    preprocessor. It was made possible by advanced applicative technology,
    a cutting edge LCM monoid and an incredible constructor power tower.

    Haskell Communities and Activities Report (16th ed., May
    2009). Janis Voigtlaender
    announced
    the availability of the 16th
    Haskell Communities and Activities Report.

    hledger 0.5 released. Simon Michael
    announced
    the release of version 0.5 of hledger,
    a (mostly) text-mode double-entry accounting tool that generates precise
    activity and balance reports from a plain text journal file.

    New repository and trac for haskell-src-exts. Niklas Broberg
    announced
    some new infrastructure for the haskell-src-exts package,
    set up in preparation for his GSoC project. with the
    HSP packages, it's now old enough to be allowed to live on its own. There
    is also a bug
    tracker. Please help by reporting any bugs you come across, or by
    requesting new and cool features.

    bsd-sysctl 1.0.3. Maxime Henrion
    announced
    the release of bsd-sysctl
    1.0.3, a package that provides a System.BSD.Sysctl module allowing
    access to the C sysctl(3) API. It should fully work on FreeBSD, NetBSD
    and Mac OS X platforms.

    multirec-binary. Sebastiaan Visser
    announced
    the release of multirec-binary,
    which allows generic derivation of Data.Binary instances using the MultiRec
    library.

    notice for package authors. Duncan Coutts
    announced
    that Hackage uploads will soon require an upper bound on the version of
    the base package and reject packages that omit it. This will hopefully
    result in less breakage the next time a new version of the base package
    is released.

    (Pre-) Announce: Data.GDS 0.1.0. Uwe Hollerbach
    (pre-)
    announced Data.GDS, a small module to write and (eventually) read
    GDS files, a classic format of the semiconductor industry. The module
    can currently generate GDS files with a fairly low-level interface;
    planned future versions (which will be uploaded to Hackage) will have a
    higher-level interface and be able to parse GDS files as well.

    new version of uu-parsinglib. S. Doaitse Swierstra
    announced
    that a new version of the uu-parsinglib
    library has been uploaded to hackage. It is now based on Control.Applicative
    where possible. Be warned that functions like some and many will be
    redefined in the future.

    Hac phi: Haskell hackathon in Philadelphia, July 24-26. Brent
    Yorgey
    announced
    Hac phi, a Haskell hackathon/get-together to be held July 24-26 at the
    University of Pennsylvania in Philadelphia. The hackathon will officially
    kick off at 2:30 Friday afternoon, and go until 5pm on Sunday (with
    breaks for sleep, of course). Everyone is welcome---you do not have to be
    a Haskell guru to attend! Helping hack on someone else's project could be
    a great way to increase your Haskell-fu. If you plan on coming, please register.
    There is a block of hotel rooms available at a special rate only
    until June 15, so register early! More details can be found on the Hac phi wiki.

    Job for someone: make a VM image for GHC development. Simon Marlow
    suggested
    a useful project for someone looking for something to do: create a VM
    image of a Linux system with a complete GHC development environment set
    up and ready to go.

    My attempt at Haskell USB. Mauricio
    announced
    some Haskell
    bindings to libusb, and gave another plug for his bindings-common
    package, which makes it easier to generate Haskell bindings to low-level
    libraries.

    second alpha release of OSX haskell platform installer. Gregory
    Collins
    announced
    a second
    candidate release for the OSX Haskell Platform installer. Please try
    it out!

    Release Schedule for 2009.2.0.2. Don Stewart
    announced
    the release
    schedule for the next minor release of the 2009.2.0 branch of the
    Haskell Platform. The freeze for package changes will be Wednesday 1 July,
    and the release is scheduled for Monday 13th July.

    hscamwire, for IIDC1394 cameras. Frederick Ross
    announced
    the release of hscamwire
    0.1, which provides a nice Haskellized layer over Camwire, a library
    to connect to IIDC1394 cameras (most scientific and industrial Firewire
    cameras) on Linux.

    Safe and generic printf with C-like format string. oleg
    announced
    some code to implement a type-safe polyvariadic version of printf, which
    is also integrated with Show so that any showable type can be printed.

    A library for serial ports. Frederick Ross
    announced
    the release of serial-0.1,
    a library for line-oriented interaction with serial ports on POSIX
    compatible systems.

    HaL4: Haskell-Meeting in Germany, 12th June 2009. Janis
    Voigtlaender
    reminded
    everyone of Hal4, a German-language
    Haskell gathering to be held in Halle/Saale on June 12. There are already
    close to 50 registered participants, so expect a very lively meeting! Late
    registration still possible.

    wp-archivebot 0.1 - archive Wikipedia's external links in
    WebCite. Gwern Branwen
    announced
    wp-archivebot,
    a relatively simple little script which follows all the links in a RSS
    feed, combs the destination for http:// links, and submits them to WebCite.

    memscript-0.0.0.2. Ki Yung Ahn
    announced
    memscript,
    a command line utility for memorizing scriptures or any other text.

    HSH 2.0.0. John Goerzen
    announced
    the release of version
    2.0.0 of HSH, the Haskell shell scripting library. This version features
    a complete rewrite of the core using System.Process, a drastic reduction
    in code size and complexity, cross-platform support, and a simpler and
    more flexible API.

    atom-0.0.5. Tom Hawkins
    announced
    version 0.5 of the atom
    library, a DSL for embedded hard realtime applications. This version
    includes a few bug fixes and doc improvements.

    heap-1.0.0. Stephan Friedrichs
    announced
    a rewrite of the heap package, heap-1.0.0.
    It is not 100% compatible with version 0.6.0, but provides major
    improvements, including a better mechanism for instantiating min-,
    max-, min-prio- and max-prio-heaps, and faster {from,to}{Asc,Desc}List
    conversions.

    The Haskell Platform 2009.2.0.1. Don Stewart
    announced
    the second release (2009.2.0.1) of the Haskell Platform, a
    single, standard Haskell distribution for everyone. The specification,
    along with installers (including Windows and Unix installers for a full
    Haskell environment) are available.

    Anglohaskell 2009. Philippa Cowderoy
    announced
    Anglohaskell
    2009, to be held at MSR Cambridge on the 7th and 8th of August.

    code reviewers wanted for hashed-storage (darcs). Eric Kow
    solicited
    anyone with a few spare hours this summer willing to help the Darcs project
    as a code reviewer for the standalone hashed-storage module, which will
    be used by Darcs in the future. No Darcs experience is needed!

    Google Summer of Code Progress
    updates from participants in the 2008 Google
    Summer of Code.

    Haddock improvements. Isaac Dupree
    has begun looking at the Haddock code, and has a question
    about which of two options he should pursue.

    EclipseFP. Thomas Ten Cate
    has posted an explanation
    of how the Scion client/server model works.

    Space profiling. Gergely Patai
    has uploaded
    a preliminary version of the hp2any core library which
    handles heap profiles both during and after execution. He has also posted
    some pretty graphs generated by a simple utility built on top of the
    core library.

    haskell-src-exts. Niklas Broberg
    has begun work by making a list
    of all language extensions and the ways in which they affect lexing
    and parsing, since haskell-src-exts will need to be parameterized over
    these extensions.

    Fast Darcs. Petr Rockai
    has posted two detailed progress reports
    already, with many changes to both the standalone hashed-storage library
    and a fork of darcs
    which uses it.

    Discussion Error message reform (was: Strange type error
    with associated type synonyms). Max Rabkin
    began an interesting discussion
    about error messages. Do you have an intuitive sense of which is the
    'expected' and which the 'inferred' type?

    time library dependencies. Ashley Yakeley
    asked
    what dependencies are acceptable for the time library, leading to a
    discussion of what dependencies are acceptable for base packages.

    Bool as type class to serve EDSLs. Sebastiaan Visser
    started a discussion
    on the possibility of a type class for representing Boolean values,
    much like the current Num class for numeric values.

    Jobs 10 jobs in declarative programming. Oege de Moor
    announced
    the availability of positions with Semmle and LogicBlox for ten declarative
    programming consultants, who will work with clients to write custom queries
    in Datalog, and to create user interfaces in a declarative framework. Semmle
    and LogicBlox are creating a platform for declarative programming in
    Datalog, a pure logic programming language. Semmle is based in Oxford,
    headed by Oege de Moor; LogicBlox is based in Atlanta, headed by Molham
    Aref. See the announcement for more information and how to apply.

    Blog noise Haskell news from
    the blogosphere.
    Blog posts from people new to the Haskell community are
    marked with >>>, be sure to welcome them! David Amos: Welcome
    to Haskell for Maths. David's Haskell library for mathematics
    exploration is under development again!

    Joachim Breitner: Third
    place in AI programming
    contest.

    Bryan O'Sullivan: Dealing
    with encoding errors in
    Data.Text.

    Remco Niemeijer: Programming
    Praxis - Ternary Search Tries.

    beelsebob: Collecting
    Non-Memory Resources.

    Luke Palmer: It
    is never safe to cheat. Ceiling cat
    is watching you.

    Alex McLean: More hackery. More
    cool livecoding with Haskell.

    Thomas ten Cate: Client/server
    communication.

    Gergely Patai: The
    first graphs.

    Alson Kemp: Turbinado
    V0.6.5.

    Don Stewart (dons): The
    Haskell Platform 2009.2.0.1. The first minor update release
    of the Haskell Platform is here.

    Alson Kemp: Turbinado
    V0.6.5.

    Michael Snoyman: Functors
    and Monads (containers).

    Well-Typed.Com: Come
    talk at the Haskell Implementers'
    Workshop!.

    GSoC Fast Darcs: soc
    progress 2.

    Shin-Cheng Mu: On
    a Basic Property for the Longest Prefix
    Problem.

    >>> Ben Hutchison: OO/Imperative
    programmers: 'Study Functional Programming or Be
    Ignorant'.

    Michael Snoyman: Run
    a MonadCGI as a CGI
    application!.

    Michael Snoyman: Wordify:
    RESTful Haskell web apps.

    Marco Tulio Gontijo e
    Silva: xmlGetWidget
    without castTo*.

    >>> slawekk: Probability
    monad.

    Brandon Simmons: Huffman
    Coding.

    Niklas Broberg: Parametrising
    haskell-src-exts on extensions. A list of language extensions
    and how they affect parsing.

    Manuel M T Chakravarty: Instant Generics now
    has a website!.

    GHC / OpenSPARC Project: The
    CAS experiment.

    Brent Yorgey: Hac
    phi!. Registration is now open.

    Jeff Heard: Buster
    2.2 - Application Orchestration redux. Example
    code showing off Buster.

    Bryan O'Sullivan: I
    put a pidgit in your widget so you can fidget
    while you calculate pi. GHC and the
    language shootout.

    Niklas Broberg: Haskell
    Platform, I'm in love.

    Bjorn Buckwalter: Benchmarking
    Amazon EC2 with GHC.

    Bjorn Buckwalter: Blogging
    with Pandoc, literate Haskell, and a
    bug.

    >>> Chris Moos: Haskell
    AIM Client - a cool proof of concept.

    Marco Tulio Gontijo e Silva: Generating code with
    Haskell-src and TH.

    Quotes of the Week pumpkin: we should throw it
    [CReal] in with Foreign.C.Types to confuse people
    MyCatVerbs: The *real* best way to optimize a
    program is to tell dons that it's been added to the Shootout.
    SimonFrankau: The points-free approach, while elegant,
    can make code unreadable, especially if it is written by quantitative
    analysts moonlighting as functional programmers. ValarQ:
    l33t_h4x0r: could you help me port GHC to the AVR architecture? <--
    l33t_h4x0r has left #haskell gwern: drat. what *do*
    all you people talk about? only one bacon and one zombie quote
    quicksilver: well if you can get proggit to help with your
    interview, then perhaps you can get proggit to help with the job when
    you get it. So it's not cheating, it's just an indication of one of your
    skill sets. shapr: I haven't tried F#, everytime I
    get the urge to do something fun with .NET I have SharePoint flashbacks
    and buy more hardware instead. gwern: bleh. haskell
    is messing me up. I wondered what operator =) is, before I realized it
    was a syntax error, before I realized it was an emoticon
    About the Haskell Weekly News New editions are posted to
    the Haskell
    mailing list as well as to the
    Haskell Sequence and Planet
    Haskell. RSS
    is also available, and headlines appear on haskell.org.

    To help create new editions of this newsletter, please
    see the information on how
    to contribute. Send stories to byorgey at cis dot upenn
    dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/
    .

    [Less]

Read all GHC articles…

Download Page
38 downloads

Who uses GHC?

Avatar Avatar Avatar Avatar Avatar Avatar Avatar Avatar Avatar Avatar Avatar Avatar

Who contributes to GHC?

Avatar Avatar Avatar Avatar Avatar Avatar Avatar Avatar
I'm a contributor

Who manages GHC?

I'm a manager

Where in the world?





Project Cost

This calculator estimates how much it would cost to hire a team to write this project from scratch. More »
Include
Codebase 167,958
Effort (est.) 42 Person Years
Avg. Salary $ year
$ 2,320,171