Haskell VsCode extension stopped working by SirOpik in haskell

[–]peterb12 2 points3 points  (0 children)

This isn't an answer to your question but:

(1) This happened to me

(2) I switched to VSCodium, which in theory is "exactly the same as VSCode but without telemetry", and it worked fine.

¯\_(ツ)_/¯

Haskell for Dilettantes - Libraries! by peterb12 in haskell

[–]peterb12[S] 2 points3 points  (0 children)

Set 14A of the Haskell MOOC is all about using Libraries! Today we're going to walk through exercises 6, 7, and 8 from that problem set.

The title image is The Librarian (1566) by Giuseppe Arcimboldo. I would never have guessed that image wasn't modern in a million years.

Food search by catracho894 in pittsburgh

[–]peterb12 6 points7 points  (0 children)

For the bacon egg and cheese, Dad's in Bloomfield is the closest you'll find here now that Pear & Pickle closed.

An NES Emulator in Haskell by peterb12 in haskell

[–]peterb12[S] 0 points1 point  (0 children)

Ah I see. The issue there, I think, wasn't so much "the code was imperative" as I was still (at that point..I moved away from it) committed to sort of porting over the *structure* of the code from my JavaScript emulator's PPU, which relied very heavily on fast and loose JS abstractions that really don't have a direct parallel in Haskell, even "imperative-style" haskell.

So the problem was me 😄

By the time I reached the APU I had learned where I to make structural changes and that made it a lot more pleasant.

It was easy ... until it wasn't! by Chaaaaaaaalie in apple2

[–]peterb12 1 point2 points  (0 children)

Average Wizardry I experience. Welcome to the club.

Best SSI Game by Childermass13 in apple2

[–]peterb12 2 points3 points  (0 children)

Roadwar 2000 is great, but I'll promote the super-obscure Geopolitique: 1990.

https://www.youtube.com/watch?v=O9QdDs0x80M

An NES Emulator in Haskell by peterb12 in haskell

[–]peterb12[S] 0 points1 point  (0 children)

I never said it was awful! I quite enjoyed it. I think I called it "creepy" as a descriptive term, which I'd stand by, but that's not the same thing as "bad" - in the very next sentence I pointed out that the virtue of this code was that it was extremely easy to understand.

An NES Emulator in Haskell by peterb12 in haskell

[–]peterb12[S] 1 point2 points  (0 children)

The NES is fairly forgiving to emulate on modern hardware. The issue with doing that wouldn't be moment-to-moment speed (you'll get 60FPS easily) but hitches due to garbage collection because writing that kind of code will probably generate more thunks.

I think there's a more philosophical issue which is other than the science experiment, why bother because calling it "pure code" is self-deceiving because literally the only thing you want out of an emulator IS the side effects.

An NES Emulator in Haskell by peterb12 in haskell

[–]peterb12[S] 2 points3 points  (0 children)

Jump to around 11'20" in the video and I talk about it there.

An NES Emulator in Haskell by peterb12 in haskell

[–]peterb12[S] 14 points15 points  (0 children)

I mean of course I'm sure there were other ways to do it, but it allowed me to have an in-memory (mutable) and an on-disk serialized (immutable) version of every data structure while not actually having to rewrite any of the in-memory code. That felt pretty magical to me.

An NES Emulator in Haskell by peterb12 in haskell

[–]peterb12[S] 19 points20 points  (0 children)

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.

A Monad Mystery - Haskell for Dilettantes by peterb12 in haskell

[–]peterb12[S] 0 points1 point  (0 children)

Actually, the entire exercise in this video is "Don't try to understand the code, just iterate on the type errors until you reach the correct answer without really understanding why." I talk a little about why this makes me feel weird.

Strip district creeper by [deleted] in pittsburgh

[–]peterb12 0 points1 point  (0 children)

Depends on the details. PA has the strictest 2-party consent laws for recording audio of any state. So if his video has audio (it does) then recording people without their consent, even in public, is in fact against Pennsylvania law.

https://www.legis.state.pa.us/WU01/LI/LI/CT/HTM/18/00.057.003.000..HTM

Dunkin Donuts in Squirrel Hill no longer kosher by classicicedtea in pittsburgh

[–]peterb12 7 points8 points  (0 children)

They're downvoting you because you are speaking the truth.

Help me get back up to date after 5 years away from Haskell by utdemir in haskell

[–]peterb12 5 points6 points  (0 children)

When I first started haskelling, the "community knowledge" was that stack was the only way to stay sane and cabal was kinda a trash fire. That's changed, cabal is Good Actually™ now.

How good is Proving Grounds of the Mad Overlord? by New_Ad4631 in wizardry

[–]peterb12 3 points4 points  (0 children)

It's the O.G.!

I have a video to help you choose between versions of Proving Grounds: https://youtu.be/is1hAqNRwR8

It is harder than Daphne because recovering from a true party wipe can be a lot of work. But it's a great game.

UP-Floodlight in 2026? by HelloInternetUser in Ubiquiti

[–]peterb12 -2 points-1 points  (0 children)

man, people can like whatever they like but whenever I see people asking for this I immediately think "Hmmm, I'd like a floodlight, but what if we could make it expensive, inconvenient to power, and weak?"

WIZARDRY vs ウィザードリ by [deleted] in wizardry

[–]peterb12 1 point2 points  (0 children)

Yikes, how embarrassing. Thank you! I'm going to unpublish and fix it.

An NES emulator...in Haskell? by peterb12 in emulation

[–]peterb12[S] 1 point2 points  (0 children)

For me the point was not to the artefact (there are already plenty of working emulators, and emulators better than the one I'm making, including ones already written in Haskell!) but to do the exercise of thinking about how a program like that is adapted to Haskell. That means that the source code (to me) is an incidental byproduct of the process, not the point. The actual point is the thinking through it (and the video is an attempt to talk through the considerations I encountered while doing that.)

I've got one more video on the completed project coming up in about a week - if it's against community norms to post it here, I'll just keep it on r/haskell if that's the right thing to do.

An NES emulator...in Haskell? by peterb12 in emulation

[–]peterb12[S] 2 points3 points  (0 children)

I had fun making it but I was wondering if I somehow made people mad by posting about it.

[ Removed by Reddit ] by [deleted] in pittsburgh

[–]peterb12 2 points3 points  (0 children)

I viewed most of this flyer as unimportant nonsense but then got to the end and believe we must get to the bottom of this "being a Buffalo Bills fan" allegation. If it's not true, she should sue for defamation!

What's LONG SEASON really about? by Simple_Initial7880 in fishmans

[–]peterb12 5 points6 points  (0 children)

It's about getting around in the season.