2023 GHC Contributors' Workshop
2023-06-07..2023-06-09
-- online --
| title | author | length |
|---|---|---|
| Intro and Welcome | 09m | |
Practical orientation covering logistics and the event workflow: Wi‑Fi and campus building map, mensa lunch details (card or cash, about 11–13 CHF per mensa… | ||
| Getting Up and Running, and Contributing to GHC | Ryan Scott | 01h 22m |
Walks through building GHC from source with Hadrian: install an older bootstrap GHC, run the autoconf boot and configure step, then invoke the Build script… | ||
| GHC's Renamer | Sam Derbyshire | 01h 37m |
Overview of GHC’s renamer, its key datatypes and a live bugfix: the renamer resolves OccName/RdrName/Name and builds the GlobalRdrEnv, then must decide if a… | ||
| GHC Core Optimisations | Sebastian Graf | 01h 38m |
Desugared System F–style Core appears as a small, explicitly typed IR where case drives evaluation; the talk traces specific passes (strictness/demand… | ||
| Practical Info - Day 2 | Farhad D. Mehta, David Thrane Christiansen | 06m |
Room locks during lunch and again around 5:00–5:15 so leave the space and don’t store laptops there; mensa has separate queues for hit, daily menu, free plate… | ||
| GHC's Runtime System | Ben Gamari | 01h 30m |
GHC’s runtime is described concretely: codegen exposes registers R1..R10 and special registers like CurrentTSO, allocation uses an Hp/HpLimit bump-pointer… | ||
| The GHC WebAssembly Backend | Cheng Shao | 01h 47m |
GHC now ships a WebAssembly backend (Asterius → in-tree) that actually builds with ghc.nix with withWasiSDK=true, produces ~10–12 MB .wasm executables… | ||
| Secrets of the GHC Typechecker in 100 Type Declarations | Simon Peyton Jones | 01h 35m |
Deep tour of GHC’s typechecker anchored in actual source: 50,000 lines of Haskell, modules like GHC.Tc.Gen (≈11k LOC), GHC.Tc.Solver (≈6k), GHC.Tc.Errors… | ||
| Higher order Patterns in Rewrite Rules | Jaro Reinders | 23m |
Adds actual higher-order pattern matching to GHC’s rewrite-rule matcher by changing Rules.hs match to recognize template variables applied to distinct local… | ||
| Practical Info - Day 3 | David Thrane Christiansen | 02m |
Certificates of participation are filled out and handed out at the lunch break—come find Farhad at the beginning of lunch to get one; after the last… | ||
| The GHC Packaging Ecosystem | Duncan Coutts | 01h 32m |
Overview of how GHC treats libraries as concrete, registered units and how Cabal/Hackage/ghc-pkg/cabal-install actually interoperate: history from 2003 to… | ||
| GHC’s JavaScript Backend | Sylvain Henry | 01h 43m |
GHC now ships a technology‑preview JavaScript backend (based on GHCJS code) that generates Node/browser bundles, includes a JavaScript RTS with STG trampoline… | ||
| Haskell Language Server | Zubin Duggal | 01h 26m |
Haskell Language Server (HLS) is an IDE backend built on the GHC API that delivers hover, go-to-definition, diagnostics and refactorings by combining hie-bios… | ||
| Farewell | 08m | |
Event summary with numbers and outcomes: participation includes about 150 remote signups with typically 10–20 concurrent stream viewers, on-site attendance… | ||
| nothing matches | ||