CAP(ID:441/cap001)Cornell Assemblerfor Cornell Assembly Programming Macro-assembler for Cornell's Burroughs 220 by David J. Waks (while an undergraduate) in 1959 Places References: in [ACM] CACM 6(03) (Mar 1963) view details The next programming advance at Cornell came in the early 1960's, when Professors Richard Conway and William Maxwell of the Department of Industrial Engineering, and Robert J. Walker of the Department of Mathematics wrote an interpretive compiler called CORC, the Cornell Compiler, similar to the widely used BASIC, which was being developed at Dartmouth. Whereas BASIC had a highly structured, formal syntax, CORC was programmed in English statements and was easy to learn and use. Initially written for the 220, and later for the Control Data1604, it increased student usage greatly. Programs submitted before 5 o'clock would be compiled or run during the night, and results made available to the student the next morning. By 1963, approximately 1,000 students were using the computers for coursework. In 1962, the College of Engineering incorporated computer programming as part of the third semester of calculus, and, in the academic year, 1963-1964, 14 credit courses related to computing were offered on campus. Extract: BAC Cornell was one of the founders of the original Burroughs User Group, the Cooperating Users' Exchange (CUE), of which Robert Gordon of Stanford was the first president, and I was the second. This group had large representation among Universities and military research facilities and, through the urging of this group, the next breakthrough in software was achieved. Burroughs Corporation, in early 1961 published and distributed the Burroughs Algebraic Compiler, " a representation of ALGOL for the Burroughs 220 Data-Processing System". As had board wiring and machine language programming, assemblers now dwindled in importance. We had been using the assembler CAP (Cornell Assembly Program), written in 1959/60 for the Computing Center by an undergraduate student, David J. Waks. With the availability of the CAP assembler and the BAC compiler, programming the 220 was greatly facilitated. in Oral Histories - Cornell Computing and Information 2002 view details Instructional Computing More about the Use of CORC Although Lesser provides some interesting information about the use of the Burroughs 220 and the Control Data 1604 computer for course work by students, additional information may provide a better sense of the practices at the time and the load volume generated. When the CORC process started, it could be considered rather archaic?students did not prepare their own input but wrote their programs on specially prepared coding sheets that facilitated both the writing and the transfer to punch cards by professional keypunch operators. Figure 2 gives a sense of the situation. The original caption for this pictorial in a Cornell Computing Center publication circa 1963 was: With the CORC simplified computing language, all Cornell students can make use of the Computing Center. After a student has completed his program descriptions, it is punched on cards by the center staff; run though the computer; then returned to the center laboratory for correction and resubmission by the students when necessary. [...] At the time it was the practice to record initial runs, that is the first run after the program deck was punched by keypunch staff, and the reruns, which were subsequent runs after corrections were made by students and until the program produced the expected results. One measure of the growth is that initial runs increased by 2.5 times from 1962?63 to 1965?66. Reruns showed a four-fold increase over this same period. These increases give witness to the increasing use of the computer in the instructional programs at the university. Extract: CAP The development and production use of CAP was quite an experience. The programmers were initially avid users but then grew more cautious because the program had numerous errors. The current process of alpha and beta testing and field testing was not a routine practice. You wrote a program, you ran it. So with CAP. It was not uncommon for Mr. Waks to come to the Computing Center after his classes, find a number of error complaints, and go to the console and create fixes and a new version, which became the production version at the completion of his time. And so it went! Eventually CAP became more reliable, and an increasing amount of programming was done using it. Extract: CORC, CUPL, PL/C Introduction of PL/C One of the primary languages for introductory computing instruction changed from CUPL to PL/C. Conway and his various associates, who had developed CORC in the early 1960s then CUPL in the late 1960s, now followed with PL/C as the language of choice for this purpose. (CORC was used from 1962 to 1966 on both the Burroughs 220 and the Control Data 1604, while CUPL was used from 1965 to 1969 on both the Control Data 1604 and IBM 360/65.) Adopting PL/C was in keeping with the computing industry trend to adopt the PL/I language for more applications. IBM commissioned Conway13 and his associates to develop a student version of PL/I, which was named PL/C, and provided the initial support that was also supplemented by support from Seimens. The development of PL/C was built on the previous experience noted above as well as new technologies, so when completed it was the first high-performance compiler with advanced error-correcting techniques for a subset of the PL/I language. Once under way, the project was partially funded by income from sales. In 1970–71 more than 100 copies of PL/C had been distributed, and 60 sales had been made. Later in the decade, at its peak, PL/C was used at 250 universities around the world, according to Conway. Members of the team that produced the first PL/C release were Conway, Howard Morgan, R. Wagner, and five graduate students in Computer Science, the principal one being Tom Wilcox. in Oral Histories - Cornell Computing and Information 2002 view details |