• Main Website
  • Other blogs: myPUBGUIDE
  • My Health
  • Ghost Pubs
  • Random
  • Archive
  • RSS
  • Ask a question

Carnotaurus on Development and more!

Class based JavaScript or not?

About a week ago, I reblogged a paper by Antero Taivalsaari under the title of Classes Versus Prototypes: Some Philosophical and Historical Observations. This was written in late 1997 and still has great relevance to programmers today. It has important implications for prototype languages, such as JavaScript, and the push to make these more class based (please read on).

Taivalsaari’s paper highlights that the class-based worldview (programmatic or otherwise) is Aristolean. Aristotle’s class-based worldview had two major flaws:

  1. He made the assumption that there is a universal taxonomy; and
  2. The “class” (perfect type) is more real than the “instance” (the concrete example of the type).

Both of these assumptions were challenged in later Wittgenstein’s work. Despite that much of what the later Wittgenstein wrote did not make much sense, it is surprising to find, in his Philosophical Investigations, an explanation of how nuanced the Aristolean picture is when he considers the meaning and definition of “game”. Due to these nuisances, Wittgenstein ended-up to opt for the idea of family resemblances or prototypes.

Taivalsaari claims that Aristotle is the conceptual father of class-based object-oriented programming, whereas the work of Wittgenstein has served as an inspiration for the alternative prototype-based approach. Given this, Taivalsaari argues that class-based object-oriented programming suffers the same defects as the Aristolean worldview. Furthermore, many programmers are unaware of this.

So, if the class-based worldview is more flawed than the one of prototypes then when we consider the arguments to make or to adapt JavaScript to be more class based, should we tread carefully?

    • #Aristotle
    • #Classes vs. Prototypes
    • #JavaScript
    • #Wittgenstein
    • #philosophy
    • #jQuery
    • #OOP
  • carnotaurus Avatar Posted by carnotaurus
  • 2 years ago
  • 5
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

5 Notes/ Hide

  1. jeremyjohnstone likes this
  2. wactbprot reblogged this from carnotaurus
  3. wactbprot likes this
  4. whakahekeheke likes this
  5. carnotaurus posted this
← Previous • Next →

Carnotaurus on Development and more!

About

Avatar It's Philip Carney, a Technical Lead for a Public Limited Company in Greater Manchester. The main technologies I use are ASP.NET MVC, C#, and JavaScript. As a child, I began writing 6510 assembler in 1984; decades later, I still enjoy programming.

Me, Elsewhere

  • @ghost_pubs on Twitter
  • Facebook Profile
  • Google
  • Linkedin Profile

Twitter

loading tweets…

I Dig These Posts

See more →
  • RSS
  • Random
  • Archive
  • Ask a question
  • Mobile

Carnotaurus 2013.

Effector Theme by Pixel Union