Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re: Re: Why perl is more OO than C++ or Java...

by dragonchild (Archbishop)
on Sep 13, 2001 at 18:00 UTC ( #112190=note: print w/replies, xml ) Need Help??


in reply to Re: Why perl is more OO than C++ or Java...
in thread Why perl is more OO than C++ or Java...

I disagree. For normal Perl programming, you will never care about how a scalar is implemented. For normal C programming, the size of an int is critical! (I know this because I got hit by the fact that Win32 has a 16-bit int and Unix a 32-bit int.)

OOP is about using objects, as well as adding objects. It's a paradigm shift, not just a few new keywords and syntax goodies. People were writing OO code before OO existed and people are writing procedural code with OO syntax.

------
We are the carpenters and bricklayers of the Information Age.

Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.

  • Comment on Re: Re: Why perl is more OO than C++ or Java...

Replies are listed 'Best First'.
Re: Re: Re: Why perl is more OO than C++ or Java...
by Masem (Monsignor) on Sep 13, 2001 at 18:10 UTC
    I disagree that it's *just* about using objects. The distinction between typical programming that is common in C and FORTRAN, and true OOP, is that you don't think of the program as working step after step, but of objects invoking methods of other objects in a non-deterministic way.

    It's very easy to convert a C program that doesn't use objects to one that uses them, but if there is still a strong dependence on how the events of the program should fire, it's not OOP.

    -----------------------------------------------------
    Dr. Michael K. Neylon - mneylon-pm@masemware.com || "You've left the lens cap of your mind on again, Pinky" - The Brain
    It's not what you know, but knowing how to find it if you don't know that's important

Re: Re: Re: Why perl is more OO than C++ or Java...
by John M. Dlugosz (Monsignor) on Sep 14, 2001 at 09:24 UTC
    First, in Win32, ints are 32 bits, not 16.

    Second, if you were to use integers in Perl 5, you would indeed care how many bits it had. When using the normal floating point values in Perl, you care about its range and precision. If you demand too much precision in a real number, your arithmetic fails. If you demand too many bits in an integer, you also get the wrong answer. That's no different than when programming in C.

    If Perl 6 provides seemless bignums, then you won't have that problem. But you still "care". You rely on the fact that ints grow to any number of bits.

    In Perl you have IV's and lots of stuff behind the scenes. But in C, you don't care how an int is implemented, either! You know that adding two ints obeys the rules of arithmetic, but what registers are used, how the CPU's ALU is constructed, what the pipelines do, and all that is something you don't care about. It just magically works that 5+4 produces 9.

    —John

      I know this may seem a bit offtopic, but man, perl 6 will kick major ass if it provides seemless support for bignums. I'll be changing a lot of the things I do in matlab and C++ to perl if it does.

      Just Another Perl Backpacker

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://112190]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (4)
As of 2022-08-08 17:22 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?