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


Reply via email to