GHC maintenance
We have an established team maintaining the Glasgow Haskell Compiler, led by Ben Gamari. Check out GHC posts on our blog for details of our recent activity.
Ongoing maintenance work and GHC release management is funded by several companies who are willing to invest in making GHC and Haskell better for everyone. We are very grateful on behalf of the whole Haskell community for the support these companies provide.
Our GHC expertise means we are well placed to implement new features and tools on behalf of clients. Recently these have included:
The low-latency garbage collector, which can significantly reduce GC-related latency of server applications with large memory requirements. This is a real benefit to companies using Haskell in production.
Converting LiquidHaskell to a GHC plugin, making it practically usable at a much larger scale.
Developing memory profiling tools in collaboration with Hasura, making it easier to debug performance problems in real-world Haskell projects.
If your company might be able to contribute funding to GHC maintenance in general, or you need a specific GHC feature implemented, please get in touch.
Open source contributions
In addition to our core work on GHC, we are keen open source contributors, and between us we have authored and maintain many open source Haskell libraries and tools, including many contributions to Cabal, cabal-install and Hackage. A few examples of projects we developed or significantly contributed to include:
generics-sop
, a library for datatype-generic programming, developed by Andres Löh and Edsko de Vries.optics
, a library for working with “modular data accessors” such as lenses, traversals and prisms, with a focus on good documentation, helpful type inference and clear error messages, developed by Adam Gundry, Andres Löh, Oleg Grenrus and Andrzej Rybczak.cborg
andserialise
, libraries for efficient binary serialisation using CBOR, developed by Duncan Coutts and Austin Seipp.ghc-events-analyze
, a tool for time profiling of concurrent programs using the eventlog, developed by Edsko de Vries.ghc-debug
, a library for detailed heap analysis and memory profiling, developed by Matthew Pickering, Ben Gamari and David Eichmann.nothunks
, a library for preventing memory leaks due to laziness, developed by Edsko de Vries.beam-automigrate
, a package for database migrations for thebeam
library, developed on behalf of Obsidian Systems by Alfredo Di Napoli and Andres Löh.
We offer special rates for work on open-source projects, so if you would like to commission work on a new library or enhancements to an existing one, just drop us a line.
Standing on the shoulders of giants
The Haskell toolchain is the result of years of work by hundreds of people, all of it openly shared. As individuals and as a company we believe in that spirit of openness. We see it as part of our mission to help make Haskell great. We want to help maintain a strong Haskell community and an excellent software development platform.
We try to do this in a number of ways:
- We have served on the Haskell language specification committee.
- We helped set up, and have served on, the haskell.org committee.
- We co-founded the Industrial Haskell Group.
- We helped establish the Haskell Platform.
- We regularly help organise and participate in Haskell Hackathons, including MuniHac and ZuriHac.
- We have mentored students in the Summer of Haskell run by Haskell.org and Google Summer of Code.
- We helped set up, and are founding sponsors of, the Haskell Foundation.
Check out Haskell community posts on our blog for more about our activities.