Hacker News new | past | comments | ask | show | jobs | submit login
If programming languages were religions (aegisub.net)
131 points by imgabe on Dec 16, 2008 | hide | past | favorite | 108 comments



He left out assembly languages which are really unrelated tribal religions characterized by primitive belief systems and rites of passage such as killing a lion, hanging by your thumbs, full body tattoos, or living alone in a cave for a month. I know. I passed my trial. I am a real man.


No - assembly language is the perennial philosophy uniting the mystics of all religions.


That does not contradict. By the way, lambda calculus and post's correspondence system underlie..


I feel the omission of smalltalk is just further evidence of it's true strength considering it inspired so many of the attributes of the other religions yet still persists unknown to the masses as the true religion with no religion behind all religion.


I was going to make a comment about ALGOL being zoroastrianism, but your smalltalk comment will suffice.


If C is Judaism then Smalltalk is Jesus and Objective-C is Orthodox Christianity.


amen brother


"Lisp would be Zen Buddhism" & "Python would be Humanism"

I feel strangely peaceful.


As soon as I saw the title, I knew Lisp would be Zen. I don't think that takes any thought -- regardless of their actual qualities, they have the same mystique.


I had a slightly different take on it: Scheme as Zen, and CL as Tibetan Buddhism, which has added deities and other more complicated theology back into Buddhism, sort of like the complexity of CL.


And Arc would be Zn Bdsm: basically the same as Zen Buddhism, only more terse.


>Bdsm

And a little perverse.


No, Arc would be the short-lived personality cult of a popular Guru.


Actually I'm more inclined to believe that Forth is Zen Buddhism for the following reasons:

* Syntax is an illusion, created by our own subjective definitions of words.

* All suffering (stack management trouble) is caused by the desire for and attachment to the worldly concept of variables.


Summary:

"I have never written more than 10 lines of code in any language."


Terse programs are a worthy goal.


Terse no, absolutely not. Concise should be the goal.


OK. Mixed up the words. Should practise my english some more.


Ah, enough people say programming languages should be terse that I thought that's exactly what you meant.

Concise is clear and short, terse is less characters but unreadable.


Actually, they are religions! Didn't you know?


My religion changes after work.

That makes me think of the jews who live in Saudi Arabia and know enough of the Coran to pass as muslims.

Java would be islam then. No wonder it sounds indonesian.


Some people tend to see it as a meme. It's not THAT far from a religion. Except, i didn't see any C++ programmer kill in the name of Bjarne Stroustrup...Yet.


(They do...but they're careful to hide the bodies.)


Isn't that what happens when you write (poor) safety critical software in C++?


Yep, ASM is the one true path that directly interfaces you with the underlying messy reality, but is only truly understood by a few arcane practitioners.

Aka it's Quantum Mechanics ;)


I think ASM would be Atheism


Aha! It is a religion!


Is not playing sports a sport?


Atheism is something like a religion Perhaps agnosticism is the none-religion.


What about Apathy?


There's a group that practises a stronger version of Agnosticism. They say "We don't know, and it does not matter. (But it matters that it does not matter.)"


Sorry, but designing CPU hardware is really quantum mechanics, both in your analogy and in reality.


No, hardware is reality, QM is still an abstract representation that seems to work if you ignore the bugs.


Consciousness is a bug.


? I meant QM not including General Relativity etc. I think this joke has been stretched way past the breaking point but what did you mean?


stretched way past the breaking point but what did you mean?

http://www.boingboing.net/2008/12/15/today-on-offworld-13.ht...



Especially if you can use them to create a friendly AI singularity.


Visual Basic would be Satanism - Except that you don't REALLY need to sell your soul to be a Satanist...

Dim! Yuck.


That reminds me of the one about the dyslexic devil-worshipper who sold his soul to Santa.


There is some truth to that statement.


Saw that exact comment on Reddit. Make of that what you will.


This will go down as a classic piece of programming humor.


What does that make javascript then?


Javascript would be some kind of new-agey pop religion.

It looks at first like Christianity or Judaism, but it somehow brings in funky zen concepts like lambdas and prototype chains. No one really took it seriously, then one day, it was just everywhere. No two implementations are quite the same, and most people do it horribly.


So, Astrology?


Maybe… disclaimer: I'm a professional javascripter

1. Everyone knows it a little, but few actually use it for much, and hardly anyone really understands it.

2. A lot of the ideas came out of old tribal warfare, and was only standardized relatively recently.

3. People who do it full time are WAY overpaid. ;)


does anyone really do javascript fulltime...? It sounds to me like doing CSS fulltime. Or writing XML configuration files for a living. Or something...


Astrology.


You'd think from the name that it's like Java, which is analogous to Judaism, but it really has nothing to do with Java. Maybe Madonna-style pop Kabala?


Hm, JavaScript is in fact a nice little Scheme with a cute little object system originating from Self with an ugly, ugly, ugly C-like/Javaish syntax and some dark, horrible secrets (like an asymmetric, atransitive `=='). Moreover, a lot of people use it, but not so many understand it...

My guess is that JavaScript is Zensunni: http://en.wikipedia.org/wiki/Zensunni#Zensunni.


Deepak Chopra.


Gnosticism


The bit about Judaism and C reminds me of http://www.lysator.liu.se/c/ten-commandments.html


Commandment 8 reminds me of the Brace Wars in C and the Indent 4 vs Indent 8 camps. Those who dislike Python's significant white space haven't seen real bloodshed.


"Ruby - A mixture of different languages and ideas that was beaten together into something that might be identified as a language."

Is that really true? I've never heard anything like that about Ruby. It does, however, sound very much like PHP. From the PHP FAQs:

"Much of [PHP's] syntax is borrowed from C, Java and Perl with a couple of unique PHP-specific features thrown in."


You could make the case. To me, Ruby looks like a strange hybrid of Python, SmallTalk, and Perl.


This makes Ruby sound far more attractive than it really is to me.


What would you change about it?


Well, when I hear that something is a mix of a bunch of other things, I tend to picture the best about those things.

So if Ruby had:

    * The clarity of Python
    * As well as the batteries-includedness of Python
    * With the flexibility of Perl
    * As well as a library managed as well as CPAN
    * With the tooling of Smalltalk
    * But without the weird VM business
Then Ruby would be much more attractive to me. I'm not saying there's anything wrong with Ruby, it's a fine language. I'm just saying that I hear those three things and I picture some sort of uber-language.


I find python's clarity lacking in comparison to ruby, at least in terms of making classes and iterators. Why are all those underscores really necessary?

No mention on your other points here because I either agree or don't have an experienced opinion on the matter.


Speed


Ruby is Smalltalk with Perl syntax.


...then this photo proves that Dick Pick must have been the Messiah:

http://jes.com/gfx/people/csn_1983_11_28_antigrav_dick_001.j...

(Sure don't mean to offend anyone, just a silly hacker joke.)


Also does this make the jvm and or parrot like one of those weird new-age "all paths lead to the sun" sort of religions where "anything goes"/syntax so long as it involves some rough idea of a god/bytecode?


Dumb article. Judaism and C are about as opposite as you can get. Judaism's texts (the bible and the Talmud) are famously convoluted, contradictory, debated, etc. C is one of the cleanest languages.


"Judaism's texts (the bible and the Talmud) are famously convoluted, contradictory, debated, etc." that sounds like C's type system to me. Is that a char or a number? A pointer or a number? etc.


  int a; //This is a number
  char b; //This is a char.
  void * c; //This is a pointer.
  x=*((int*)a); //This is a void pointer cast to a number.


The [edit] link disappeared on me, or I would just correct the last 'a' to a 'c'.


Ultimately everything's a number in a computer, so this is not something only in C. It's just C's low-level nature.


Computers are so good at simulating numbers, they sometimes fool us into believing that they are made of the stuff.


And, Taoism is more like Forth.


Yes, Haskell may be Platonism where ideas are more real than the messy world we live in.


You can convert into Judaism.


I wouldn't recommend it.


Tried?


Yup


well. someone doesn't like Perl.

Sheesh!


I fear you underestimate the number of people who dislike Perl.


Yeah, Perl sucks. Instead of making me rewrite libraries, I have to actually work on the problem I want to solve, 'cause the libraries already work. I hate being productive!!1!


Using the words PERL and productive without a not qualifier in the same sentence opens up some sort of alternate universe time warp that is so dangerous it should be avoided at all costs.


If you don't think Perl is a productive language, then you have never been a UNIX system administrator.


If you do think Perl is a productive language then you (a) are a unix system administrator and/or (b) have never used a truly productive language.


I have never been a system administrator, but I still find perl productive.


The irony of that statement is creating a vortex of it's own. ;-)


Irony...like rain on your wedding day? Or maybe a traffic jam when you're already late?

I'm not sure you and I are working with the same definition of irony here. You don't like Perl, that we understand. But if you can honestly say you believe that Perl is not among the most productive, if not the most productive, glue languages for use in UNIX system administration tasks...then, well, I don't know what to say. One can't really have a rational discussion with someone who is that far off the map.


I merely don't misinterpret lack of understanding as dislike.


He was actually pretty nice to perl (even went as far as to say you will have to use it). What exactly would he have had to say for you not to be offended? Say it's as readable as Python? It isn't.


I've read many analyses of languages: their pros and cons, how much better I would think if I used them, how much more efficient I would be if I used them, how much cooler I would be if I used them.

But nothing was enough to convince to change. Until this. Fundamentalist Christianity. Well, goddamn.

How can I distribute desktop apps in Lisp? :)


Use Factor, the postfix Lisp.


Excellent. Thanks!


"Haskell would be Taoism - It is so different from other languages [...]"

I do not get it. Haskell is very similar to other languages, take Clean for example.


You can convert to Judaism http://en.wikipedia.org/wiki/Ger_tzedek


I enjoyed this article. However I find it important to note that buddhism and taoism are philosophies and not religions.


I think people saying things like that are taken into account.


You mean they aren't already?


IF???


his comments on C are completely unfounded. C's type coercion means you can ram all sorts of things into places they aren't supposed to go. typecasting says to me that there is nothing orthodox about C at all. if anything it is modern protestantism, a faith that lets you ram in whatever you want, but one wrong move and you go to hell (segfault)


If hell is segfault, then Heaven must be a memory leak?


Heaven is where C programmers go when they move to C++ and discover shared_ptr.


Where do C++ programmers go when the move to Java and discover garbage collection?


To the second level. Where do you think they go when they move over to Python/Ruby/whatever and find out dynamic typing?

ask Dante Alighieri...


return(1);


i'm always wondering why people feel the need to dress up the return keyword as a function.


I don't understand how anyone can be against us Pastafarians/Lolcoders!!! What is wrong with everyone? Just because I write legibly does not mean that I don't want my code to tell me that its in my pants waiting for input!

And obviously you all have not been blessed by his noodly appendages, but I shall not go and spread our sacred gospel, he shall come and touch you with his noodliness and you shall instantly convert.


PHP would be Cafeteria Christianity ... whole concept of "goto hell" was abandoned.

And here I would consider PHP the defintion of going to hell :)


[deleted]


As the original poster stated, please don't kill me if you are offended. Its aim was humor.

Bit of a tangent, but I never understand why people say this. Don't they know that humor is one of the most potent weapons? If someone is offended, will they be less offended that they are regarded as laughable?

(Tangent to the tangent - this reminds me a little of Jon Stewart hiding behind "But I'm only a comedian" every time someone wants to talk about the politics in his satire. I happen to like his satire a lot and have no particular objection to his politics, but this is just disingenuous.)


Merry Christmas.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: