# Re: Diff of opinion on dynamic stuff

**URL:** <https://www.ruby-forum.com/t/re-diff-of-opinion-on-dynamic-stuff/74401>\
**Category:** Ruby\
**Created:** [December 23, 2005, 1:00am UTC](https://www.ruby-forum.com/t/re-diff-of-opinion-on-dynamic-stuff/74401 "2005-12-23T01:00:58Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![MolitorS\_Stephen\_L](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/e480ec/32.png) [@MolitorS\_Stephen\_L](https://www.ruby-forum.com/u/MolitorS_Stephen_L)\
**Post date:** [December 23, 2005, 1:00am UTC](https://www.ruby-forum.com/t/re-diff-of-opinion-on-dynamic-stuff/74401/1 "2005-12-23T01:00:58Z")

</div>

> > Is Python against dynamic stuff? And Ruby for it?

Certainly Python can’t be against all dynamic stuff. Ain’t that dynamic  
stuff what Eckel and others _like_ about Python compared to Java –  
‘latent typing’, etc.? And can’t you make the same sort of arguments  
against duck/latent typing that the blogger makes against open classes  
and dynamically generated code? For example:

```
"It's the second generation that's going to be less enthused,
that's going to stare in bafflement at these methods that
mysteriously accept any type, and trying to figure out what's
going on when there's an exception in dynamically typed
code."

```

Or you could even complain about operator overloading, which isn’t even  
a dynamic feature:

```
"It's the second generation that's going to be less enthused,
that's going to stare in bafflement at these operators that can
mysteriously be overridden to do anything, and trying to figure out

```

what’s  
going when there’s an exception in an overridden ‘+’ operator."

Of course, he could still be correct – maybe duck typing and operator  
loading are safe enough, and open classes are too dangerous. But it’s  
still kind of interesting that a Python guy is criticizing Ruby for  
being _too_ dynamic, flexible and open. That’s of course the argument  
of the static typing crowd against dynamic typing. I guess he must hate  
class-less languages like Self (or even Javascript).

Maybe that’s the core difference between the Python and Ruby  
philosophies? Ruby is even more dynamic and ‘open’?

Ruby isn’t Self, but seems closer to the idea that essence of OO is that  
objects respond to messages. Precisely how you create an object,  
whether via a closed class, an open class, a Javascript constructor, or  
whatever is less essential from that point of view. Whereas other  
languages seem to be much more class-centric.

I worked my way through a Python book a few years ago, but I’ve  
forgotten most of it. Are classes objects in Python?

Steve
