blob: 33147db57d04bac85f35f8eb65872f18928381dd [file] [log] [blame]
% 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 and how CDT works. There is a short
\href{http://www.eclipse.org/photran/documentation.php}{\emph{Getting Started
Guide}} on the Photran website.
Contributors also need to understand Eclipse and how to build Eclipse plug-ins
before they read this document. We recommend reading
\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}} for Eclipse newcomers.
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.