DISQUS

Developer On Line: If Philosophers Were Programmers

  • Aufgehaben · 8 months ago
    LISP is the language of Nietzsche, one must be an übermensch or it drives you insane.
  • Chaostaco · 8 months ago
    No, no, no. Nietzsche is Whitespace, the only language that uses no ink when printed.
  • Turiddu · 8 months ago
    Can't find a Ruby one ;)
  • Xeno · 8 months ago
    Thats cause Ruby is a religion... not a philosophy.
  • Lasantha Kularatne · 8 months ago
    This is fascinating stuff. What do you think about Einstein? Big Grid Super Computer Guru???
  • Just Twitting · 8 months ago
    Einstein must be Prolog -- one succinct, impenetrable statement and all else follows ...
  • Zoran Rilak · 8 months ago
    I just skimmed the article, don't have the time to read it in its entirety at the moment, but seems very interesting. However:

    "Java was the first strongly-typed language..."

    What? :) This is so not true. I am not sure which language would be called the first strongly-typed one, but aside the fact that we can compare "strengths" of type systems, surely one mustn't overlook Pascal nor indeed Modula-2, which came to be almost two decades before Java and was as stringent in type checking (everything had to be explicitly cast save for certain obviously compatible types, and then only in one direction: adding BYTE to CARDINAL for ex.) as they come.
  • GrumpyOldFart · 8 months ago
    ALGOL (not C), and Simula (not C++), and not even close on Java.

    You know a little more about philosophers than I do, but hell's bells, learn some language history before you spout off. Just because a language was successful doesn't mean it was first.
  • Charlie · 8 months ago
    I'm sure there are were plenty of obscure philosophers who never quite made it into the big time before Socrates and Aristotle made the scene. Panefsky does appear to be more Stoic than Kantian in his analysis.
  • jesse · 8 months ago
    When you say "the first language that...", in at least two cases you have not done enough research! ;-P

    However, thanks for the laughs! :)
  • Ben White · 8 months ago
    I think I would disagree with Descartes being Java. "I think therefore I am" reminds me of a Duck Typed language like ruby.
  • waaalrus · 8 months ago
    I say Hegel is Lisp, Husserl is Prolog.
  • Cory · 8 months ago
    C++ wasn't the first language to support the object-oriented paradigm, nor was Java the first strongly-typed language. Simula was the first "object oriented language, and Bjorn Stroustrup doesn't try to hide the fact that he borrowed many conventions from Simula when he was designing C with Classes (which went on to become C++). There were MANY strongly-typed languages before Java, going all the way back to FORTRAN, which is generally regarded as the first high-level programming language.
  • sep332 · 8 months ago
    His name is Bjarne, not Bjorn.
  • Nermlq · 8 months ago
    Huh... Of course, although not recognized as a great philosopher, Ceasar's invention of the first modern programming language ought be recognized, as well as his early differentiation between I/O, data structures, and algorithms. You remember:

    Algol is divided into three parts
  • Michael · 8 months ago
    And let's not forget Caesar's creation of the "divide and conquer" algorithm design paradigm either.
  • Jonadab · 8 months ago
    So, who is Threaded Intercal?
  • tocomment · 8 months ago
    cute
  • ALPSMAC · 8 months ago
    So how about SmallTalk (my language of choice)? Who's the SmallTalk philosopher?
  • Charlie · 8 months ago
    Bill Kerr?
  • Jochen L. Leidner · 8 months ago
    Heidegger is *so* APL...
  • Fred · 8 months ago
    Seconded.
  • Leandro Lima · 8 months ago
    Amazing blurb! Thank you.
  • odonata · 8 months ago
    If Smalltalk is your language of choice, learn to spell it correctly.
  • Xeno · 8 months ago
    typo correction is the last refuge of the sophists. (IE Visual basic)
  • Ali · 8 months ago
    Very fascinating !
    What about meta-programming : grammar, metamodels, DTD, schema ?
  • darja · 8 months ago
    Cthulhu has a tentacle in everything, is ugly, and while he is accessible to the populace, he is actually a monster controlled by no one. .NET ?
  • John · 8 months ago
    BRILLIANT. That one resonates with me most on this page.
  • panefsky · 8 months ago
    wow, we got slashdotted!
    It is indeed an intriguing subject.

    Please be merciful: it is impossible to cover all languages or philosophies, and be 100% correct at the same time.

    Thank you guys for your comments. :)
  • Manny · 8 months ago
    I propose Charles Manson = Could'a been a BASIC programmer. Given that early BASIC was such an unstructured language yet easy to learn and prone to 10,000 lines of undocumented codes with GOSUBs within GOSUBs could lead to such a mess of reason and logic could cause one to have a state of mind like, well, Charles Manson.
  • Mike · 8 months ago
    I was going to suggest Kurt Gödel for Prolog, but it turns out there's already a programming language named after him.

    http://en.wikipedia.org/wiki/Gödel_(programming...)
  • Mike · 8 months ago
  • x · 8 months ago
  • x · 8 months ago
    Dang. I see what went wrong- paste the close paren at the end of the URL
  • D · 8 months ago
    LOL I love it! As a philosophy B.A. and a developer, I have to agree with you. I think of development as applied philosophy.
  • physdave · 8 months ago
    Impressive list, save for one egregious omission: Fortran, which is embodied by the modern physicist-philospher David Mermin. Much more concise than his forebears, he said simply, "Shut up and calculate!".
  • erob · 8 months ago
    Fine and relaxing article, thank you.

    As a side note, where would you put Hegel and Heidegger in ?

    Regards,

    - erob
  • Chris Haseman · 8 months ago
    Just had time to skim your article. Good stuff. Coming from someone with a degree in both Philosophy and Comp Sci the crossover is pretty heavy. Programming is nothing more than formal logic with a different vocabulary. You start with the premises (parameters) and arrive at a conclusion (return statement) Along the way one uses a series of boolean logic statements to turn the premises into the desired conclusion.
  • ranjix · 8 months ago
    programming is nothing more than formal logic with a different vocabulary??? wtf, I wished I were able to dismiss a degree in CS with the same kind of blanket generalization. while there are some ties between programming and philosophy (same way there are ties between everything and everything else), I could say that what's the most obvious resemblance is the interest in "meta" and "philo". otherwise the philosophy is the interest in things, and programming is the interest in modeling the things in a computable manner (so maybe I am able of blanket generalizations :) )
    anyway, maybe I'm the only one here that considers the post utter crap. sorry, have fun
  • alex · 8 months ago
    For everyone who os confused how "TIMTOADY" is short for "There is more than one way to do it". Well the acronym is of course "TIMTOWTDI" (or loose the first "i" if you start with "there's more..."). "TIMTOADY" is the conventional way of pronounciation, see http://en.wikipedia.org/wiki/There_is_more_than...
  • Filosophi · 8 months ago
    How ignorant! No LISP! No Fortran! What about Ada! Smalltalk???? Pfffffft!
  • Bill Zimmerly · 8 months ago
    FORTH is the language of unapologetic freedom. It can reach down to the metal just like assembler and can extend to the unlimited heights that only languages like LISP can attain to. Yes, FORTH is more a religion than a philosophy, for, "In the beginning was the WORD ... and the WORD was God!" :)
  • Charlie · 8 months ago
    It has been determined that using the Socratic method to wrest requirements from your end users will get you very good requirements and will make your end-users think you are an arrogant pig. Fortunately for us the requirements committee doesn't know where the hemlock is kept.
  • Lehooo · 8 months ago
    Ha ha! That was the best comment so far!
  • Just Twitting · 8 months ago
    Plato must be a C# programmer, not C++ -- I can't imagine working with the ideal form of things without a language that supports interfaces as first class entities ...
  • Hello · 8 months ago
    Interfaces are a hack to get around not having multiple inheritance. Hardly ideal.
  • Arjan Drieman · 8 months ago
    Hi!

    I'm glad to see your article. I already saw some of these connections myself. I got really interested in philosphy, years after I learned how to design a relational databases and did some OO programming.

    I noticed that the way you put stuff into a relational database or describe objects (is-a, has-a, can-a) is what Imannuel Kant brought us. Thank you Kant! People read his work, thought about it, wrote about it, other people read that, thought about it, perhaps read Kant themselves, talked about it... and then centuries later all this Kant thinking made its way into our culture and someone creates a programming language or rdbms...

    It all makes sense! Who I am is what I think, what I feel, what I do, and in that order. Psychology teaches us that we're Thought->Feeling->Action. It has been proven time and time again. It's only logical that the great thinkers of times have contributed so much to our cultural evolution. Culture is an evolution of ideas!

    Thanks for your article...!
  • korch · 8 months ago
    I propose Derrida as BrainFuck, Schopenhauer as Ruby, and Javascript as Pierce.
  • oh really now · 8 months ago
    I don't think I have experienced such an immense disappointment with an article for a long time. Philosophy is to programming languages as philosophy is to everything: A way to understand something on a higher level. This article, on the other hand, makes a mockery out of philosophy itself. Truly, the author is a poor abstractor with a ridiculously unintuitive - straight out buck-ugly - concept of philosophy.

    Or to summarize: No zen to be found in this article.
  • Andrew · 8 months ago
    I'm sorry but I have to agree. I studied philosophy and now comp sci and this is a pretty superficial review of both areas that does justice to neither.

    To the author: respect for the effort involved but this doesn't cut it. Maybe think about it more and issue a second draft?

    To myself: could I do any better? It would be fun to try but I don't feel like I could do this justice anytime before my 40th birthday.
  • Stalyn8 · 8 months ago
    nice.
  • Jonathan Aquino · 8 months ago
    Interestingly, the OO concepts of class and instance can be helpful in understanding Aristotle's work "Categories". His 2x2 matrix of in-a-subject / not-in-a-subject / of-a-subject / not-of-a-subject maps to containee / container / class / instance.

    So a primary substance is a container instance!
  • AlexLibman · 8 months ago
    This is the most retarded piece of drivel in the history of the Internet!

    I agree on Socrates and Aristotle. Plato should be Algol or Cobol. Kant should at best be associated with BrainF*ck, or some other useless nonsensical irrational joke of a programming language. Even that would be a greater honor than he deserves!

    Python should in fact be associated with the very opposite philosophy, and the greatest philosopher of the twentieth century: Ayn Rand. Python is clearly something Howard Roark would design: clean, rational, and brilliant.
  • Doro · 8 months ago
    How about Sartre? Where does he fit in?
  • Yeahright · 8 months ago
    Ayn Rand is a second-rate novelist and a third-rate philosopher. I give her Visual Basic---it's simplistic and idiotic, but has legions of followers who don't know any better.
  • jlmccreery · 8 months ago
    Not sure how philosophers will react, but this is a wonderful romp.
  • Obnoxio The Clown · 8 months ago
    What language supports the "you start coding, I'll go find out what they want" paradigm?
  • Robert · 8 months ago
    ART, KEE, Knowledge Craft...
  • deemery · 8 months ago
    How Politically Correct!
  • msbpodcast · 8 months ago
    But Wittgenstein would be the first Smalltalk programmer
  • Rambo Tribble · 8 months ago
    Are to we forget George Boole, who is often credited as both mathematician and philosopher? Machine language, of course.
  • BIll · 8 months ago
    Ok, first off, this post is great. I was a CS & Philosophy double major in college, and I think it was just this sort of overlap between capturing ideas in code and capturing them in discourse (classes, ideals, intention vs. communication, "language of thought" and such) that really kept me going.

    BUT:

    "Christianism" -> Christianity
    "there is more than one way to do it" does not acronym as "TIMTOADY", but as "TIMTOWTDI"
    "triumphly" -> triumphantly
    "deducts" -> deduces
  • cataklysm · 8 months ago
    What philosopher would brainfuck be matched to?
  • Lacan · 8 months ago
    Any French posmodernist.
  • Ernst · 8 months ago
    C++ is certainly *not* "fully" backwards compatible with C.
  • Brian Killian · 8 months ago
    Pascal is one of the few programming languages actually named after a philosopher. Blaise Pascal.
  • hyposave · 8 months ago
    What no philosopher for PHP?!
  • romeo.macapobre@gmail.com · 8 months ago
    PHP is lot like C ..
  • name · 8 months ago
    Quine = Lisp
  • Fabricio · 8 months ago
    What about Tcl/Tk? Who would be the philosopher with ideas such as "everything is a string", graphical "hello world"s in two lines, a 12 rules syntax and you´re done?
  • Ícaro Mttpedeiros · 8 months ago
    Great post. I have translated to portuguese to show to friends:

    http://kirux.wordpress.com/

    ;)
  • 0x69 · 2 months ago
    Philosophy indeed has relations to science disciplines, as for example Alchemy to Chemistry OR Astrology to Astronomy and etc. But I suggest that relation Philosophy to Programming is very weak. This is because that relation is indirect,- something like ->
    Philosophy To Mathematics To Programming.
    Otherwise article is interesting & fun.
  • www.supportforums.net · 2 months ago