perl6(1)

NAME
perl6 - Rakudo Perl 6 Compiler

SYNOPSIS
 perl6 [switches] [--] [programfile] [arguments]

DESCRIPTION
With no arguments, enters a REPL. With a "[programfile]" or the "-e" option, compiles the given program and by default also executes the compiled code.

  -c                   check syntax only (runs BEGIN and CHECK blocks)
  --doc                extract documentation and print it as text
  -e program           one line of program, strict is enabled by default
  -h, --help           display this help text
  -n                   run program once for each line of input
  -p                   same as -n, but also print $_ at the end of lines
  --target=[stage]     specify compilation stage to emit
  --encoding=[mode]    specify string encoding mode
  --output=[name]      specify name of output file
  -v, --version        display version information
  --stagestats         display time spent in the compilation stages
  --ll-exception       display a low level backtrace on errors
  --profile            write profile information as HTML file (MoarVM)
  --profile-filename=[name]
                       specify an alternate profile output file

Note that only boolean single-letter options may be bundled.

The supported values for "--target" are:

 Target     Backend  Description
 ======     =======  ===========
 parse      all      a representation of the parse tree
 ast        all      an abstract syntax tree (before optimizations)
 optimize   all      an abstract syntax tree (after optimizations)

 mbc        MoarVM   MoarVM byte code
 jar        JVM      JVM archive

For "--profile-filename", specifying a name ending in ".json" will write a raw JSON profile dump. The default if this is omitted is "profile-[timestamp].html".

List of env vars used in Rakudo

"RAKUDOLIB", "PERL6LIB" (src/core/Inc.pm)
    Appends a delimited list of paths to @INC. "RAKUDOLIB" is evaluated first.

"RAKUDO_MODULE_DEBUG" (src/Perl6/ModuleLoader.pm)
    If set to a non-false value, causes the module loader to print debugging information to standard error.

"RAKUDO_ERROR_COLOR" (src/core/Exception.pm)
    Controls whether to emit ANSI codes for error highlighting. Defaults to true if unset, except on Win32.

"RAKUDO_MAX_THREADS" (src/core/ThreadPoolScheduler.pm)
    Controls the maximum number of threads used by a thread pool.

"RAKUDO_NO_DEPRECATIONS" (src/core/Deprecations.pm)
    If set, suppresses deprecation warnings.

"RAKUDO_VERBOSE_STACKFRAME" (src/core/Backtrace.pm)
    Controls stack frame verbosity.

"RAKUDO_BACKTRACE_SETTING" (src/core/Backtrace.pm)
    Controls whether .setting files are included in backtraces.

AUTHORS
Written by the Rakudo contributors, see the CREDITS file.

This manual page was written by Reini Urban, Moritz Lenz and the Rakudo contributors.