What are OOP's Jargons and Complexities?
Jonathan Bartlett
johnnyb at eskimo.com
Mon May 23 10:29:24 EDT 2005
Mike Meyer wrote:
> "Xah Lee" <xah at xahlee.org> writes:
>
> So now we find out that Xah Lee is as ignorant of other programming
> languages as he is of Python and Perl.
I think you're misreading some of what is being said.
> Nested subroutines date back to Algol, which was first specified in
> the 50s.
I think the author was speaking in terms of how high a level of a
language it is, not necessarily how recent it is.
> Actually, classes and other OO concepts come out of simulation programming,
> not as an outgrowth of nested functions. Most of the features one
> associates with OO languages were present in Simula.
Again, I think the author was pointing out that it is an outgrowth
logically, not necessarily historically. There is a basic equivalence
between a class and a group of functions closed over the same variables.
I mention something similar in an IBM DeveloperWorks article here:
http://www.ibm.com/developerworks/linux/library/l-highfunc.html
> Function nesting and classes were viewed as independent features. Some
> OO languages support nesting, others don't. I think it was Grace Murray
> Hopper commenting on Ada who said that "With classes, nesting is for the
> birds."
Doesn't this quote show the opposite?
> Strictly speaking, this isn't true of *any* language. Even the most
> fanatical of languages distinguish between classes, objects and
> methods.
I think the point was that in Java everything is done within the context
of a class. You can define methods, but only as a part of a class. You
cannot define a function or even a variable that stands on its own.
> But IIRC, Java comes with a set of low-level types that don't have
> classes associated with them.
But still, it does not allow you, the programmer, to do the same.
Jon
----
Learn to program using Linux assembly language
http://www.cafeshops.com/bartlettpublish.8640017
More information about the Python-list
mailing list