Dear Tom,
> You seem to be blending the concepts of eval and system.
Sorry about the confusing presentation there. My friend had
actually written something like:
----------------------\/--------BEGIN---------\/----------------------
$string = "system(\"cat $somefile | mail -s \\\"$something\\\" $audience\")";
eval $string;
----------------------/\---------END----------/\----------------------
Yeah, including all the backslashes. :-)
I asked him to re-write it as:
----------------------\/--------BEGIN---------\/----------------------
system("cat $somefile | mail -s '$something' $audience");
----------------------/\---------END----------/\----------------------
That is why my advice to him included references to system().
> Your comments about doing "something that has life beyond the process
> itself" and "incomplete run" seem a bit muddled and not consistent with
> how eval behaves. Yes, as another poster pointed out, if you don't check
> $@ after an eval, an error (compilation or otherwise) can go unnoticed,
> if that's what you mean.
That is just part of what I meant. By using an unnecessary
eval-STRING, he is postponing syntax errors to run-time. So some
detrimental actions may get taken before the syntax error is hit.
Without the eval, the same error would be detected at compile-time, and
the hypothetical actions would not be taken at all. As they say,
"extinction is forever". Some actions cannot be undone even if you
test for [EMAIL PROTECTED]
You will have seen Uri's response to you about eval-BLOCK. eval-BLOCK
is not really an eval at all.
peace, || What can one hour achieve?
--{kr.pA} || http://www.workanhour.com/
--
Kid, n.: A noise with dirt on it.
_______________________________________________
Boston-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/boston-pm