Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    E

    Eelis

    eelis.net · Personal blog · on HN since 2012

    Eelis is a C++ programmer who writes about language tricks and maintains an HTML build of the C++ draft standard.

    Visit blogHN submissions
    Languages & CompilersProgramming
    What HN says

    HN commenters repeatedly cite his multi-dimensional analog literals as one of the most magnificent abuses of C++ operator overloading, and link his standard draft.

    Stats for nerds
    20HN people shared it
    7linked in comments
    107story points
    Mar 2024last shared
    2012people per year2024

    Top posts on HN

    1. 1
      Multi-Dimensional Analog Literals
      15 people · 107 points · first shared 2012 · 8 comments on HN
    2. 2
      Geordi
      3 people · first shared 2015
    3. 3
      C draft
      1 person · first shared 2017
    4. 4
      Robots
      1 person · first shared 2015

    What HN people wrote when they linked it

    • zokierOct 2014

      Somehow I'm reminded of "Multi-Dimensional Analog Literals" project for C++:

      assert( ( o-------------o
      |L \
      | L \
      | L \
      | o-------------o
      | ! !
      ! ! !
      o | !
      L | !
      L | !
      L| !
      o-------------o ).volume == ( o-------------o
      | !
      ! !
      ! !
      o-------------o ).area * int(I-------------I) );

      http://www.eelis.net/C++/analogliterals.xhtml

    • SomeoneMar 2019

      Reminded me of http://www.eelis.net/C++/analogliterals.xhtml, which starts with

      unsigned int a = 4;
      unsigned int b = I---------I;
      assert( a == b );

      Moves on to 2D:

      unsigned int c = ( o-----o
      | !
      ! !
      ! !
      o-----o ).area;

      assert( c == (I-----I) * (I-------I) );

      and puts the cherry on the cake with 3D literals:

      assert( top( o-------o
      |L \
      | L \
      | o-------o
      | ! !
      ! ! !
      o | !
      L | !
      L| !
      o-------o ) == ( o-------o
      | !
      ! !
      o-------o ) );

    • TeMPOraLJul 2017

      Also, never forget, the C++ Multi-Dimensional Analog Literals:

      assert( ( o-------------o
      |L \
      | L \
      | L \
      | o-------------o
      | ! !
      ! ! !
      o | !
      L | !
      L | !
      L| !
      o-------------o ).volume == ( o-------------o
      | !
      ! !
      ! !
      o-------------o ).area * int(I-------------I) );

      http://www.eelis.net/C++/analogliterals.xhtml

    • jordighApr 2015

      <Eelis> i could implement a "geordi, fix my code" command, and
      still most people would remember me for those cursed analog
      literals.

      geordi is an IRC C++ bot that Eelis made in Haskell. It parses and runs C++:

      http://www.eelis.net/geordi/

      Since it actually can parse C++, it can be given C++ editing commands, although you have to know the C++ grammar in order to give it those commands.

    • vinkelhakeApr 2015

      Eelis has also written the IRC bot geordi. The bot "evaluates" C++ snippets by compiling them with GCC (or clang), executing the resulting binary in a sandbox and pipes the output back to IRC. It's heavily used in C++ channels on multiple IRC networks.

      http://www.eelis.net/geordi

    • gpderettaOct 2022

      We do not have yet three dimensional white space overloading unfortunately, will have to wait for the next release train, targeting C++26.

      In the meantime, you can use multidimensional analog literals: http://www.eelis.net/C++/analogliterals.xhtml

    Related

    ThePhDthephd.dev112 people

    Embed is in C23

    ThePhD
    Personal · last shared 2026
    C++ Truthscpptruths.blogspot.com17 people

    Covariance and Contravariance in C++ Standard Library

    C++ Truths
    Personal · last shared 2019
    Dorian Taylordoriantaylor.com30 people

    Agile as Trauma

    Dorian Taylor
    Personal · last shared 2025
    Kenny Tiltonsmuglispweeny.blogspot.com29 people

    Ooh Ooh My Turn Why Lisp? (2008)

    Kenny Tilton
    Personal · last shared 2021
    Edward Z. Yangblog.ezyang.com165 people

    PyTorch Internals: Ezyang's Blog

    Edward Z. Yang
    Personal · last shared 2026
    BabelStonebabelstone.co.uk20 people

    Unicode 15.0 Slide Show

    BabelStone
    Personal · last shared 2025
    Bret Victorworrydream.com936 people

    A brief rant on the future of interaction design (2011)

    Bret Victor
    Personal · last shared 2026
    Lambda the Ultimatelambda-the-ultimate.org615 people

    Simon Peyton Jones Elected into the Royal Society Fellowship

    Lambda the Ultimate
    Publication · last shared 2026