A Revised Haskell 2010 Language Report | The Haskell Programming Language's blog

20 Likes

(Here is my official announcement blob :slight_smile: )

We have been waiting 16 years for the next Haskell language report, but we shall not be waiting much longer :slight_smile: As of today, we have a new working group under the umbrella of the Haskell Foundation that is charged with compiling a new Haskell language report. The blog post describes the vision in much more detail, but briefly, we will be working on a Revised Haskell 2010 Language Report that incorporates all the changes that differentiate the Haskell that we write today when you have the Haskell2010 language edition enabled from the Haskell that is specified in the official Haskell 2010 language report.

The GitHub repository is already online: GitHub - haskellfoundation/haskell-2010-revised-report: Haskell 2010 Revised Language Report · GitHub This is where all the technical discussions will take place, and where we will be working on assembling the new report. Please start looking at the code, the issues and contribute to the discussions. Merging actual changes to the language and standard libraries will have to wait for a bit, until we have formally established the members of the working group.

Who will be a member in the working group? Good that you ask, since the list of members has not been established yet and might even include you! Very shortly we will follow up this announcement post with an official open call for membership in the working group, with details on how to apply.
But until then, I would love to hear what you would like to see improved in the report. One of the improvements that are already incorporated is a fully hyper-linked BNF grammar that allows to jump to the definition of any non-terminal. But I hope that we can include even more usability improvements into the report.

24 Likes

Both PDF and HTML output is supported natively, with no need to use separate tools.

I tried the Typst HTML output this week for a different project; it did not work well at all, and I saw it is described as “very incomplete”. Are you confident that it is stable enough for this job? I notice for example that many formulas are missing from the HTML version of the revised report.

That is a very good question! I haven’t done any optimization of the HTML output so far, this is why it still looks quite shabby. But I don’t think there are any major obstacles to get exactly the HTML output we want:

  • The vast majority of the report does not use anything fancy beyond basic markup that is directly supported.
  • Mathematical typesetting also only uses basic features that translate directly to MathML
  • I use the cetz package as a replacement for tikz to generate some figures, but it is very easy to wrap that with a typst function so that a .svg file is generated in the output. That is what the code already does.
  • For everything that currently doesn’t work out of the box it is possible to generate a custom definition that dispatches on the export Target - Typst Documentation and creates custom html elements.

Just as an example, the typst reference documentation at Overview - Typst Documentation is completely generated using typst itself and way fancier than anything we need.

Anything that doesn’t work yet you can add to the tracking issue in Fix layout of HTML output · Issue #1 · haskellfoundation/haskell-2010-revised-report · GitHub I should probably invest 1 or 2 days to do at least the basic work to get the html to look decent.

4 Likes