PLANIT: The Portable CAI System by Charles H. Frye* The first prototype of PLANIT was put into operation early in 1966. With it one could author and dispense typical CAI lesson senarios with particularly good facility in numerically-oritented lesson materials. Five years ago the PLANIT group was proposing a machine independent operating system for CAI that could easily be installed on any garden variety computer hardware and be used to implement PLANIT language in time-shared fashion for the authoring and dispensing CAI. In contrast to the prototype PLANIT, the new portable version was to be a complete system including all the necessary pieces for production CAI. To include only a lesson authoring and execution capability would hardly qualify to be called a system in the terminology of most computer centers. They also want such capabilities as file maintenance and backup, program maintenance, user accounting, device allocation, etc. Thus, PLANIT is much more than just a CAI language. Confidence was lacking at the outset that the development of a truly portable CAI system could be achieved. One widely respected systems expert gave the project less than ten percent chance of success. Others said that PLANIT wold not be alive at the end of the five-year period. It is to the credit of the National Science Foundation that they continued to believe that the goal was attainable. Today, the proposed PLANIT system has been completed and is being tested and used at a number of sites. PLANIT has been installed on a wide variety of hardware, including CDC 3170, 3300 & 6500, DEC 10, Honeywell 200, IBM 360/40, 360/67 & 370/155, Siemens 4004 & 155, Telefunken, Univac 1108, and XDS 940, some under existing time-sharing systems and others under batch. One version runs side-by-side with a spooling system, HASP. It was promised that PLANIT would run 20 terminals in no more than 256,000 bytes of core -- it is now running more in less space. In at least one case it ran 12 terminals in 72,000 bytes of core. Being completely modularized, it can be configured to the core that is available. The installation cost was promised to be in the range of $10,000 to $20,000. Purdue University recently completed a study in which PLANIT was installed on their 6500 and run for a week long pilot study during which 56 PLANIT users ran an average of 49.8 minutes each. They reported a total installation cost of about $1300 requiring about 147 hours of programmer time. Others have also confirmed that the original estimates for installation were unnecessarily high. On the question of consumptiveness, Perdue reported several statistics based on their pilot study: 1. Throughput was apparently unaffected by the operation of PLANIT. Average jobs per hour for the week of pilot study was 434 compared to an average of 421 for the week prior and 445 for the week following. 2. PLANIT required approximately 1/5 of available core while it was compressing a user, consuming an average of 4.15 seconds of CPU time per 50-minute period (reflecting the expected low CPU usage for CAI). 3. Terminal/hour costs ranged from $2.08 to $2.25, using Purdue's standard charging algorithm. It has been observed that because PLANIT uses FORTRAN in the installation process, the result must surely be inefficient especially since such a simple subset is used to implement complex system functions such as scheduling and cataloguing. While it is true that machine language would run faster, two things should be kept in mind: 1. Contrary to all other transfer methods short of recording, PLANIT execution efficiency will not suffer when the system is moved from one computer to another. 2. Typical CPU usage is very low for CAI such that small differences in efficiency will have only marginal effect. There is no efficiency loss in use of space and peripherals where the CAI investment is high. At once site in particular there is little doubt that PLANIT is being used as a production system -- the University of Freiberg in West Germany has been using it in that fashion for more than a year now with a daily operating schedule, courses being taught for credit and authors hired full-time Being first, they experienced more than their share of problems but they report the system has operated quite reliably for the last several months. The PLANIT system is an interpreter -- intentionally so. This means that lesson material is stored internally in original typed (or keypunched) form and the keystroke characters are deciphered on-the-fly as the lesson is dispensed to students. There are those who talk about interpreters as though their existance is justified only because the developer did't know how to build a compiler. In the event that this opinion might still persist, consider the following as some advantages of an interpreter: 1. Interpreting enables certain options in the language which would be difficult or impossible to compile and, since CAI is normally concerned with a user community who is new *** *Dr. Frye is the originator of the PLANIT system and is currently project director of the PLANT project at the Northwest Regional Educational Laboratory, 710 SW Second Ave., Portland, OR 97204.