The languages used for programming assignments in Sections 1 and 2 of CS 152 will be C, C++, Scheme (a dialect of Lisp), Ada, and perhaps Prolog. These languages are available as follows:
The department maintains a microcomputer lab for student use in MH 226. For regular access to the department computing facilities, you need to register for 1 unit of CS 110L, or pay a $45 fee at the department office, MH 208. This regular access includes both access to a Windows NT network, and access to a network of Suns running Unix. However you may copy files from the K: drive on the student network without having regular access; inquire at the lab for details on how to do so.
Visual C/C++ will be available on the Windows NT network, as is version 7.4.2 of MIT Scheme, and a version of SWI Prolog. Implementations of Prolog and Ada-83 are available on the Suns.
Commercial versions of C and C++ are readily available. You may use any version of either language; however I may make small deductions from your grade if you use non-ANSI constructs, or if you use C++ constructs in C.
Public domain versions of the other languages are available as follows:
Instructions for downloading version 7.4.2 of MIT Scheme
(for Windows 3.1 and Windows 95 as well as Windows NT) are available at
http://www-swiss.ai.mit.edu/ftpdir/scheme-7.4/w32readme.txt
A self-extracting, self-installing implementation of SWI Prolog is at:
ftp://swi.psy.uva.nl/pub/SWI-Prolog/w32pl2714.exe
Ada-95 for Windows 3.1 and 95, OS-2, Macs, etc. is available from
ftp://ftp.seas.gwu.edu/pub/ada/ez2load, or
ftp://cs.nyu.edu/pub/gnat/ez2load
Note that an
IDE is available from this address, but must be downloaded separately.
Whether or not you download the IDE, you should make sure to update your
AUTOEXEC.BAT file according to the documentation provided with the
language implementation. You may use either Ada-83 or Ada-95 for the Ada
assignment(s).
On occasion I will be publicizing certain information, including
all programming assigments, and the data files you should use to test
them. By "publicizing", I mean making available both on the K: drive
(directory K:\SMITH\CS152) and on my web site at
http://www.mathcs.sjsu.edu/faculty/smithj/classes/152