bas+@andrew.cmu.edu (Bruce Sherwood) (01/21/88)
Concerning CT (until recently called CMU Tutor) on micros: There exist experimental versions for the Mac and PC, but they aren't ready for general distribution. The Mac version is quite far along in terms of functionality, offering most of what the Unix-based workstations offer (incremental compiling, italics and other styles represented directly in the source code, integrated graphics editor for generating source code, but not yet the on-line reference manual with mouse-copyable, runnable examples). But the Mac version runs slowly (possibly due to poor code generated by the C compiler we're currently using), it hasn't been made to work with Switcher and MultiFinder, etc. So we aren't ready for real distribution of CT except on Andrew workstations. A number of universities are using CT on workstations. Carnegie Mellon, Vassar, and Cal State Northridge have run workshops for faculty from their own and other universities to learn CT. We have as our highest priority for the next few months producing a robust distributable language and environment for the various machines we currently support or semi-support: Unix-based workstations (RT, Sun, MicroVax running Andrew at present but anything running X11 in the future; Mac and Mac II; MS-DOS PC or PS/2, in the future presumably OS/2). One of the most striking features of CT is that a program developed on one of these machines can run without change on the others, despite different operating systems and different graphics environments. While this kind of compatibility has existed for programs with simple i/o (e.g., a Fortran program that prints a single number as its result), it is unusual for a program which exploits the modern windowed environments to have such high portability. A major factor is that text and graphics automatically rescale to match the available screen or window size. Another major factor is the generic nature of the commands. For example, the menu command creates a pop-up menu on a workstation but a pull-down menu on a Mac. At this time there isn't anything specific in CT for handling video, but on an RT one can read and write the serial port, which is used in the physics department at Carnegie Mellon for data acquisition. (There are a number of interesting research computing uses of CT here.) Presumably one could write library routines in CT using this capability to control a video device. It remains to be seen how much video support should go into the language itself. There is a strong video group within the same organization creating CT, the Center for Design of Educational Computing (CDEC), so we do have a major interest in this area. (See an earlier post from Nick Spies of CDEC.) The group developing CT within CDEC consists of Judith Sherwood, David Andersen, Kevin Whitley, and myself. Judith, David, and I worked together in the PLATO Project at the Computer-based Education Research Lab (CERL) at the University of Illinois for 15 years before coming to Carnegie Mellon. David was the originator of MicroTutor, and the three of us worked on the CERL Cluster system, a local-area-network system whose authoring language is MicroTutor. That system is sold by TDK in Japan. Bruce Sherwood