this post was submitted on 25 Jul 2023
1055 points (98.2% liked)

Programmer Humor

19623 readers
114 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 42 points 1 year ago* (last edited 1 year ago) (2 children)

Haskell errors:

Iä! Iä! Cthulhu (b -> (a -> c)) -> (b -> (c -> c)) -> a fhtagn! Ph'nglui mglw'nfah [[a]] Cthulhu R'lyeh wgah'nagl fhtagn!

[45 lines of scopes]

Once you understand the type system really well and know which 90% of the error information to discard it's not so bad, I guess.

[–] [email protected] 8 points 1 year ago (1 children)

What about the fact it invades your dreams and slowly drives you insane?

[–] [email protected] 11 points 1 year ago* (last edited 1 year ago)

I literally had a type-theory themed stress dream a couple nights ago. I'll leave it up to you if that makes this less or more funny.

[–] marcos 3 points 1 year ago (1 children)

GHC messages are complete and precise, usually telling you everything you need to know to understand, find, and fix the error, that may not even be on the place it's actually detected.

It's also in an alien language. That's correct.

[–] [email protected] 3 points 1 year ago (1 children)

complete and precise

Exactly. It's a perfectly condensed yet totally complete readout of all the data you might need for debugging. It makes mathematicians everywhere proud.

If you don't actually need a complete set of information about possible exotic type choices just to see you put an infix in the wrong place that's basically not the compiler's problem.

(TBF, I wouldn't want to try and mindread the programmer in my compiler either, but then I am a maths person)

[–] marcos 2 points 1 year ago (1 children)

I dunno. That set of information about exotic type choices helps me very often. And I can always ignore it when it's not useful.

The bunch of "yes, compiled that module, everything is all right" messages in between them and warnings not surviving a second compilation bother me much more than the error messages. But learning to read the messages was not easy.

[–] [email protected] 1 points 1 year ago

And I can always ignore it when it’s not useful.

I did mention that right off the bat. I made it sound unreasonable for comedic purposes, but breaking the jerk I actually do really like Haskell, and Haskell error messages.