25 comments

[ 4.4 ms ] story [ 73.4 ms ] thread
That is one of my favourite articles. Ever.
Does anyone know what Yegge has been up to? I thought maybe he moved his blogging over to Google+ or something, but that hasn't been updated since 2012 either.

After his effusive praise for pre-Rails-fever Ruby in his initial foray with it, I've been extremely interested in what he thinks of it now, or how long he stuck with it.

edit: The link for convenience: http://steve-yegge.blogspot.com/2006/09/bloggers-block-4-rub...

I have to highly agree with Jeff Atwood's sentiment, in his explanation of why he was OK with using Ruby for Discourse:

http://blog.codinghorror.com/why-ruby/

Quoting Yegge:

For the most part, Ruby took Perl's string processing and Unix integration as-is, meaning the syntax is identical, and so right there, before anything else happens, you already have the Best of Perl. And that's a great start, especially if you don't take the Rest of Perl.

But then Matz took the best of list processing from Lisp, and the best of OO from Smalltalk and other languages, and the best of iterators from CLU, and pretty much the best of everything from everyone.

And he somehow made it all work together so well that you don't even notice that it has all that stuff. I learned Ruby faster than any other language, out of maybe 30 or 40 total; it took me about 3 days before I was more comfortable using Ruby than I was in Perl, after eight years of Perl hacking. It's so consistent that you start being able to guess how things will work, and you're right most of the time. It's beautiful. And fun. And practical.

He's been active on Twitter lately: https://twitter.com/Steve_Yegge
3 tweets this year is not what I would call active...
By that I meant, he has posted on Twitter in the last month, so at least that's a sign that he's probably still alive...
I'm still laughing over: 'The number zero is simply lambda(), and 1 is lambda(lambda()), 2 is lambda(lambda(lambda())), and so on. Every single Thing in this legendary region, be it noun, verb or otherwise, is constructed from the primal verb "lambda".'
Kind of similar how barbarians count in Terry Pratchett books. They only know three numbers: one, two and many. And counting is done like this: one, two, many, many one, many two, many many, many many one.....
Isn't it only trolls? Barbarians are too busy pillaging to count.
Yes, trolls, you are right!
Yeah, well, I wasn't precisely laughing when I saw it on my Formal Languages and Computability course...

Check Church numerals: https://en.wikipedia.org/wiki/Church_encoding

The reason I was laughing was because I could imagine it happening - know I know it's true I'm not sure how I feel about it.
It's a mathematical formalism for minimizing the number of distinct entities in minimalistic theories of numbers, and providing definitions of "number" that are as well-defined as possible, which turns out to be harder than it appears at first blush. In practice, it isn't generally directly used, except in places where proper facilities for using integers haven't yet been created (C++ templates at a certain point, some older Haskell type code before ints become promotable to the type level, etc). (And just to be clear, I'm not saying they've never been used in real code, but that it's a serious code smell to need to use them in real code. They get inefficient, fast; given that they're often showing up in type checking algorithms they can get inefficient superlinearly in their size.)
I vaguely remember that church numerals (or was it some other encoding ?) have been used to minimize conditional jumps in code. If someone is familiar with how that works, would love to hear.
> This story... is neither a story for the faint of heart nor for the critical of mouth. If you're easily offended, or prone to being a disagreeable knave in blog comments, please stop reading now.

That's a neat trick, limiting your blog post to people who won't be critical of it.

You ignored the most important word in the message when crafting your reply. Which, amusingly, means you're exactly the target of that message.
I'm honestly not sure which word you're referring to.
"Knave." In other words, he said "if you're just a combative jerk, stay away" but you managed to read it as "if you disagree, stay away".
Knave doesn't mean combative, it means deceitful (or servant/worker which I doubt he means here). The most important phrase in my reading is "critical of mouth."

Also, reading a paragraph wrong doesn't make a person a combative jerk. Nor does being critical.

No, but going out of your way to be offended certainly qualifies.