Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Answer: Why are objects slower than procedural subs/data structs?

by Fletch (Chancellor)
on Feb 03, 2004 at 18:16 UTC ( #326276=categorized answer: print w/replies, xml ) Need Help??

Q&A > object-oriented programming > Why are objects slower than procedural subs/data structs? - Answer contributed by Fletch

Method dispatch overhead. When you say foo( $a ) whatever foo in the current scope is called dirrectly. When you say $obj->bar( $b ), then perl has to check what $obj is (a scalar holding a blessed ref? a class name), then try and call Whatever::bar, and if that doesn't work try SuperWhatever::bar . . .

Granted there's some caching done, but it's more than just a simple subroutine call.

Log In?
Username:
Password:

What's my password?
Create A New User
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (7)
As of 2017-02-19 17:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Before electricity was invented, what was the Electric Eel called?






    Results (293 votes). Check out past polls.