On Wed, Jul 25, 2018 at 11:48:30AM -0700, ToddAndMargo wrote:
> Maybe I am trying to get "-c" to do too many things.
>
> What I would like it to do is to check everything right up to but not
> actually run the program.
Part of the challenge here is that unlike many other programming languages,
Perl 6 is designed to be very dynamic. The compiler actually executes some
components of the program as it scans them -- i.e., before it's had a chance to
check (or even read) the entire source code file.
So it's a little challenging in Perl 6 to say "but not actually run the
program".
A more accurate/do-able thing might be to simply say "load everything but don't
run the mainline". In code this could perhaps be achieved with something like:
INIT { exit 0; }
This means that BEGIN and CHECK blocks still run, as well as potential other
declarations that have executable side effects, but the mainline doesn't ever
get run. Perhaps there's a case to be made that "-c" or a similar option
should do something like this, or have "-c" simply stop after the CHECK phase
of evaluation.
Pm