<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Parrot - Parrot</title> <link rel="stylesheet" type="text/css" href="../../resources/parrot.css" media="all"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <div id="wrapper"> <div id="header"> <a href="http://www.parrot.org"> <img border=0 src="../../resources/parrot_logo.png" id="logo" alt="parrot"> </a> </div> <!-- "header" --> <div id="divider"></div> <div id="mainbody"> <div id="breadcrumb"> <a href="../../html/index.html">Home</a> » Parrot </div> <h1><a name="NAME" >NAME</a></h1> <p>docs/parrot.pod - Parrot</p> <h1><a name="The_Parrot_Virtual_Machine" >The Parrot Virtual Machine</a></h1> <p>Parrot is a language-agnostic common bytecode format and an interpreter for dynamic languages.</p> <h2><a name="Documentation" >Documentation</a></h2> <p>The Parrot documentation is spread across a wide range of files. Good starting points are:</p> <dl> <dt><a name="intro.pod" ><em>intro.pod</em></a></dt> An introductory article on what Parrot is and how to do some interesting things with it. <dt><a name="overview.pod" ><em>overview.pod</em></a></dt> An overview of the Parrot architecture and design. <dt><a name="running.pod" ><em>running.pod</em></a></dt> Brief descriptions of the different executables and how to run them. <dt><a name="faq.pod" ><em>faq.pod</em></a></dt> The Parrot FAQ. <dt><a name="glossary.pod" ><em>glossary.pod</em></a></dt> A guide to some of the jargon that crops up repeatedly in Parrot development (and in the documentation...)</dl> <p>More detailed information on the design and implementation of Parrot can be found in:</p> <dl> <dt><a name="pdds/" ><em>pdds/</em></a></dt> This subdirectory contains all of the current Parrot Design Documents (PDDs). These are intended to be detailed guides to the design of the various Parrot subsystems; for instance, <em>pdd03_calling_conventions.pod</em> specifies Parrot's inter-routine calling conventions. <dt><a name="ops/" ><em>ops/</em></a></dt> This subdirectory contains documentation files that are created from the corresponding opcode files at build time. These files describe what each opcode does and specify what arguments they take. <dt><a name="pmc/" ><em>pmc/</em></a></dt> This subdirectory contains documentation on several of the PMC types available to Parrot. Currently only a few of the available PMCs have been documented. (Patches welcome!) <dt><a name="dev/" ><em>dev/</em></a></dt> This subdirectory contains a number of files discussing various implementation decisions made during the course of the development of Parrot. The intent is to keep discussion of implementation-specific issues separate from the basic design issues discussed in the PDDs. <dt><a name="vtables.pod" ><em>vtables.pod</em></a></dt> A brief introduction to the vtable at the heart of all PMCs, and how to implement your own PMC type. <dt><a name="embed.pod" ><em>embed.pod</em></a></dt> Describes the embedding subsystem in excruciating detail. <dt><a name="memory_internals.pod" ><em>memory_internals.pod</em></a></dt> An introduction to the Parrot GC subsystem <dt><a name="parrotbyte.pod" ><em>parrotbyte.pod</em></a></dt> The Parrot bytecode format. <dt><a name="packfile-perl.pod,_packfile-c.pod" ><em>packfile-perl.pod</em>, <em>packfile-c.pod</em></a></dt> The APIs for accessing packed bytecode files (packfiles) from Perl and C. <dt><a name="strings.pod" ><em>strings.pod</em></a></dt> A description of the string implementation. <dt><a name="tests.pod" ><em>tests.pod</em></a></dt> Hints on writing tests for the Parrot interpreter. <dt><a name="debug.pod" ><em>debug.pod</em></a></dt> A beginner's guide to debugging the Parrot executable. <dt><a name="debugger.pod" ><em>debugger.pod</em></a></dt> Documentation for <code>parrot_debugger</code>, the Parrot debugger.</dl> <h2><a name="Supported_Platforms" >Supported Platforms</a></h2> <p>Parrot compiles and runs on a large number of platforms, including all common ones. The Parrot team is committed to supporting the following combinations as "core platforms": Linux (x86), Win32 (x86), OS X (x86 and PPC), Cygwin, FreeBSD (x86), NetBSD, OpenBSD, Solaris. Here x86 includes the x86_64 architecture. x86 describes that Parrot is supported to run on a 32-bit and 64-bit (AMD64 and Intel 64) CPU.</p> <h2><a name="Authors" >Authors</a></h2> <p>Parrot is developed and maintained by the members of the <code>parrot-dev@lists.parrot.org</code> mailing list. The list is archived at: <a href='http://groups.google.com/group/parrot-dev/'><a href="http://groups.google.com/group/parrot-dev/">http://groups.google.com/group/parrot-dev/</a></a> Many people have contributed their time and expertise to the Parrot project; see the <em>CREDITS</em> file for details.</p> <h2><a name="Web_pages" >Web pages</a></h2> <p>See:</p> <ul> <li><a href='http://www.parrot.org/'><a href="http://www.parrot.org/">http://www.parrot.org/</a></a></li> <li><a href='https://trac.parrot.org/'>https://trac.parrot.org/</a></li> <li><a href='http://github.com/parrot/parrot'><a href="http://github.com/parrot/parrot">http://github.com/parrot/parrot</a></a></li> </ul> <p>for more information.</p> </div> <!-- "mainbody" --> <div id="divider"></div> <div id="footer"> Copyright © 2002-2011, Parrot Foundation. </div> </div> <!-- "wrapper" --> </body> </html>