Media Summary: I give an introduction to GHC's RebindableSyntax extension, with examples. GHC manual page: ... I walk through the several different warnings GHC can produce about pattern matches. Find me at or on ... In some GHC work I've been up to (in collaboration with Sam Derbyshire aka and Simon Peyton Jones), I discovered that ...

Rae Deferring Type Errors In Haskell - Detailed Analysis & Overview

I give an introduction to GHC's RebindableSyntax extension, with examples. GHC manual page: ... I walk through the several different warnings GHC can produce about pattern matches. Find me at or on ... In some GHC work I've been up to (in collaboration with Sam Derbyshire aka and Simon Peyton Jones), I discovered that ... I explain the infrequently-written but often-implied -XMonoLocalBinds extension and how it prevents let-generalization. Recent work within GHC has opened up questions about which constraints should be generalized (that is, included in an inferred ... Richard Eisenberg explores why we need the Proxy

This video demonstrates a way to access the full I explain a recent accepted proposal to remove (/=) from the Eq Testing the failure cases of code is often as important as testing the successful paths. The Pandoc filter we worked on in the ... Previous video: Code: Thanks much to Karidia Konaté for ...

Photo Gallery

@rae: Deferring type errors in Haskell
@rae: How to read some common GHC errors
@rae: The monomorphism restriction in Haskell causes order dependency. Ack!
@rae: RebindableSyntax in Haskell
@rae: Custom type errors using TypeError
@rae: A guide to pattern match warnings in GHC
@rae: Impredicative types and dynamic types -- useful in parsing JSON
@rae: UndecidableInstances can actually cause a runtime loop. Eek!
@rae: GHC sometimes infers the wrong type
@rae: Let-generalization is confusing
@rae: Figuring out what constraints to generalize is hard
@rae: Why Haskell can't get rid of Proxy (yet)
View Detailed Profile
@rae: Deferring type errors in Haskell

@rae: Deferring type errors in Haskell

GHC/

@rae: How to read some common GHC errors

@rae: How to read some common GHC errors

I go through a few common

@rae: The monomorphism restriction in Haskell causes order dependency. Ack!

@rae: The monomorphism restriction in Haskell causes order dependency. Ack!

We like to think of

@rae: RebindableSyntax in Haskell

@rae: RebindableSyntax in Haskell

I give an introduction to GHC's RebindableSyntax extension, with examples. GHC manual page: ...

@rae: Custom type errors using TypeError

@rae: Custom type errors using TypeError

I explain GHC's

@rae: A guide to pattern match warnings in GHC

@rae: A guide to pattern match warnings in GHC

I walk through the several different warnings GHC can produce about pattern matches. Find me at https://richarde.dev/ or on ...

@rae: Impredicative types and dynamic types -- useful in parsing JSON

@rae: Impredicative types and dynamic types -- useful in parsing JSON

I demonstrate how using impredicative

@rae: UndecidableInstances can actually cause a runtime loop. Eek!

@rae: UndecidableInstances can actually cause a runtime loop. Eek!

Inspired by https://gitlab.

@rae: GHC sometimes infers the wrong type

@rae: GHC sometimes infers the wrong type

In some GHC work I've been up to (in collaboration with Sam Derbyshire aka @sheaf and Simon Peyton Jones), I discovered that ...

@rae: Let-generalization is confusing

@rae: Let-generalization is confusing

I explain the infrequently-written but often-implied -XMonoLocalBinds extension and how it prevents let-generalization.

@rae: Figuring out what constraints to generalize is hard

@rae: Figuring out what constraints to generalize is hard

Recent work within GHC has opened up questions about which constraints should be generalized (that is, included in an inferred ...

@rae: Why Haskell can't get rid of Proxy (yet)

@rae: Why Haskell can't get rid of Proxy (yet)

Richard Eisenberg explores why we need the Proxy

@rae: How to sneak an access to the type-checker from Template Haskell

@rae: How to sneak an access to the type-checker from Template Haskell

This video demonstrates a way to access the full

@rae: Removing (/=) from the Eq type class

@rae: Removing (/=) from the Eq type class

I explain a recent accepted proposal to remove (/=) from the Eq

@rae: GHC defaults type representations at pretty arbitrary places

@rae: GHC defaults type representations at pretty arbitrary places

Spurred on by https://gitlab.

@rae: Fake injective type families are hard to type check

@rae: Fake injective type families are hard to type check

I explore a challenging

Haskell: What You Need To Know To Get Started

Haskell: What You Need To Know To Get Started

Welcome to this beginners tutorial of

Testing Failure with Either Instead of Exceptions

Testing Failure with Either Instead of Exceptions

Testing the failure cases of code is often as important as testing the successful paths. The Pandoc filter we worked on in the ...

@rae: How to use record-update syntax in Haskell (+ some dark corners)

@rae: How to use record-update syntax in Haskell (+ some dark corners)

I introduce

Optionals and errors in Haskell & Rust - Monads by example

Optionals and errors in Haskell & Rust - Monads by example

Previous video: https://youtu.be/fcFDKY8pylo Code: https://github.com/contextfreecode/boolerr Thanks much to Karidia Konaté for ...