Learning Programming Languages

 

Fortran

Most of the sample code IÕll post online will be in Fortran 90/95. Fortran is a high-level compiled language available on the Libra cluster. It is one of the best-supported scientific computing languages. Fortran will interface with the NAG numerical libraries, which can be very useful for spare matrix routines. (note: Fortran 90 and 95 are the same language, they are just different versions of the compiler)

á           Introduction to Fortran 90 for beginners

á           Another introduction to Fortran

á           And one more tutorial

á           IU Fortran NAG libraries

á           Open-source free Fortran compilers for any platform

á           NAG Fortran software repository

 

Python

Python is a newer language (interpreted/compiled) designed to be extremely readable and easy to learn, but as flexible as any other high-level language. It is mutli-platform (Mac, Windows, Linux) and free under an open-source license. Python is available on the Libra cluster.

á           Python homepage

á           BeginnerÕs guide to Python

á           Documentation

á           Python Challenge - A series of brain-teasers designed to teach Python

 

Matlab

Matlab is similar in structure to Python, and is very popular among math modelers. It is also available on Libra, but UITS donÕt offer support for graphics, so youÕre on your own with the user interface. You can purchase it through the IU Stat/Math Center for your Windows machine, but a Mac version doesnÕt seem to be offered by IU. It is available on any UITS Windows machine on campus.

á           Matlab online manual (Mathworks)

á           UITS Matlab knowledgebase

á           MathWorks homepage

á           Gnu Octave: A free MatLab-like language

á           Psychophysics Toolbox for MatLab

 

C/C++

C and C++ are both high-level compiled languages favored by many application programmers. C++ is basically a superset of C that includes object-oriented functionality and templates. Both are available on the Libra cluster.

á           Pretty much all the information you might need

á           Learning to C

 

 

Java

Java is an object-oriented language by Sun Microsystems. It is quite similar to C++ in structure, and is becoming extremely popular. Java programs are compiled to bytecode (halfway compiled) so they may be executed on any platform. Java is available in both 32- and 64-bit on the Libra cluster.

á           Pretty much all the information you might need

á           Java non-technical homepage

á           SunÕs tutorial on Java programming

á           Free and open-source Java

 

DMDX

DMDX is a scripting program by Ken Forster to conduct experiments on PCs. It is free, and excellent for stimulus presentation, screen control, and timing.

á           DMDX web page

á           Download DMDX

á           DMDX Help

á           Microsoft DirectX (DMDX needs this installed to handle screen presentation)

á           Tutorials on using DMDX

á           BRM paper describing DMDX

á           FAQs