John Wiegley | 3 May 00:57 2016

Are there GHC extensions we'd like to incorporate wholesale?

I wonder if there are GHC extensions we'd like to promote as features in the
next report, as a starting point for discussing new additions.

There are a few GHC features that have become part of the regular Haskell
landscape, such that it's hard to imagine a modern Haskell without them. For
example, MultiParamTypeClasses, OverloadedStrings, GADTs, TypeFamilies, etc.

How much "work" is typically involved in promoting a feature to be in the
Report, and how do we determine when it's a bad idea?


John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F                          60E1 46C4 BD1A 7AC1 4BA2
Herbert Valerio Riedel | 30 Apr 10:03 2016

Re: Chairship / responsibility

Hello *,

On 2016-04-29 at 15:17:43 +0200, Richard Eisenberg wrote:
> Is there a chair of this committee? Herbert has been acting as such
> (thank you!) but doesn't list himself as the chair in the initial
> announcement.
> I am **in no way** trying to change any status quo and
> am **not** interested in being chair at the moment, but I just wanted
> to clarify.

Fwiw, I mentioned in the preceding CfN

| In consultation with the current members of the Haskell Prime
| committee (and Simon PJ), I have volunteered as chair to "reboot" the
| process and get things rolling again.

But you're right I failed to repeat this in the actual announcement.

However, I don't want to impose myself on the committee as chair. So if
anyone else feels motivated enough to pick up the role as chair with the
agreement of the committee I'll happily hand over the chair position!

Moreover, this doesn't need to be a static configuration: We could also
rotate the chair position (and other duties) over the lifetime of the
Haskell 2020 committee. There just needs to be one designated chair at
any time to keep things moving.
(Continue reading)

wren romano | 30 Apr 04:51 2016

Re: Chairship / responsibility

> Hi Prime,
> Is there a chair of this committee? Herbert has been acting as such (thank you!) but doesn't list himself as
the chair in the initial announcement. I am **in no way** trying to change any status quo and am **not**
interested in being chair at the moment, but I just wanted to clarify.
> The specific reason I ask is that Takenobu Tani recently asked about `pseq`. I have no intelligent
response to offer, but would want to make sure that someone does offer a response. If there is a chair, that
person is de facto responsible that we, as a committee, communicate well, both internally and externally.

I don't know that we have one (officially), but I agree that
getting/agreeing-on one should be done soon.


Live well,
wren romano | 30 Apr 04:49 2016

Re: Infrastructure & Communication

On Fri, Apr 29, 2016 at 9:17 AM, Mario Blažević <blamario <at>> wrote:
>     There are two or three distinct components we need to keep track of: the
> draft standard, discussions, and potentially RFCs.
>     Discussions can be hosted on this mailing list, on Trac, or as Git
> issues. Each of them would serve fine, but we should choose exactly one and
> stick to it. The mailing list looks pretty good in isolation, but the best
> choice depends on whether we want to have RFCs or not.
>     If we support Requests for Comments, we'll need to also support their
> public submissions and Git pull requests or something to the same effect. In
> that case, at least the inevitable comments on RFCs would best be placed
> close to the RFCs themselves - if the RFCs end up on GitHub the discussions
> of them should be kept as GitHub issues.

I agree with all of this, and think this distinction should be kept in
mind in terms of keeping things organized to whatever tools we choose.

For general discussions I think this mailing list is best. I'm cool
for keeping irc as a side channel for hashing things out more
interactively, but it's all to easy to miss things there so I think
it's best kept as a side channel not a main one.

I like (something like) GitHub issues for tracking the exact content
of proposed changes and their (direct) commentary. As far as the
particular tool I'm mostly agnostic, but lean slightly towards github
over trac. I've never used phabricator so can't say there (though I'm
slightly against, as it'd be another tool to learn.)

As far as wiki stuff goes, to be honest I'm kinda against it. I see
(Continue reading)

Re: Evaluation order control between two expressions

Hello Takenobu,

Great question, this is actually a pretty interesting issue! It isn't
out of scope at all.

The first thing to think about is the following thought experiment:

Without the presence of side-effects, how can you tell the difference
between a `seq` that conforms to the Haskell report and one that
evaluates it's first argument before its second?

If your answer involves `unsafePerformIO` then you're cheating ;)

Even if your first argument to `seq` is an IO action it won't get
executed because `seq` only evaluates to WHNF. It might be possible to
construct a program that allows you to observe the difference, but in
the general case I don't see how you could. I'd be very interested to
be shown otherwise though!

Now in a parallel program things change. When we use `pseq` it's
because we don't want two threads to collide when trying to evaluate
the same expression. Let's look at an example:

x `par` y `seq` x + y

As you noted, the semantics of `seq` doesn't actually guarantee that
`y` will be evaluated before `x + y`. But this only matters because
we've used `par` and introduced threads (via an effect!) and therefore
the possibility of collision. We can avoid this by using `pseq`
(Continue reading)

Update on Haskell Prime reboot?

Hello all,

I'm curious if there is any progress on the reboot of the Haskell
Prime committee. It has been six months since the closing of
nominations and there hasn't been any word that I'm aware of. I've
also spoken to a few others that have self-nominated and they too have
not heard any news.

Personally, I feel that a new standard is very important for the
future health of the community. Several threads on the mailing list
and posts on the web, such as one on reddit today [1], show a desire
from the community for a major consolidation effort.

If there is any way that I can help the process along I would be glad
to do so. It would be a shame to allow for the enthusiasm for a new
committee fade away.



Haskell-prime mailing list
Haskell-prime <at>
ramin.honary | 20 Oct 00:00 2015
M Farkas-Dyck | 13 Oct 08:56 2015

Self-nomination for committee

I hereby nominate myself for the Haskell Prime committee. I have been
using Haskell in my personal work for about 5 years and in industry
for about half a year; my experience in it includes compilers,
algebra, and network servers. I feel like an ignorant child among all
the potent wits in this community, but I have learnt a few rudiments
of category theory. I love this language and I'm very excited to
canonicalize some of the admirable work done since the last version.
Nicolas Wu | 12 Oct 10:31 2015

Self nomination

Dear all,

I'd like to nominate myself for membership on the Haskell Prime committee.

I have used Haskell in industry, for teaching, and for research.

* I have been using Haskell since 2001.
* I am currently a university lecturer teaching Haskell to a cohort of
180 students.
* I actively use Haskell in research, where I work on applications of
category theory in recursion schemes, effect handlers, and domain
specific languages.
* I have worked with Haskell as a consultant, and am a partner in a
company that uses Haskell for web development.

I would love to be involved in the process of deciding which features
should become part of the next standard for Haskell. I believe that
Haskell should be a language that appeals to several audiences:
newcomers to computer science, to those who use the language in
industry, and also to researchers. The needs of these different groups
need not be in conflict, and I would like to see a standard that
embraces them all.

Best wishes,

Richard Eisenberg | 8 Oct 14:24 2015

Self Nomination

I would like to nominate myself for the Haskell Prime committee. I have been studying Haskell intensively
as I'm working toward my PhD at the University of Pennsylvania, though I started programming in Haskell
only in 2011.

* I have designed and implemented several new features in GHC:
  - Closed type families
  - Coercible/roles
  - Several Template Haskell improvements
* I am currently putting the final touches on a large patch to GHC, merging the type and kind language and
allowing reasoning about kind equalities.
* My dissertation is about dependent types in Haskell/GHC.
* I am currently serving as the Template Haskell czar for GHC.
* I am an avid user of lots of GHC extensions, particularly those concerning types. Two of my packages --
singletons and units -- make very heavy use of type system features.

Relevant opinion:
* Despite my pushing the envelope in GHC, my approach toward a language standard is conservative.
Specifically, I would advocate against any of GHC's growing dependent-type features to end up in the
standard: we simply don't have enough experience with these!

My website is at if you wish to learn more about me.

Jurriaan Hage | 7 Oct 21:22 2015

Self nomination

Dear all,

I’d like to nominate myself for the Haskell Prime committee.

I have been programming in Haskell since 2000 or so. Currently I teach a 
course on Functional Programming that discusses many of the essentials 
of Haskell to groups of over 240 or up. 

To be fair:  I do not use Haskell a whole lot myself, but that is also because
my work does not demand much in terms of any kind of programming, and much of
other things. Master and PhD students that I supervise do typically implement their 
ideas in Haskell.

Research-wise I have been working on Haskell too: with Bastiaan Heeren
I have looked at type error diagnosis for Haskell, have contributed to
the Helium compiler for novice programmers, and are currently lead maintainer
of that compiler (available on Hackage). I am also involved in the Utrecht Haskell
Compiler (UHC) with Atze Dijkstra, co-supervising master students working on it. 

I currently supervise a PhD student, Alejandro Serrano Mena, who continues
the work I did with Bastiaan: domain specific type error diagnosis for Haskell 2010,
with an eye to implementing this in UHC or GHC. 

My research interest lies in making Haskell the best vehicle for
embedded domain-specific languages in the world. Incidently, I gave a talk on this
at Curry On! in Prague ( 
Shortly, I want to extend my focus to optimisation, in a way that is transparent to 
the programmer. My paper on heap recycling at PEPM 2008 with Stefan Holdermans 
provides a sample of this.

I am also much interested in the tensions that arise from combining Haskell the 
research-vehicle with Haskell the vehicle for the professional, and Haskell the vehicle for 
teaching how to program in a single specification.

My website is at where you can also
find a list of publications, many of which involve Haskell one way or another.

Jurriaan Hage
Utrecht University

Haskell-prime mailing list
Haskell-prime <at>