Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much

Re: The strangest use of unlink I know of

by kyle (Abbot)
on Feb 28, 2008 at 16:19 UTC ( #670925=note: print w/replies, xml ) Need Help??

in reply to The strangest use of unlink I know of

I thought it might be even more tricky still. Since %foo is empty, unlink gets an empty list. I thought that might mean that it would delete whatever is in $_ as if it got no argument, but that doesn't happen.

my $test_file = 'file_of_doom'; die 'file already exists' if -e $test_file; system( "touch $test_file" ); die 'file not created' if ! -e $test_file; $_ = $test_file; my %foo = (); unlink %foo; print "file gone!\n" if ! -e $test_file;

As it is, I think it just does nothing.

Replies are listed 'Best First'.
Re^2: The strangest use of unlink I know of
by Anonymous Monk on Feb 28, 2008 at 16:56 UTC
    Look more carefully. %foo is not empty. It was initialized with curly brackets -- almost ALWAYS a sign that the author made a mistake. Not a very humorous answer, but Wayne Jarvis is not paid to be funny.


    Still however -- the code indeed is a no op in terms of "useful" work. One needs to explicitly require %foo as a scalar:
    unlink scalar %foo;

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://670925]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (3)
As of 2018-02-18 05:34 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (250 votes). Check out past polls.