>But, for "crying out loud!", then what the hell do we need "scalar" for?
>You can accomplish the same thing like this:

>   $num = @array;
>   print "Got $num elements";

Wrong.  You just wasted a scalar needlessly, which ()= doesn't
do.  Of course, you *don't* need scalar() there.

    print "Got " . @array . " elements";

>"scalar" makes things easy. So does something like "list". This

>   $stuff = () = $r =~ /crap/shit/;

>Doesn't make anything easy.

Goodness, it certainly does.  It's loads easier than learning a new buzz^Wkeyword
or a new switch, because you already know it.

>> Perl does context.  Perl does *IMPLICIT* context.  Cope.

>Great. Then let's drop "scalar" to be consistent. This can be done
>completely implicitly, right?

There are no anonymous scalars.  You'd at best have to write

    foo(scalar bar())

as something more like

    foo(do { my $x = bar() })

which is lame.   However, if foo($) is thus "prototyped",
you need but write

    foo( () = bar() )

to get bar() to be called in list context.  This is wholly intuitive.
If it isn't, you need to review how 

    my($x) 

works--once again.

--tom

Reply via email to