Skip to content
DevMeme
4008 of 7590
Languages Post #4364 · source on Telegram

The Brutal Honesty of Programming Language Evolution

Description

This meme uses the three-panel 'Tuxedo Winnie the Pooh' format to create a joke about the evolution of C-like programming languages. The first panel shows a standard, content Winnie the Pooh next to the C language logo, attributed to its creator, 'by Dennis Ritchie,' representing the classic and respected original. The second panel features Winnie the Pooh in a tuxedo, looking sophisticated, paired with the C++ logo and its creator, 'by Bjarne Stroustrup,' portraying C++ as the elegant, feature-rich successor. The third and final panel delivers the punchline: a distorted, grotesque-looking Pooh is shown next to a logo for 'C--' (C with two minus signs), attributed to 'by Simon Peyton Jones.' The humor is an inside joke for experienced developers. C-- is a real, C-like language, but it's not a general-purpose application language; it's a low-level intermediate language designed as a portable assembly for compilers, particularly for functional languages like Haskell (Simon Peyton Jones is a key figure in Haskell's development). The meme hilariously depicts C-- as a horrifying devolution, which is funny because it's so far removed from the high-level application development that most programmers are familiar with

Comments

8
Anonymous ★ Top Pick C walks so C++ can run. C-- crawls so Haskell can fly, but it's a crawl through the nine circles of register allocation hell
  1. Anonymous ★ Top Pick

    C walks so C++ can run. C-- crawls so Haskell can fly, but it's a crawl through the nine circles of register allocation hell

  2. Anonymous

    We spent 30 years arguing about pre- vs post-increment in C++; meanwhile Simon Peyton Jones quietly decremented twice, named it C--, and reminded us the only safe language is one you’re never meant to write by hand

  3. Anonymous

    C gave us segfaults, C++ gave us template metaprogramming nightmares, and C-- gave us a portable assembly language that somehow requires a PhD to understand why it's better than actual assembly

  4. Anonymous

    C-- looks like the punchline, but it quietly compiled your Haskell for years - the rare language whose name is a post-decrement and whose adoption was lazy-evaluated

  5. Anonymous

    The real joke here is that C-- isn't actually 'C minus features' - it's a legitimate portable assembly language used as a compiler intermediate representation. But try explaining to management why you're excited about a language that sounds like you're removing features from C. At least with C++ you could claim you were adding value; with C--, you're essentially admitting you want to get closer to the metal than even C allows, which is either deeply impressive or deeply concerning depending on whether you're the one debugging segfaults at 3 AM

  6. Anonymous

    C++ is a language; C-- is a threat model - if you’re writing it by hand, your code reviewer is the register allocator

  7. Anonymous

    C hands you raw power, C++ drowns you in templates, Haskell whispers 'purity' while your stack overflows laughing

  8. Anonymous

    C is a language, C++ is a lifestyle, and C-- is the IR your compiler writes when Simon Peyton Jones subtracts everything except calling conventions - humans need not apply

Use J and K for navigation