M
Mark Rushakoff
ozonehouse.com · Personal blog · on HN since 2009
Mark Rushakoff writes about programming, including the Periodic Table of Perl operators and Haskell.
What HN saysHN links his periodic table of Perl 6 operators in threads about Perl's many operators and in debates over periodic-table-style graphics.
18HN people shared it
13linked it in comments
6stories submitted
14story points
2 years agolast shared
2009people per year2026
Most-shared posts
- 1Periodic Table of Perl Operators17 people · 13 points · first shared 2009 · 1 comments on HN
- 2Haskell Amuse-Bouche1 people · 1 points · first shared 2014 · discussion on HN
- 3PeriodicTable.pdf1 people · first shared 2009
What HN people wrote when they linked it
amix · 2009-12-06
I will reference to Steve Yegge's rant on Perl. It has a lot of examples on Perl operators that are overloaded: http://steve.yegge.googlepages.com/ancient-languages-perl - - and how their man pages isn't a big help.
While other languages of course have their special syntax, Perl is very extreme in this regard. This is best illustrated by the following diagram of special Perl operators (where most of them are only found and used in Perl):
http://www.ozonehouse.com/mark/blog/code/PeriodicTable.pdf
iamwil · 2011-01-27
Because it's cargo culting. The periodic table looks the way it does because it's about the relationships between the different elements organized spatially on the page. Because of that, it also lets us predict elements we haven't discovered yet! Amazing!
There's really no reason that the relationship between typography, dessert, vegetables, google apis look anything like the relationship between the elements. If it did, we'd really be on to something!
But! If the relationships between google apis isn't at all like the elements, what would it look like? And even more interesting, if there are missing spaces, that means there are google apis not yet written that we can look forward to!
http://www.ozonehouse.com/mark/periodic/
Is an example where someone did a periodic table that tried to use space as a way to convey information about the relationship between the perl operators. Notice how it looks nothing like the PTofE. It has its own structure because the relationship between perl operators is different than the relationship between the elements.
Those of us that are sticklers about this feel so, probably because we find the beauty of the actual meaning behind the structure of the periodic table much much more interesting and beautiful than any joke you can make from it.
Sometimes, jokes are funny because they're the truth that no one wants to say. Like when Chris Rock says, "[When listening to your woman], you've always got to throw in 'told you that bitch crazy',…
hermitdev · 2025-04-22
Hey, at least Python is nowhere near Perl in terms of language creep. I don't need a Period Table of Operators [0] to keep Python straight in my head.
[0] https://www.ozonehouse.com/mark/periodic/
heikkilevanto · 2023-01-12
I guess someone has to mention the Periodic Table of Perl-6 operators: https://www.ozonehouse.com/mark/periodic/
dash2 · 2021-03-03
This. It reminded me of the Periodic Table of Perl 6 Operators, another "advert" that really isn't: https://www.ozonehouse.com/mark/periodic/
smitty1e · 2020-02-26
Operators for all my friends!
https://www.ozonehouse.com/mark/periodic/
kristiandupont · 2018-04-04
I really don't understand the need for the infix exponentiation operator. Maybe it's because I just don't do calculation heavy JS code but it seems like nothing but a clever little trick you can impress colleagues with. I would hate for JS to evolve towards needing something like https://www.ozonehouse.com/mark/periodic/
anon1385 · 2013-11-19
>it's an image that's been hard to get rid of.
Maybe because Perl 6 adds even more obscure and magical operators?
http://www.ozonehouse.com/mark/periodic/
slurgfest · 2012-12-18
I respect Perl and people who use it, but this is a telling cultural artifact: http://www.ozonehouse.com/mark/periodic/
I am not posting this to bag on Perl, but just to show its fingerprint. If you find that periodic table to be funny or cool then you are a lot more likely to be happy with Perl than if it makes you shudder.
nostrademons · 2011-01-27
OTOH, I think that the Periodic Table of Perl6 Operators is a work of art:
http://www.ozonehouse.com/mark/periodic/
Luyt · 2010-12-29
I find the 'Perl6 Periodic Table of the Operators' an intriguing poster. http://www.ozonehouse.com/mark/periodic/
jerf · 2009-11-09
Oh, it's way ahead on operator count. http://www.ozonehouse.com/mark/periodic/
andolanra · 2014-03-12
I'd assert that the "periodic table of types"[^1] radically overstates the complexity of the Rust type system, largely because of the rampant misuse of the "periodic table" as a means of presenting groups of things. A "periodic table" of (for example) food items or Perl operators tends to have a bunch of distinct elements in its cells arranged by loose groupings[^2], whereas the Rust periodic table (like the periodic table of elements, but unlike other pop-culture periodic tables) has cells whose contents are for the most part[^3] a function of their row and column.
Tabular nomenclature aside: Rust has values and two kinds of pointers, and a handful of built-in types, and you can have pointers to those types. While the semantics of the pointers are unusual, I don't think that makes it that much more complicated. It should also be noted that many of the proposed language changes make said table even more regular (e.g. replacing the [T] syntactic sugar for vectors with a more conventional Vec<T>.)
Rust is in some ways complicated, and I'll grant that a beginner to the language will likely curse the borrow-checker more than a few times. But I don't think Rust is nearly as complicated as it is sometimes reputed to be.
[^1]: http://cosmic.mearie.org/2014/01/periodic-table-of-rust-types/
[^2]: http://www.ozonehouse.com/mark/periodic/ is an egregious example.
[^3]: There are exceptions (e.g. the closure types) but they are few and easily memorized.