Perlisisms (1982)

cs.yale.edu

96 points by tosh 12 hours ago


isityettime - 8 hours ago

> A language that doesn't affect the way you think about programming, is not worth knowing.

This one stood out to me. I'd say it's a favorite.

These others are interesting in the age of LLMs:

> 93. When someone says "I want a programming language in which I need only say what I wish done," give him a lollipop.

> 114. Within a computer natural language is unnatural.

> 115. Most people find the concept of programming obvious, but the doing impossible.

> 27. Once you understand how to write a program get someone else to write it.

> 113. The only constructive theory connecting neuroscience and psychology will arise from the study of software.

This one remains worth thinking about in terms of the consequences and costs of automation and computerization, LLM-powered or not:

> 99. In man-machine symbiosis, it is man who must adjust: The machines can't.

rezmason - 9 hours ago

These are fun to say out loud in the voice of the Kai Lentit's Perl programmer

https://youtu.be/0jK0ytvjv-E?t=43

https://youtu.be/xE9W9Ghe4Jk?t=238

LelouBil - 10 hours ago

> A programming language is low level when its programs require attention to the irrelevant.

Great definition actually

chriscbr - 11 hours ago

Random self plug - I liked a lot of these quotes from Alan Perlis, so around a year ago I bought the domain https://perl.is/ to display them.

shawn_w - 8 hours ago

I read this as "Perlism" at first and got excited to see perl on HN.

dtagames - 12 hours ago

And in #27 we find the rationale behind all LLM coding agents, "Once you understand how a program works, get someone else to write it for you."

rpdillon - 8 hours ago

My favorite has always been:

> 31. Simplicity does not precede complexity, but follows it.

Kind of close to "build the first one to throw away".

ripe - 9 hours ago

> 102. One can't proceed from the informal to the formal by formal means.

Seems to be a strike against LLM-based programming systems like Claude.

jancsika - 10 hours ago

> 2. Functions delay binding; data structures induce binding. Moral: Structure data late in the programming process.

A good way to enforce this is to encrypt the data at the beginning of the process.

Then any function that returns structured data is clearly foolish and can be marked for removal.

sriram_malhar - 12 hours ago

This feels so quaint today. How I'd like to be back in that timeframe.

LelouBil - 10 hours ago

> Once you understand how to write a program get someone else to write it.

Pretty relevant with LLMs and coding agents.

jdw64 - 8 hours ago

In the long run every program becomes rococo - then rubble.

DonHopkins - 10 hours ago

>1. One man's constant is another man's variable.

Did you ever have one of those days when variables didn't and constants weren't?

tenderfault - 7 hours ago

76! Let’s do this!

- 6 hours ago
[deleted]