[UMN logo]

CSCI 5106: Programming Languages
Software Documentation
Fall 2022

We assume that you already have a familiarity with Java and C++ and hence we do not provide any information beyond how to run the compiler and the machine or byte code files produced. Documentation and help files are provided below for each of the other programming systems we may use in this course. We have included quick guides that will help you get started with using the language in the local environment.

In addition to the language implementations, we have included some reference material for Unix/Linux systems below. This stuff is orthogonal to the course but some of you may still find it useful.

A question that will come up is how to use the programming systems described as it becomes necessary during the term. The most likely scenario would be that you would want to install these systems on your laptop or desktop machines. Information on how to do this should be available either through the links below or by a search of the web; for ocaml, we strongly recommend that you use the opam system to install and manage the various packages, especially if you are likely to use the system beyond this course. We do not provide support for such installations but we have set up a Piazza discussion forum where you may raise questions and someone, one of your classmates or Dawn or Gopalan, should be able to help.

What we do guarantee is that a suitable version of these systems will be installed on the CSE-IT cluster. To use a machine on this cluster, you should ssh into it. For example, I (Gopalan) use the following command to get to a specific machine, csel-kh4240-01, in that cluster:

dhaivat:~> ssh -XY csel-kh4240-01.cselabs.umn.edu -l ngopalan
In case you are not familiar with ssh already, -XY are switch specifications that will ensure windows that are opened will pop up as windows on the remote machine and the -l option allows the login name to be changed from the one on the remote machine.

Since we may need to run the programs you develop as we assess your work, it is important to ensure that they can be run in a common environment. The yardstick here will be the CSE-IT cluster environment: Please make sure that any programs you turn in for grade are compatible with the versions of the software on the CSE-IT cluster and actually run there.

Created by gopalan atsign cs dot umn dot edu. Maintained by gopalan atsign umn dot edu and evw atsign cs dot umn dot edu. Last modified: Sept 1, 2022.

The views and opinions expressed in this page are strictly those of the page author(s). The contents of this page have not been reviewed or approved by the University of Minnesota.