On Mon, 2005-05-02 at 22:51, Uri Guttman wrote:
> >>>>> "LW" == Larry Wall <[EMAIL PROTECTED]> writes:
>
> LW> multi sub opensocket (
> LW> Str +$mode = 'rw',
> LW> Str +$encoding = 'auto',
> LW> Str [EMAIL PROTECTED]) returns IO;
>
> and how will that support async (non-blocking) connects? or listen
> sockets?
This is why named aliases for constructors are a bad idea. Nice theory,
but bad idea.
Unless the language allows us to specify that a sub IS an alias for a
constructor, e.g.:
sub opensocket := IO::Socket.new;
Why? Because IO::Socket.new takes parameters that are built out of its
entire inheritance tree, so a change to IO::Handle might radically
modify the signature of the constructor.
--
Aaron Sherman <[EMAIL PROTECTED]>
Senior Systems Engineer and Toolsmith
"It's the sound of a satellite saying, 'get me down!'" -Shriekback