% Introduction
\vspace{-0.5in}

Photran is an IDE for Fortran 77, 90, 95, and 2003 that is built on top of
Eclipse. It is structured as an Eclipse feature, in other words, as a set of
plug-ins that are designed to be used together. Starting with version 3.0, it is
an extension of C/C++ Development Tools (CDT), the Eclipse IDE for C/C++.
Previous versions of Photran were created by hacking a copy of CDT to support
Fortran instead of C/C++, but now we have developed a mechanism for adding new
languages into CDT, allowing the Fortran support code to be in its own set of
plug-ins.

Our purpose in writing Photran was to create a refactoring tool for Fortran.
Thus, Photran has a complete parser and program representation. Photran also
adds a Fortran editor and several preference pages to the CDT user interface,
as well as Fortran-specific project wizards and support for several Fortran
compilers.

Photran is part of the Parallel Tools Platform (PTP) project at the
Eclipse Foundation, which provides the Web site, CVS repository, and
Bugzilla repository.  The Web site is 
\href{http://www.eclipse.org/photran}{http://www.eclipse.org/photran},
and bugs can be submitted at
\href{https://bugs.eclipse.org}{https://bugs.eclipse.org}
under Tools $>$ PTP by selecting one of the ``Photran'' components.


\vspace{-0.2in}

\section{How To Read This Guide} 

This document explains the design of Photran so that interested contributors
could fix a bug or add a refactoring. Contributors should know how to use
Photran; user's guides and introductory tutorials are available from the
\href{http://www.eclipse.org/photran/documentation.php}{\emph{Documentation}}
section of Photran's website.  Contributors also need to understand how to build
Eclipse plug-ins before they read this document. Two good books on Eclipse
plug-in development are
\href{http://www.amazon.com/Eclipse-Building-Commercial-Quality-Plug-Ins/dp/0321228472}{\emph{Building
Commercial-Quality Plug-ins}} and
\href{http://www.amazon.com/Java-Developers-Guide-Eclipse-2nd/dp/0321305027/}{\emph{The
Java Developer's Guide to Eclipse.}}  Like almost all Eclipse plug-ins, Photran
is written in Java, so knowing Java is also a prerequisite.

This is a \emph{duplex} guide. The main chapters provide general descriptions of
the various components and how they interact. The appendix describes concrete
examples from Photran so that contributors can familiarize themselves with
actual code and implementation details. This guide complements the source code
in the repository; it is \underline{not a substitute} for reading the actual
source code.