@c Copyright (C) 1996-2004 Free Software Foundation, Inc.
@c For copying conditions, see the file gpc.texi.
@c This file is part of the GPC Manual.
@c
@c Authors: Peter Gerwinski <peter@gerwinski.de>
@c          Frank Heckenbach <frank@pascal.gnu.de>
@c
@c Last modification: 2004-01-01 (file up to date)

@include macros.texi

@node Resources
@appendix Resources For Use With GPC.
@cindex Resources
@cindex Contributions

Many of the programs mentioned here, plus some more, can be found at
@smallexample
@uref{http://www.gnu-pascal.de/contrib/}
@end smallexample

@htmlhrule

@anch{Drawing}@c
@ifhtml
@html
<table align=right><tr><td>
<a href="../images/GnuPascal.png">
<img alt="[Gnu and Blaise Pascal]" src="../images/GnuPascal-small.png" width=123 height=99><br>
(PNG, 10 KB)
</a>
</td></tr></table>
@end html
@end ifhtml
@subheading GNU Pascal Drawing
@cindex Drawing
@cindex Blaise Pascal
@cindex Pascal, Blaise

@iftex
@image{GnuPascal,6cm}
@end iftex
@ifhtml
Here is
@end ifhtml
@ifnothtml
On the web you can find
@end ifnothtml
our GNU Pascal drawing as a
@localuref{images/GnuPascal-small.png,small (1 KB)} and a
@localuref{images/GnuPascal.png,large PNG image (10 KB)}, as an
@localuref{images/GnuPascal.eps,EPS file (45 KB)}, and as a
@localuref{images/GnuPascal.pdf,PDF file (18 KB)}.

Due to
@uref{http://www.gnu.org/philosophy/gif.html,patent problems}
we do not use GIF files. Fortunately
@uref{http://www.libpng.org,the PNG format}, the successor of GIF,
does not have this problem -- and introduces better compression and
more advanced features anyway.

@c DEMO-START
@anch{gradient}@c
By the way, the @localuref{images/gradient.png,color gradient} that makes
our page background is a PNG file of only 632 bytes. It was
generated by a Pascal program compiled with GPC and @samp{pnmtopng}.
@hrefexample{gradient.pas}
@c DEMO-END

@htmlbrclear

@htmlhrule

@anch{PENG}@c
@ifhtml
@html
<table align=left><tr><td>
<a href="../images/peng-screen.png">
<img alt="[PENG screen]" src="../images/peng-screen-small.png" width=133 height=83><br>
(PNG, 7 KB)
</a>
</td></tr></table>
@end html
@end ifhtml
@subheading PENG
@cindex PENG
@cindex IDE
@cindex Editor
@cindex Text editor

PENG is an integrated development environment (IDE) for GNU
Compilers and other purposes on any platform supported by GPC,
written by Frank Heckenbach. The home page of PENG is
@smallexample
@uref{http://fjf.gnu.de/peng/}.
@end smallexample

@htmlbrclear

@htmlhrule

@anch{RHIDE}@c
@ifhtml
@html
<table align=right><tr><td>
<a href="../images/rhide-screen.png">
<img alt="[RHIDE screen]" src="../images/rhide-screen-small.png" width=115 height=104><br>
(PNG, 8 KB)
</a>
</td></tr></table>
@end html
@end ifhtml
@subheading RHIDE
@cindex RHIDE
@cindex IDE
@cindex Editor
@cindex Text editor

RHIDE is an integrated development environment (IDE) for GNU
Compilers on DOS (DJGPP) or Linux, written by Robert Höhne. The
home page of RHIDE is
@smallexample
@uref{http://www.rhide.com}.
@end smallexample

@htmlbrclear

@htmlhrule

@anch{DevPascal}@c
@subheading DevPascal
@cindex DevPascal
@cindex IDE
@cindex Editor
@cindex Text editor

DevPascal is an integrated development environment (IDE) for GNU
Pascal on mingw32. The home page of DevPascal is
@smallexample
@uref{http://www.bloodshed.net/devpascal.html}.
@end smallexample

@htmlbrclear

@htmlhrule

@anch{GRX}@c
@ifhtml
@html
<table align=left><tr><td>
<a href="../images/grx-screen.png">
<img alt="[GRX demo program screen]" src="../images/grx-screen-small.png" width=96 height=72><br>
(PNG, 38 KB)
</a>
</td></tr></table>
@end html
@end ifhtml
@subheading GRX
@cindex GRX
@cindex Graphics

GRX is a graphics library for C and GNU Pascal, including a mostly
BP compatible @samp{Graph} unit. It is available from
@smallexample
@uref{http://www.gnu.de/software/grx/}
@end smallexample

Although GRX originated on DJGPP, a DOS programming platform, it is
portable to Linux with SVGAlib, to all Unix-like systems running the
X11 window system, and to MS-Windows 9x/NT.

@htmlbrclear

@htmlhrule

@anch{Internationalization}@c
@subheading Internationalization
@cindex Internationalization
@cindex gettext

Units and tools for internationalization are available in
@smallexample
@uref{http://www.gnu-pascal.de/contrib/eike/}
@end smallexample

@htmlhrule

@anch{Database}@c
@subheading Database units
@cindex Database
@cindex MySQL
@cindex GNU DBM
@cindex DBM
@cindex GDBM
@cindex PostgreSQL
GNU Pascal units to access MySQL, GNU DBM and PostgreSQL databases
are available in
@smallexample
@uref{http://www.gnu-pascal.de/contrib/eike/}
@end smallexample

@htmlhrule

@anch{GTK}@c
@subheading GTK units
@cindex GTK
@cindex GUI

GNU Pascal units for the GTK+ and GTK+ GL libraries are available in
@smallexample
@uref{http://www.gnu-pascal.de/contrib/nicola/}
@end smallexample

@htmlhrule

@subheading Documentation
@cindex documentation
@cindex book
@cindex German

A book about GPC manual in German written by Eike Lange can be found
in
@smallexample
@uref{http://www.gnu-pascal.org/~eike/}
@end smallexample

@htmlhrule

@anch{SysUtils}@c
@subheading SysUtils unit
@cindex SysUtils
Prof.@: Abimbola A.@: Olowofoyeku (``The African Chief'') wrote a
Delphi-compatible (though a few routines are still missing)
@samp{SysUtils} unit. It has been tested under Cygwin, mingw, Linux
(Mandrake 7.0), and Solaris 7. It can be downloaded from
@uref{http://www.gnu-pascal.de/contrib/chief/}.

@htmlhrule

@anch{Crystal}@c
@subheading Crystal, a mailing list archive program
@cindex Crystal
@cindex Mailing List Archives

Crystal is a web based mailing list archive, written for GNU Pascal
and used for the archives of GPC's mailing lists (@pxref{Mailing
List Archives}). The source code can be found at
@uref{http://fjf.gnu.de/crystal/}.

@htmlhrule

@anch{ISO}@c
@subheading ISO standards
@cindex ISO 7185
@cindex ISO 10206
@cindex ANSI
@cindex Classic Pascal
@cindex Standard Pascal
@cindex Extended Pascal
@cindex Standards
@cindex Pascal standards

The Pascal standard specifications are available in PostScript
format at
@smallexample
@uref{http://ftp.digital.com/pub/Digital/Pascal/}
@end smallexample

Alternative addresses are
@smallexample
@uref{ftp://ftp.europe.digital.com/pub/DEC/Pascal/}
@end smallexample
@smallexample
@uref{ftp://ftp.digital.com/pub/DEC/Pascal/}
@end smallexample

There are also copies at
@smallexample
@uref{http://www.moorecad.com/standardpascal/iso7185.ps}
(ISO 7185 Pascal)
@end smallexample
@smallexample
@uref{http://www.moorecad.com/standardpascal/iso10206.ps}
(ISO 10206 Extended Pascal)
@end smallexample

Note: These documents are a bit hard to navigate (e.g., in
ghostview) because they are missing the so called ``document
structuring comments'' (DSC). The GPC source distribution contains a
little script @file{ps2dsc} to add the DSC again and make the
documents easier to navigate. Note that for reasons of copyright,
you are probably only allowed to do this for your own use and not to
distribute the modified files.

You can find an easy-to-read introduction to Extended Pascal by
Prospero Software at
@smallexample
@uref{http://www.prosperosoftware.com/epintro.html}
@end smallexample

Please note that Standard Pascal is @strong{not} the same as Borland
Pascal nor a subset of it. See @ref{Highlights} for examples of
Standard Pascal features that are missing in Borland Pascal.

Scott A. Moore's
@uref{http://www.moorecad.com/standardpascal/ansiiso.faq,ANSI-ISO Pascal FAQ (132 KB)}
discusses the differences between both dialects in detail.

The draft standard ``Object-Oriented Extensions to Pascal'' can be
found at
@smallexample
@uref{http://pascal-central.com/OOE-stds.html}
@end smallexample

@htmlhrule

@subheading Software Patents Kill Innovation
@cindex Freedom
@cindex Patents
@cindex Software patents

Programming activities of small companies and individuals are
threatened by software patents. If you are a programmer, you are in
danger, too! Your employer or yourself might be sued by a large
company holding a patent on some @emph{ideas} you are using in your
programs. (You need not use foreign code in order to become
vulnerable.)

For more information look at
@smallexample
@uref{http://swpat.ffii.org} (Europe)
@uref{http://lpf.ai.mit.edu} (USA)
@end smallexample
