Re: RFC 171 (v1) my Dog $spot should call a constructor implicitly

[email protected] (Hildo Biersma)
Newsgroups perl.perl6.language.objects
Organization Morgan Stanley Dean Witter & Co.
Message-ID <[email protected]>
> =head1 TITLE
> 
> my Dog $spot should call a constructor implicitly
> 

What, then, happens to the following code:

my Dog $spot;
if ($age > 12) {
    $spot = new Doberman();
} else {
    $spot = new Corgi();
}

Would you seriously propose to create a Dog object, then wipe it in
either branch if the if?

Also, not every class of object can have a default constructor, not is
that always desirable.  Let's take a database handle as an example:

my DBI::dbh $handle;
if ($env eq 'test') {
  $handle = DBI->connect(... connect to test ...);
} else {
  $handle = DBI->connect(... connect to prod...);
}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.