# Copyright (C) 2001-2005, The Perl Foundation.
# $Id: imcc.pod 12839 2006-05-30 14:34:31Z coke $

=head1 NAME

IMCC - documentation

=head1 VERSION

=over 4

=item 0.1 initial

=item 0.2 edited to specify .pir extension rather than .imc

=back

=head1 OVERVIEW

IMCC is the B<I>nterB<m>ediate B<C>ode B<C>ompiler for Parrot.  It's
integrated into the C<parrot> executable.

IMCC compiles a language called Parrot Intermediate Representation (PIR).
PIR is the primary target of language implementations. PIR code files usually
have the extension C<.pir>. At times in the past the extension C<.imc> was
used as well, but C<.pir> is preferred and C<.imc> will soon be deprecated.

This document describes available IMCC documentation, located in
F<docs/imcc> unless otherwise described. 

See also the general Parrot documentation, located in F<docs>.

=head1 DESCRIPTION

=head2 calling_conventions.pod

Describes the standard way of passing arguments and receiving results from
subroutines. See also pdd/003_calling_conventions.pod.

=head2 imcfaq.pod

A must read for potential language implementors.

=head2 macros.pod

The macro layer of parrot.

=head2 operation.pod

Describes how IMCC operates internally. 

=head2 parsing.pod

Basic parsing functionality.

=head2 syntax.pod

The syntax of C<.pir> files.

=head2 compilers/imcc/README

Summary of IMCC features and syntax.

=head2 *.[chly]

Most documentation files end in B<.c>.

=head1 AUTHOR

Leopold Toetsch <lt@toetsch.at>
