Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Parrot VM fork for my own work. !! Branches may rebase !!
Perl C Parrot Objective-C Perl6 Emacs Lisp Other

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
LICENSES
build_tools
chartypes
classes
config
docs
dynclasses
dynoplibs
editor
encodings
examples
imcc
include/parrot
io
jit
languages
lib
library
ops
runtime/parrot
src
t
tools/dev
types
util
.cvsignore
CREDITS
ChangeLog
Configure.pl
DEVELOPING
KNOWN_ISSUES
MANIFEST
MANIFEST.SKIP
MANIFEST.generated
NEWS
PBC_COMPAT
README
RELEASE_INSTRUCTIONS
RESPONSIBLE_PARTIES
TODO
VERSION
libnci.def
parrot.spec
testyamd
vtable.tbl

README

This is Parrot, version 0.0.13
------------------------------

Parrot is Copyright (C) 2001-2003 The Perl Foundation. All Rights Reserved.

LICENSE INFORMATION
-------------------

This code is distributed under the same license as Perl 5; you can
redistribute it and/or modify it under the terms of either:

    a) the GNU General Public License as found in the directory "LICENSES"

    b) the "Artistic License" which can be found in the directory "LICENSES"

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.

PREREQUISITES
-------------

You'll need a compiler and linker, of course.  A make program
is currently encouraged, but we have had difficulties with some
versions (like nmake), so we do have a primitive script
that attempts to emulate it.

You'll also need Perl 5.005 or above, compiled to support
the types you wish to support in Parrot.  (Parrot will
make, but you'll be unable to assemble anything.)  You can find
what types are support by typing 'perl -V', and examining the
values for ivtype and nvtype.  Parrot should work with INTVALs
and FLOATVALs up to those types.

For most of the platforms that we are supporting initially,
Parrot should build out of the box.  We do not have,
however, native dynamic loading ready for OS X, and are
currently using Fink (http://fink.sourceforge.net) to fill
that gap.  Other solutions may also work.  The list of
targetted platforms can be found in docs/parrot.pod.

The current configure system is primitive, as it's only
a temporary solution.  It will be happy with most any answers
you decide to feed it.  Garbage In, Garbage Out.

You may want to peruse the list of KNOWN_ISSUES to see
what other things may be unexpected.

INSTRUCTIONS
------------

For now, unpack your Parrot tarball, (if you're reading this, you've
probably already done that) and type

    perl Configure.pl

to run the Configure script. The Configure.pl script extracts configuration
from the running perl5 program. If you have a non-standard setup (like "long
long" integers on a 32-bit system), you might consider to run:

    perl Configure.pl --intval=int --opcode=int

See "perl Configure.pl --help" for more options.

This will generate a config.h header, a Parrot::Config module, and a Makefile.
The file "myconfig" has an overview of configure settings.

Next type

    make

and the interpreter should build.

You can test the assembler and interpreter by running

    make test

Look at docs/parrot.pod and docs/intro.pod for where to go from here.
If you have any problems, see the section "Reporting Problems" in
docs/intro.pod.

NOTES
-----

On some older computers with little RAM, the computed-goto dispatch core
(core_ops_cg.c) may take a while to compile or may fail to compile at all.
You can pass a flag to Configure (--cgoto=0) to disable the computed-goto
core, at a slight cost in runtime speed.

CHANGES
-------

For documentation on the user-visible changes between this version and
previous versions, please see NEWS. The full changelog is available
as ChangeLog.

MAILING LISTS
-------------

The mailing list for parrot is currently perl6-internals.  Subscribe
by sending mail to perl6-internals-subscribe@perl.org.
It is archived at http://nntp.perl.org/group/perl.perl6.internals

WEB SITES
---------

The following web sites have all the Parrot information you need:
    http://dev.perl.org/
    http://cvs.perl.org/
    http://www.parrotcode.org/

Have fun,
The Parrot team.
Something went wrong with that request. Please try again.