kleptos ([info]_kleptos_) wrote,
@ 2007-12-23 09:51:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Entry tags:language, perl, perl suck, programming

Larry is a fruit cake, a nut job, crazy as a loon, batty as a belfry.
Perl was created by Larry Wall. Smart guy. Has some broken mental models, but he’s smart.

Every language designer screws up now and then. No exceptions. Gosling says he got the precedence of some Java operators wrong. if (!(that’s instanceof Understatement)), I don’t know what is. McCarthy frets about all the parens in let clauses. As if those are the only ones to fret about. And Guido has been known to physically murder people who complain about Python’s syntactic whitespace.

Perl also has “contexts”, which means that you can’t trust a single line of Perl code that you ever read. Every operator in Perl (not just the Range operator) has six different behaviors depending on the invisible context in which its surrounding expression is being evaluated.

@x = (1, 2, 3, (4, 5));
It automagically turns into (1, 2, 3, 4, 5). Convenient, eh? Sure it is. If you want to be your own father’s sister, it’s extremely convenient.

It’s especially advantageous if you want to collapse the entire universe into a single electron, since that’s about all you can do with it.

Oops! Oh yeah, right. Trees. Graphs. Object models. Window systems. Company organizations. Relationships. Meaning and semantics. Heirarchical knowledge representation. Gosh. Forgot all about those. Whoops.

Like any well-designed system, Perl of course has hundreds of global variables. They’re typically two characters long, the first of which is a dollar-sign, and the second of which is either an ASCII character or a Unicode character. Changing the value of any one of these hundreds of variables changes the meaning of at least 10% of the lines of code in your code base. One can only speculate as to what $ξ does, or $葉 for that matter. I’m sure it’s in the docs somewhere.

I chatted with him afterwards about list flattening, and mentioned that it was the root of all evil. He was a bit taken aback, and said they weren’t planning on changing that feature. I read recently that they’ve decided to change it after all; you’ll have to set some godawful global variable, possibly dollar-unicode-chinese-horse-symbol, to turn on auto-list flattening.


Тут ещё много прекрасного.
Однозначный Эпик Вин.



(Post a new comment)


[info]bacek
2007-12-23 10:15 am UTC (link)
The rest is history. I went to the conference, along with some three thousand other geeks. It was fun. I loved Larry Wall's late-evening talk on Perl 6. He's quite the entertaining speaker. I even got a chance to talk to him that night at some party we were both invited to. I was embarrassed, for reasons you Perl folks will likely understand without explanation. I apologized. He graciously said it was no big deal. (Thanks, Larry. I can die in peace now. Or someday far from now, preferably.)


Стиви -- велик :)

(Reply to this)(Thread)


[info]_kleptos_
2007-12-23 10:31 pm UTC (link)
*натужно ищет в сорсе эту цитату и не находит.

(Reply to this)(Parent)(Thread)


[info]bacek
2007-12-23 10:35 pm UTC (link)
Сорс - 2004-го года. Цитата из 2007-го. Автор тот же :)

(Reply to this)(Parent)


[info]voldmar
2007-12-23 11:36 am UTC (link)
Ты пропустил момент, когда [info]vitus_wagner бил себя пяткой в грудь, доказывая, что Ларри — «архитектор»?

(Reply to this)(Thread)


[info]_kleptos_
2007-12-23 08:52 pm UTC (link)
пропустил, реквестирую соус.

(Reply to this)(Parent)(Thread)


[info]voldmar
2007-12-23 09:11 pm UTC (link)
http://vitus-wagner.livejournal.com/229858.html?thread=6698722#t6698722

Вроде нужный тред. Там ещё где-то были подобные перлы.

(Reply to this)(Parent)(Thread)


[info]_kleptos_
2007-12-24 06:48 am UTC (link)
Дедушко (витус) всегда был не слишком адекватным.

Всё-же из "советских инженеров" чаще всего получаються какие-то люди с напрочь перекоряженной системой ценностей и странными паттернами мышления.
Если они вылечиваються - чаще всего это уберлюди, но чаще всего нет.

(Reply to this)(Parent)


[info]bacek
2007-12-23 10:38 pm UTC (link)
"Perl 6 really is a pretty nice language design"

Тот же самый Steve Yegge в 2007 году. Неделю назад.

(Reply to this)(Parent)(Thread)

Дайте соус!
[info]_kleptos_
2007-12-24 06:50 am UTC (link)
линк всё-же интересно было-бы увидеть.

(Reply to this)(Parent)(Thread)

Re: Дайте соус!
[info]bacek
2007-12-24 10:06 am UTC (link)
http://steve-yegge.blogspot.com/2007/08/how-to-make-funny-talk-title-without.html

(Reply to this)(Parent)(Thread)

Re: Дайте соус!
[info]bacek
2007-12-24 10:09 am UTC (link)
Хотя здесь верхняя цитата. Про дизайн в соседнем сообщении.

(Reply to this)(Parent)


Create an Account
Forgot your login?
Login w/ OpenID
English • Español • Deutsch • Русский…