=head1 NAME
pugs - Perl6 User's Golfing System
=head1 SYNOPSIS
B<pugs> [OPTIONS]
B<perl> -e 'use pugs; # perl 6 code here...'
=head1 DESCRIPTION
This manual describes Pugs, an experimental (but useful) implementation
of the Perl6 language.
Perl is a language optimized for scanning arbitrary text files,
extracting information from those text files, and printing reports
based on that information. It's also a good language for many system
management tasks. The language is intended to be practical (easy to use,
efficient, complete) rather than beautiful (tiny, elegant, minimal).
If you're new to Pugs, you should start with L<pugs::intro> (yet to
be written), which is a general intro for beginners and provides
some background to help you navigate the rest of Perl's extensive
documentation.
(B<pugs> is also a Perl5 pragma for using Perl6 code inline. See L<The
B<pugs> pragma> below.)
For ease of access, the Pugs manual has been split up into several sections.
Those marked with an asterix haven't been written yet.
=head2 Overview
pugs Perl overview (this section)
pugs::intro * Perl introduction for beginners
pugs::toc * Perl documentation table of contents
=head2 Reference
pugs::run Perl execution and options
* (many others)
=head2 Internals and Foreign Language Interfaces
pugs::hack An overview of the Pugs source tree
You should be able to view Perl's documentation with your man(1)
program or perldoc(1).
=head1 THE B<pugs> PRAGMA
[This section describes a Perl 5 pragma named B<pugs>. Hopefully this
is not too confusing.]
#!/usr/bin/perl
use pugs; # Here is some Perl 6 code...
sub postfix:<!> { [*] 1..$_ }
sub sum_factorial { [+] 0..$_! }
no pugs; # Here is some Perl 5 code...
print sum_factorial(3); # 21
The (Perl 5) B<pugs> module lets you put Perl 6 code in Perl 5 source
code after a line of:
use pugs;
To switch back to Perl 5:
no pugs;
See also L<Perl6::Pugs>. The B<pugs> pragma was written by Brian Ingerson
C<E<lt>INGY@cpan.orgE<gt>> .
=head1 AVAILABILITY
Pugs is available for most operating systems to which GHC has been ported,
including many Unix-like platforms as well as (with several limitations)
Windows. See L<perl::port/"Supported Platforms"> for a listing (to be
written), and the F<README> file in the source distribution.
=head1 ENVIRONMENT
See L<pugs::run>.
=head1 AUTHOR
Perl was conceived and nurtured by Larry Wall C<E<lt>larry@wall.orgE<gt>>.
Pugs was written by Autrijus Tang C<E<lt>autrijus@autrijus.orgE<gt>>,
with the help of oodles of other folks; see the F<AUTHORS> file.
=head1 BUGS
Pugs is still under heavy development. If you find a bug, please report
it (with a test case, if possible -- see F<t/README>) on C<#perl6>
on C<irc.freenode.org>.
=cut