this post was submitted on 10 Sep 2025
281 points (98.0% liked)
Programmer Humor
26265 readers
719 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
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Where does that notation work?
Lisp uses it, with the fun extra part that operators are just normal functions - so instead of
foo(bar)
you get(foo bar)
, or for operators1+1+2
becomes(+ 1 1 2)
. It’s a really fun language even just for being different than most, I def recommend playing around with it if you’re looking for something new.The most interesting part about Lisp is homoiconicity:
(+ 1 1 2) is literally a list with symbol "+" and 3 numbers.
Which allows to build the most powerful macro possible, manipulating code (with data as a tree-like structures) and changing it into whatever else at compile time.
Now if only there was any good use for macros, this would be the best language 🙃
Threading is a great case for a macro.
(-> x (* 2) (/ 3) (- 1))
Is the same as
(- (/ (* x 2) 3) 1)
Sure it's not like it has no uses, but it's something languages have built-in as syntax sugar or operators, and you rarely need to built your own macro for anything.
What does it have to do with lisp?