Courseware and Computer Resources

Installing OCaml

Download and install the latest release of OCaml. Precompiled binaries are available for most platforms.

Windows users, you do not have to worry about portability issues; we will only be using the bytecode interpreter and will not need the native-code compiler, so any of the ports will probably do. We have had success with the Cygwin and MinGW ports.

Development Environments

Emacs with Tuareg Mode

You can develop OCaml programs using any text editor. We suggest Emacs with Tuareg mode, a special mode for editing OCaml files. You can find the software and installation instructions on the Tuareg page. Emacs with Tuareg is installed on the Windows machines in the public CIT labs and CSUGLab.

Windows users can download and extract Emacs customized for CS 3110. This ZIP archive (40 MB) contains Emacs with Tuareg mode already installed, plus a few minor customizations. For example, it will warn you if a line in your source code is longer than 80 characters. Execute RunEmacs.bat from the Emacs directory that you extracted. To run OCaml from inside Emacs, first open an .ml file, then click on the OCaml menu and choose Interactive Mode then Run Caml Toplevel.

Eclipse with OcaIDE

If you are familiar with the Eclipse program development environment, there is a good plugin for OCaml called OcaIDE. Install or upgrade to the latest version of Eclipse, then follow the instructions on the OcaIDE website. OcaIDE installs easily on Mac and Unix-based systems.

Installation and configuration on Windows is a little more painful. The plugin requires bash, a Unix command interpreter, which comes with Cygwin, a Unix-like environment for Windows. You should install Cygwin and put C:/cygwin/bin/ on your Windows path. In addition, if you wish to use make for building your projects (recommended), you will need to install Gnu make for Windows and configure Eclipse to point to it (Preferences... > OcaIDE > Paths). There are other options for building in Eclipse and you can get along without this, but in the long run it is the best option. We will generally provide a skeleton Makefile with project releases.

Computer Labs

CIT Labs

Cornell Information Technologies (CIT) runs several computer labs across campus for all members of the Cornell community. Check here for locations and hours.

CSUG Labs

CS majors are entitled to an account in the CSUG labs. Right now the lab in Gates is not online yet, but should be sometime this spring. The labs in Upson and Rhodes are still active. Check here for more information.