Programming and Markup languages

Interesting links for interesting languages.

Please visit Cetus for thousands of interesting links about programming (mainly Object Oriented Programming). The page gnu/readings is also very interesting.


FORTRAN 77 / 90 / 95

FORTRAN (FORmula TRANslation) is one of the oldest (IBM 1954), easiest and most powerful languages for numerics and science. Although its most extended version (FORTRAN 77) lacks the wide applicability of C, it is generally enough for scientists and much easier for beginners. However, to fill in that gap new versions (called Fortran 90 and 95) have been developed. See the article Fortran 90 and Computational Science for a comparison of Fortran with C and C++.

As usual, the best starting point is the Fortran-faq. Or this other list of answered questions: Michel Olagnon's Fortran 90 List. There are lots of useful information in The Fortran Company (formerly Fortran Market). In particular, see the compilation by Metcalf. See also Lahey Fortran.

There are many online tutorials:

Fortunately, we have a very good free compiler from FSF/GNU for Unix: g77. It has been ported to Windows. A free compiler of Fortran 95 is under development: gfortran.

About coding style, see F77_Style_Guide, by David L. Levine.

Other interesting related links:


C and C++

C was developed by Kernighan and Ritchie in the early 70s, to write the UNIX operating system.

Bash shell programming


Perl


PostScript

Page description language introduced by Adobe in 1985. Although graphics-oriented, it is a fully fledged programming language, based on the use of a LIFO stack and postfix notation (similar to FORTH). PostScript programs are ASCII files and they are interpreted, so they are highly portable.

The following pages have very well organized information about PostScript:

In order to use PostScript you need an interpreter (ghostscript) and a viewer (ghostview or gv for Unix and gsview for Windows).

PS printers can print PS programs directly. However, non-PS printers like HP Deskjets need a translator to other language they understand, PCL for Deskjets. Again, ghostscript is a very good solution. Take a look at Printing HOWTO Support Database.

If you want to learn PostScript I recommend you to read the PostScript Language Tutorial and Cookbook (the "blue book") and then consult the PostScript Language Reference Manual (the "red book"), both from Adobe. You can download PDF files of these and other books from Land's page above.


HTML and other Internet languages

World Wide Web: "Everyone's a publisher".

HTML (HyperText Markup Language) is the basic language for web publishing. Together with its associated protocol HTTP (HyperText Transfer Protocol) it was introduced in 1990 by Tim Berners-Lee at CERN.

Its evolution is now controlled by the W3 Consortium. After versions 1.0 (1991), 2.0 (1995), 3.2 (Jan 1997) and 4.0 (Dec 1997) it has been frozen in version 4.01 (Dec 1999). HTML is now being replaced by a new language, XHTML (Extended HTML), now in version 2.0 (Dec 2003) which is a reformulation of HTML in XML (Extensible Markup Language) whose current version is 1.0 (Oct 2000). The three of them are SGML (Standard Generalized Markup Language) compliant. If you want to check your files against those specifications use this HTML Validator.

There are many good online introductions to HTML. I have selected:

More information:

Related information:


TeX and LaTeX

TeX is a typesetting system written by Donald Knuth, which is becoming the de facto standard in the mathematics, physics and computer science communities. LaTeX is a collection of macros written in TeX. It is much more structured than TeX, providing a set of templates (with predefined styles) and utilities. Both packages are free software and are available for most platforms. (There is MikTeX for Microsoft Windows and teTeX for Unix.) A good introduction can be found in the wikipedia.

Central links are:

The great strength of TeX/LaTeX is the formatting of mathematical formulas. Its power is almost limitless when combined with packages like AMSTeX and/or revTeX. LaTeX can also be used for presentations if other packages are considered: See Prosper and pdfLaTeX presentation How-To. Another interesting package is latex2html which allows you publishing of your tex documents as html webpages.

Probably the most annoying feature of TeX/LaTeX is the lack of an online help. It is essential that you have access to some list of commands. I like the List of LaTeX commands from the (La)TeX navigator.

Last modified on 13-Sep-2004. Accessed 21,952 times since 28-Jan-2004