Skip to content
0:00 / 0:00

#nesemulator#typefamilies#datakinds

An NES Emulator in Haskell

Tea Leaves

9K subscribers • 4 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.

Advanced. Deep dive for people who know the field.

1K views5 months ago1 recommendation

Programming languagesSystems programmingHaskellRetro computing

The creator explains how using Haskell's Type Families and DataKinds facilitated building a working NES emulator and managing save states.

What if I took the chocolate of EmuDevz and mushed it into the peanut butter of Haskell? It turns out it tastes delicious. I talk a bit about my experience building a working NES emulator in Haskell. What I really want to call out here is how insanely great using Type Families and DataKinds was for doing the save state. I literally cannot believe how well it worked. It allowed me to keep the code compiling even while in the middle of what was a very complex migration. I'm not sure that would have been possible in most other languages. Image: Die Schachspieler (1831) by Friedrich August Moritz Retzsch.

Why it's here

1 person recommends this

What people say. Recommended for its practical demonstration of using advanced Haskell type-level programming to solve real-world emulator design challenges.

u/peterb12in r/haskell • Recommends

An NES Emulator in Haskell What if I took the chocolate of EmuDevz and mushed it into the peanut butter of Haskell? It turns out it tastes delicious. I talk a bit about my experience building a working NES emulator in Haskell. Image: Die Schachspieler (1831) by Friedrich August Moritz Retzsch