===================================================================== | ______ | | /\ __ \ | | \ \ \/\ \ __ __ ______ ______ (P)erl6 | | \ \ __//\ \/\ \/\ __ \/\ ___\ (U)ser's | | \ \ \/ \ \ \_\ \ \ \/\ \ \___ \ (G)olfing | | \ \__\ \ \____/\ \____ \/\_____\ (S)ystem | | \/__/ \/___/ \/___/\ \/____/ | | /\____/ | | \/___/ | | | ===================================================================== Pugs is Copyright 2005 by Autrijus Tang. All Rights Reserved. The "PGE" subsystem is derived from PGE by Patrick Michaud, under the Perl license. See src/pge/README. The "PCRE" subsystem is derived from PCRE 5.0 by Philip Hazel, under a BSD-style license. See src/pcre/LICENCE. The "Syck" subsystem is derived from Syck 0.54 by "why the lucky stiff", under a BSD-style license. See src/syck/COPYING. The "Rule" subsystem is derived from Parsec 2.0 by Daan Leijen, under a BSD-style license. See src/Pugs/Rule/LICENSE. The "RRegex" subsystem is derived from hsregex 0.2 by John Meacham, under a BSD-style license. See src/RRegex/LICENSE. The "UTF8" subsystem is derived from Sven Moritz Hallberg's work, under a BSD-style license. See src/UTF8.lhs. The "Unicode" subsystem is derived from Dimitry Golubovsky's work, under the same license as GHC. See LICENSES/GHC. LICENSE INFORMATION ------------------- This code is free software; you can redistribute it and/or modify it under the terms of either: a) the GNU General Public License, version 2, or b) the Artistic License, version 2.0beta5. Please see the "GPL-2" and "Artistic-2" files under the "LICENSE" directory for the full license text. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See either the GNU General Public License or the Artistic License for more details. INSTALLATION ------------ Pugs needs the Glasgow Haskell Compiler (GHC) 6.4 or above. To install GHC, download a binary build from http://haskell.org/ghc/. Although source code for GHC is available, it will take a very long time to build by yourself. Pugs needs Parrot 0.2.0 or above to support Perl 6 Rules. To install Parrot, follow the instructions at http://www.parrotcode.org/. Binary builds for Win32 are available at http://jwcs.net/~jonathan/perl6/. For dynamic loading/inlining of Haskell modules, you should install the hs-plugin library, available here: ftp://ftp.cse.unsw.edu.au/pub/users/dons/hs-plugins/snapshots/ To install Pugs on your system, simply type this in the command line: cpansign -v # optional; see SIGNATURE for details perl Makefile.PL make # or 'nmake' on Win32 make test make install Optionally you may use the GHC environment variable to set the ghc executable before you run "perl Makefile.PL", for example: export GHC=${HOME}/bin/ghc (bash) setenv GHC ${HOME}/bin/ghc (csh) CAVEATS FOR x86_64 MACHINES --------------------------- GHC 6.4 has a garbage collector bug on x86_64 (64 bit Athlon) machines; users may see crashes complaining about "strange objects". Until GHC 6.4.1 is released, a partial workaround is to avoid GC by requesting a large heap, using either command line arguments: ./pugs +RTS -A200M -RTS or an environment variable: GHCRTS='-A200M' These request a 200 MB heap, which is sufficient to run most programs. Running all tests unfortunately requires a lot more memory (perhaps 1000M). A possible alternative, which someone could explore and report on, would be to try using a 32-bit GHC instead. MAILING LISTS ------------- The mailing list for Pugs is perl6-compiler. Subscribe by sending mail to . Mailing list archive is availabe at: http://nntp.perl.org/group/perl.perl6.compiler (HTTP) http://groups-beta.google.com/group/perl.perl6.compiler (HTTP) nntp://nntp.perl.org/perl.perl6.compiler (NNTP) Please submit bug reports to . WEB SITES --------- The Pugs homepage is at: http://pugscode.org/ For Perl 6 related information, please see: http://dev.perl.org/perl6/ Enjoy, /Autrijus/