InfoWorld's Peter Wayner reports on once niche programming languages gaining mind share among enterprise developers for their unique abilities to provide solutions to increasingly common problems. From Python to R to Erlang, each is being increasingly viewed as an essential tool for prototyping on the Web, hacking big data sets, providing quick predictive modeling, powering NoSQL experiments, and unlocking the massive parallelism of today's GPUs.
Permalink for comment 447267
To read all comments associated with this story, please click here.
I view "everything is an object" to mean that everything (or at least most things) is first-class: functions, methods, classes, etc. can all be passed around, and thus used much as "normal" objects. Smalltalk/ruby especially exemplify this, Java not so much (no first-class functions, etc. only reflection hacks)
I agree that not everything needs to be done through instanced objects, etc. However, it's nice to have OOP or something similar (haskell typeclass, etc.) when you do want it.
Inheritance has its ugly parts, especially in Java, but I don't view it as fundamental to OOP (or even classes, really). As Alan Kay said, it's all about the messages; OOP allows an object to be used elegantly without regards to its actual implementation.
Member since:
2009-11-11
I view "everything is an object" to mean that everything (or at least most things) is first-class: functions, methods, classes, etc. can all be passed around, and thus used much as "normal" objects. Smalltalk/ruby especially exemplify this, Java not so much (no first-class functions, etc. only reflection hacks)
I agree that not everything needs to be done through instanced objects, etc. However, it's nice to have OOP or something similar (haskell typeclass, etc.) when you do want it.
Inheritance has its ugly parts, especially in Java, but I don't view it as fundamental to OOP (or even classes, really). As Alan Kay said, it's all about the messages; OOP allows an object to be used elegantly without regards to its actual implementation.