The non-existent tension between FP and OOP

Is the Supremacy of Object-Oriented Programming Over?:

The fact is, for a lot of these applications, it’s just data. The ceremony of object wrappers doesn’t carry its weight. Just put the data in a hash map (or a list if you don’t need the bits "labeled") and then process the collection with your iterate, map, and reduce functions.

I wish I’d had a “pocket Dean Wampler” when I was first learning Haskell and trying to reconcile idiomatic Haskell with what I’ve become so accustomed to with Ruby, JavaScript and, well, everything.

More harmful than harmful

We are lucky to live in a time when 99.9% of programmers will never have a legitimate argument for using GOTO (hi kernel programmers!). But in case you’re feeling nostalgic and/or ornery, there’s always COMEFROM. You can even implement it in Ruby via @callcc@!

Elevating the art of language implementation

Suppose we can take the following statement as true:

Whether you use it or not, the state of the programming craft has been elevated by many of the ideas bundled in Ruby on Rails.

ActiveRecord in particular brought many ideas that made it easier for more people to program with a database. Whereas before most people thought in terms of mappings or extracting data from hashes, AR gave a more fluent and object-like notation to work with. Thus, more interesting applications were born.

Right now, good VM technology is limited to Sun and Microsoft, while Apple, Google and Mozilla are re-inventing it for their web browsers. Open source languages, mostly, lack this VM technology.

ActiveRecord improved the state of the programming craft by spreading ideas that make working with a database easier. Could a similar improvement in the programming craft be realized by diffusing the knowledge of how to implement a good VM through a library? Is this a worthwhile aspiration?