Hello again! In this log I also want to put out two calls-to-action.
- Although the hpc library ships with GHC, it effectively has no maintainer. The paid maintainers of GHC don’t have enough of a time budget to give it attention, since they are fully occupied with GHC itself. That means issues like #24330: hpc complains that record field referencing an existential is never executed · Issues · Glasgow Haskell Compiler / GHC · GitLab don’t have a high chance of getting resolved. I believe that, similar to hpc / hpc-bin · GitLab, there is an opportunity for an interested party to show some leadership and pitch in here. I know the power structures at this strata of Haskell are a bit cloudy, so I’m explicitly pointing out that you, yes you, could be the difference for HPC
- Same, but for
ghc-pkg
. This is a very high impact tool, used by every Haskeller every day (under the hood). Potential improvements like !11142: Fix #16324 More efficiently bulk unregister with ghc-pkg · Merge requests · Glasgow Haskell Compiler / GHC · GitLab will be very hard to get merged unless/until somebody decides to get involved and build the baseline expertise needed to provide useful reviews.
If you’re looking for inspiration, I think that hpc-bin (linked above), cabal, and stack have all had a lot of people step up in the last couple years and start building the expertise that allows them to be leaders and facilitate more contributions. It is possible! (I might say something sentimental about how Haskell is a language that makes it possible to get involved in huge legacy projects without despair thanks to good abstractions that come from pure functional programming, but that wouldn’t be very scientific of me…)
Ok, on with the log!
I’ll try to keep it short, although I’ve been hard at work. I am still working on taking ownership of Stackage.org. (Another case where someone new is becoming the expert, although this one is very difference since it’s official Haskell Foundation work.) There have been a few hiccups related to generating and displaying the haddocks for snapshot packages. I have had to extend three different processes to handle the new haddock storage bucket, and I had to work around one Cloudflare bug. As always, I think I’m “almost done” now.
In the last week, I also performed a critical security upgrade to gitlab.haskell.org and (unrelatedly) dealt with another one of its disk space outages. Proactively preventing these things is on my todo list…
Finally, here’s the issue summary from the most recent GHC issue triage!
GHC issue triage notes
-
#22108: Improve nofib comparison output · Issues · Glasgow Haskell Compiler / GHC · GitLab
- came up in the ghc call, SPJ would appreciate getting some old behavior back for doing
performance testing of GHC
- came up in the ghc call, SPJ would appreciate getting some old behavior back for doing
-
#24340: Question: Is forcing this value in WHNF avoidable? · Issues · Glasgow Haskell Compiler / GHC · GitLab
- “maybe”
-
#24339: Add support for executing TH splices on the host platform during cross compilation. · Issues · Glasgow Haskell Compiler / GHC · GitLab
- “it would be nice”
- just run splices on the host instead of the target - often it doesn’t matter to the semantics
- but this means ensuring you have the full toolchain for both host and target, which is also
a lot of work - given a retargetable ghc, this would be much easier to do. It would be the sanest way.
- generated a lot of discussion; Matt will try to write down his clarification
-
#24338: hadrian: Cabal verbosity is too high · Issues · Glasgow Haskell Compiler / GHC · GitLab
- Yes please
- But only if it worked - we need to double check (UPDATE: It did)
-
#24337: Provide RTS flag to not automatically start cost centre profiling · Issues · Glasgow Haskell Compiler / GHC · GitLab
- [I was distracted by the previous one and missed the discussion here]
-
#24336: Proposal: Add Property-Based Tests (PBTs) to GHC · Issues · Glasgow Haskell Compiler / GHC · GitLab
- perhaps the compiler is not yet modular enough to be able to write property tests
- it’s hard to isolate pieces of it
- I mean, it’s probably good direction to travel, but will take a lot of work
-
#24335: Several bugs with forall (cv::t1~#t2). ty) · Issues · Glasgow Haskell Compiler / GHC · GitLab
- probably bugs in the typechecker that aren’t fatal but are still bugs
-
#24334: Kill off seqRule; unboxing through seq#/evaluate · Issues · Glasgow Haskell Compiler / GHC · GitLab
- simplifier madness
- but the kind of madness that will make certain things saner for users
-
#24333: Unexpected variable untouchable inside constraint since GHC 9.8 · Issues · Glasgow Haskell Compiler / GHC · GitLab
- Was closed because unfortunately the “bug” is “by design”
-
#24332: Implement eras profiling · Issues · Glasgow Haskell Compiler / GHC · GitLab
- Kind of a big deal - new powerful ways of doing performance profiling of haskell programs.
Kudos to Matt and Well-Typed for this work - See writeup at FIXME [and now I forget. But see Haskell Optimization Handbook !!]
- Kind of a big deal - new powerful ways of doing performance profiling of haskell programs.
-
#24331: Constant folding for bit casts between word and float types · Issues · Glasgow Haskell Compiler / GHC · GitLab
- work in progress
-
#24330: hpc complains that record field referencing an existential is never executed · Issues · Glasgow Haskell Compiler / GHC · GitLab
- hpc needs a champion… Some have taken over hpc-bin, but the library itself is also
unmaintained.
- hpc needs a champion… Some have taken over hpc-bin, but the library itself is also
-
#24329: Always emit all kinds of diagnostic, `-W` just changes severity · Issues · Glasgow Haskell Compiler / GHC · GitLab
- Since there are performance impacts to turning on a bunch of warnings (even if they aren’t
shown by default), it might be better for HLS to explicitly opt-in to all the warnings
- Since there are performance impacts to turning on a bunch of warnings (even if they aren’t
-
#24328: Previous iteration of simplifier kept alive throughout next iteration · Issues · Glasgow Haskell Compiler / GHC · GitLab
- already fixed
- found with the new eras profiling
-
#24327: Breakpoint CostCenters are looked up in the wrong array · Issues · Glasgow Haskell Compiler / GHC · GitLab
- bug in a new feature (9.10 only - unreleased)
-
#24325: StablePtr# array operations should be lev-polymorphic · Issues · Glasgow Haskell Compiler / GHC · GitLab
- makes sense.
-
#24324: autoconf-2.72 breaks macOS configure · Issues · Glasgow Haskell Compiler / GHC · GitLab
- new autoconf sets a variable to something with a space, which breaks our use of configure on
macOS - Simply fixing the things that have broken might not be sufficient… it could be break so many
things… hard to tell what’s going on - The suggested fix itself to the m4 should be harmless, but the issue seems wily
- Perhaps other people have already dealt with this - Rodrigo will do some research
- new autoconf sets a variable to something with a space, which breaks our use of configure on