Perl 6
Download Pugs: Compare Revisions 6 and 7
Tags: Pugs
by Herbert Breunung
Tags: Pugs
by audreyt@hidden
^^ Building Pugs from Source ^^ Building Pugs from Source


Building Pugs from source is recommended if possible, because the implementation is still improving rapidly. To build pugs from the source, you will need at least the following installed:
The current recommended way to build Pugs is via cabal-install with the
Haskell
Platform. The steps are:

* A Subversion client
* "GHC 6.6.
1"<http://www.haskell.org/ghc/download.html>, the Haskell compiler. On Debian/Ubuntu, get ghc6 from "Lenny" or "Gutsy", respectively, or build from source (There are no current backports for Sarge, Etch, Dapper, Edgy, or Feisty). On Mac OS X, use "MacPorts"<http://www.macports.org/> and 'port install ghc'.
* Perl5


^^^
1. Download and install the Haskell Platform

With that foundation, you can follow these steps to end up with a "pugs" binary:

* http://hackage.haskell.org/platform/

.pre
   # Fetch
latest Pugs from Subversion repository
   $ svn
co http://svn.pugscode.org/pugs/ pugs
   $ cd
pugs

Alternately, one
can also install only the GHC compiler, and manually set up
the following packages (in this order):

   # review build options controlled by env variables
   $ $PAGER ./INSTALL


* http://hackage.haskell.org/cgi-bin/hackage-scripts/package/Cabal
* http://hackage.haskell.org/cgi-bin/hackage-scripts/package/HTTP
* http://hackage.haskell.org/cgi-bin/hackage-scripts/package/zlib
* http://hackage.haskell.org/cgi-bin/hackage-scripts/package/cabal-install


   # Configure
Pugs
   $ perl
Makefile.PL

The
instructions contained in the README file of Cabal contain more detailed
setup instructions, which should work for all the packages above.

   # Compile
Pugs
   # use 'make
soon' instead of 'make' if you want a faster compilation and are not interested in measuring performance maxima.
   $ make
.pre

(But
then again, please consider simply installing the Haskell Platform. :-))

See
the included README file for further instructions.

^^^ 2. Type
the following commands:

Since
Pugs is still in flux, you may want to consider an alternative to using "make install". Create symbolic links in your local "bin" directory to key files in the pugs distribution. This allows you to run the binaries easily, while leaving everything pugs related in the pugs source tree:

> cabal
update
> cabal
install Pugs

.pre
ln -
s /home/markstos/pugs/pugs /home/markstos/bin/
ln -s /home/markstos/pugs/util/prove6 /home/markstos/bin/
.pre

...and it'
s done!

`prove6` is
like "prove" for Perl 6.

To
build an optimized Pugs for benchmarking or smoke testing, replace the
second command with:
> cabal install -O2 Pugs
(Unix-
like systems might need `sudo` or `cabal install -p` to satisfy
permission requirements.)
^^^ 3. Upgrade Pugs installation
To upgrade to the latest released version on Hackage, the same two lines of commands would work:
> cabal update
> cabal install Pugs
^^^ 4. Build from GitHub source
To upgrade the current Pugs installation to the version in the
"repository";<http://github.com/audreyt/Pugs.hs/>, simply build the repository copy like this:
>
; cd Pugs
> cabal
install
^^ Binary Builds of Pugs ^^ Binary Builds of Pugs


Binary builds are the easiest get started with, but may not be as up to date as building from source. Binary builds are the easiest get started with, but may not be as up to date as building from source.


* "Win32 binary builds of Pugs and Parrot"<http://jnthn.net/perl6/>. * "Win32 binary builds of Pugs and Parrot"<http://jnthn.net/perl6/>.
** (Pxperl.com appears to have stopped routinely updating their Win32 builds.) ** (Pxperl.com appears to have stopped routinely updating their Win32 builds.)


^^ Run Pugs in your Web Browser ^^ Run Pugs in your Web Browser


A web terminal for Pugs is available at "run.pugscode.org"<http://run.pugscode.org>. You can choose between the latest release or latest development snapshot. A web terminal for Pugs is available at "run.pugscode.org"<http://run.pugscode.org>. You can choose between the latest release or latest development snapshot.


^^ Accessing Pugs Remotely ^^ Accessing Pugs Remotely


Another option is to use a pugs a remote machine. If you just want to try out a line or two, you can use the "evalbot" on "the #perl6 IRC channel"<Mail Lists, IRC, Archives>. The syntax is just: Another option is to use a pugs a remote machine. If you just want to try out a line or two, you can use the "evalbot" on "the #perl6 IRC channel"<Mail Lists, IRC, Archives>. The syntax is just:


.pre .pre
?eval say "hello!" ?eval say "hello!"
.pre .pre


If you plan to contribute to Perl 6, you can see about getting a free account on Feather, the If you plan to contribute to Perl 6, you can see about getting a free account on Feather, the
"Perl Community Development Server"<http://feather.perl6.nl>. There, a fresh version of Pugs is built "Perl Community Development Server"<http://feather.perl6.nl>. There, a fresh version of Pugs is built
every 10 minutes! every 10 minutes!


^^ Related Links ^^ Related Links


* "Debian Pugs pakage"<http://packages.debian.org/unstable/interpreters/pugs> by rafl * "Debian Pugs pakage"<http://packages.debian.org/unstable/interpreters/pugs> by rafl



Upload Files

Click "Browse" to find the file you want to upload. When you click "Upload file" your file will be uploaded and added to the list of attachments for this page.

Maximum file size: 50MB

 
 
 
File Name Author Date Uploaded Size

Save Page As

Enter a meaningful and distinctive title for your page.

Page Title:

Tip: You'll be able to find this page later by using the title you choose.

Page Already Exists

There is already a page named XXX. Would you like to:

Save with a different name:

Save the page with the name "XXX"

Append your text to the bottom of the existing page named: "XXX"

Upload Files

Click "Browse" to find the file you want to upload. When you click "Add file" this file will be added to the list of attachments for this page, and uploaded when you save the page.

 
 
 
Add Tags

Enter a tag and click "Add tag". The tag will be saved when you save the page.

Tag: 

Suggestions: