Tools
Documentation of software tools used in :
Computing Environments
In Fall 2020 Term T2 we will be using Racket and Standard ML for our computing work.
Dr. Racket
Install DrRacket on your own computer for Racket Programming
Standard ML (SML)
Fall 2020 Term T2: Course Appliance for Running Standard ML
Standard ML is tricky to install in a standalone way on your own computer such that it will work with an editor like Emacs. For this reason, most students should use the csenv appliance, a self-contained virtual machine you can install on your computer. It includes all necessary software tools for this course, allowing you to work while offline.
If you are unable to install the appliance, it is possible to do your SML work via SSH access to the CS server/workstations while connected to the internet. However, in this case, Lyn will need to specially configure your CS server account, so contact him if you plan to use this option. If using SSH, you should plan to use the pure-text interface (learn the Emacs keybindings). Depending on your location and internet connection, sending the graphical interface over SSH is likely too laggy to be pleasant or usable.
If neither option works, please contact Lyn.
Account setup for the CS GNU/Linux server/workstations
A CS account is required for all computing options. Request one if needed (on campus only).
See the GNU/Linux Skills links below or if you are new to the command line.
First-Time Setup
Fall 2020 Term T2: Account setup for the csenv appliance
After installing the csenv appliance,
you must configure the appliance to be populated with a git-controlled
cs251/sml
directory. Do this as follows
-
Within the appliance, you may be prompted to update the Linux Ubuntu operating system. Do not update Ubuntu! It’s important that everyone in class be using the same default version of Ubuntu (18.04).
-
Within the running appliance, create a new terminal window by clicking the terminal icon in the left side menu bar.
-
Within the terminal window, execute the following three commands, one at a time, exactly as they are written (it’s safest to copy/paste them into the terminal) except that you should replace
gdome
in the first command by your own cs.wellesley.edu (tempest) username. In the first command, make sure you include the space and period at the end.u@csenv-s20:~$ scp gdome@cs.wellesley.edu:/home/cs251/download/install-cs251-f20-git.sh . u@csenv-s20:~$ chmod a+x install-cs251-f20-git.sh u@csenv-s20:~$ ./install-cs251-f20-git.sh
-
To verify that the previous step has been successful, launch an Emacs window by clicking on the Emacs icon in the left side menu bar. In Emacs, use the top menu bar to select File>Open File and navigate to
cs251/sml/intro/mydefns.sml
. Verify that your window looks like the following:If this verification step does not work, please contact Lyn ASAP.
Tool References
- GNU/Linux Skills (← start here) for the command line (ignore
drop
), Scott Anderson, Wellesley College- Remote access with SSH:
ssh wendyw@cs.wellesley.edu
- Bash commands, Ruth Anderson, University of Washington
- Some useful Unix commands, Tia Newhall, Swarthmore College
- Remote access with SSH:
- DrRacket Basics (← start here) for Racket programming
- SML/NJ Basics (← start here) for SML programming
- Emacs Basics (← start here) for text editing and much more
- Emacs Reference Card (pdf), Tour, Manual
- A Visual Guide to Emacs – fun illustrated guides, by Sacha Chua
- lots more…