this post was submitted on 23 May 2024
265 points (91.5% liked)

Programmer Humor

19570 readers
1351 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
 

...from people who seem to refuse to install paredit or coloring plugins for either? ps lisp syntax ftw, it's a feature!

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 27 points 5 months ago* (last edited 5 months ago) (4 children)

I don't get why people hate semantic whitespace. The whitespace would be there anyway, and if anything it's easier to read as long as you avoid 15 nested if statements, and you're not using a dynamically typed abomination like python.

S-expressions are a hack because the Lisp devs didn't know how to make an actual compiler, and instead had the users write the syntax tree for them. (For legal reasons I am being facetious).

In all honesty, I can understand the reason people love s-expressions, but to me they're just unreadable at a glance.

[–] [email protected] 12 points 5 months ago (1 children)

S-expressions are a hack because the Lisp devs didn’t know how to make an actual compiler, and instead had the users write the syntax tree for them. (For legal reasons I am being facetious).

Just for anyone thinking you are serious; https://en.wikipedia.org/wiki/M-expression I love how S-expression existed.

McCarthy had planned to develop an automatic Lisp compiler (LISP 2) using M-expressions as the language syntax and S-expressions to describe the compiler's internal processes. Stephen B. Russell read the paper and suggested to him that S-expressions were a more convenient syntax. Although McCarthy disapproved of the idea, Russell and colleague Daniel J. Edwards hand-coded an interpreter program that could execute S-expressions.[2] This program was adopted by McCarthy's research group, establishing S-expressions as the dominant form of Lisp.

[–] [email protected] 1 points 5 months ago

And for anybody thinking of implementing M-expressions, look at Wolfram Mathematica, which is the only popular M-expression-oriented language. It turns out that high-level graph-rewriting semantics are difficult to make efficient! (If you want to try, you might also want to look at GHC or other efficient graph-rewriters to see what the state of the art is like outside Planet Wolfram.)

load more comments (2 replies)