u/Tarmenin r/haskell • Recommends
On “Sometimes functional Dependencies Don't”
If I recall correctly, this video explains this pretty confusing behavior really well link to this video
#haskell#ghc#functionaldependencies
5K subscribers • 25 videos on Hallway
Advanced. Deep dive for people who know the field.
1K views5 years ago1 recommendation
Programming languagesSystems programmingLanguage design and type systemsCompilers and interpreters
Richard Eisenberg demonstrates how a trick with functional dependencies can lead to runtime non-confluence in the GHC compiler.
It turns out that a clever trick from @arybczak allows us to suppress the liberal coverage condition of functional dependencies. Pushing the idea to its natural limit, I discover that we can witness runtime non-confluence in GHC. Put another way: I write a program in this video that changes its runtime behavior depending on what order I write constraints in a type. Original ticket: gitlab.haskell.org/ghc/ghc/-/issues/18759 Ticket about non-confluence: gitlab.haskell.org/ghc/ghc/-/issues/18851 Find me at richarde.dev/What people say. Recommended as a clear explanation of confusing behavior where GHC changes runtime behavior based on constraint order.
u/Tarmenin r/haskell • Recommends
On “Sometimes functional Dependencies Don't”