x'2F' (47): The History of Computing Science at the University of Alberta (1996)

posted Jun 27, 2020, 7:39 PM by Jeff Ogden   [ updated Jun 27, 2020, 7:51 PM ]
In IEEE Annals of the History of Computing, Vol. 18, No. 1, 1996, pages 70-76

The History of Computing Science at the University of Alberta
     Keith Smillie recounts personal recollections of how computing
science found a place in the traditional structure of a university

The 1950s-Origins
     Computing began at the University of Alberta long before the first
electronic digital computer was introduced. In 1929 Professor J.W.
Campbell of the Department of Mathematics published a small book
of mathematical tables, some of which he had himself prepared on a
hand calculator. In the 1940s there were only one or two electric
desk calculators in the whole department, although students taking
elementary statistics had access to small Monroe calculators that
were cranked by hand. By 1962 many of the old calculators were almost
om out, and some newer types of hand calculators, probably Odhners,
were purchased. A little later some electro-mechanical calculators and a
few electronic models were purchased.

     The first use of an electronic computer was probably in the
Department of Physics, which in May 1957 established a link with
the Ferranti Computer, known as FERUT, in the Department of
Physics at the University of Toronto. It used World War I1 vacuum
tubes and occupied a large room. Input and output was by five-hole
punched paper teletype tape. The machine had the capacity of one
of today’s programmable pocket calculators but was much less
reliable. Although a crew of eight engineers was required for
maintenance, it could not be depended upon to run without failure
for more than half an hour or so. The Edmonton terminal was a
teletype machine in a closet in the basement of the Arts Building.
The National Research Council paid for the computer time. It was
used one evening a week throughout the summer of 1957 by several
faculty members in the Department of Physics and their graduate
students.

     In the same month that the link was established with FERUT, the
president of the university, Dr. Andrew Stewart, appointed a
“Committee on Electronic Equipment” to make an assessment of
computing needs at the University. In July the Committee recommended
the purchase of an LGP-30 at a price of $40,000 dollars.
The computer was installed in October making the University of
Alberta the third university in Canada to acquire a computer, after
the University of Toronto and the University of British Columbia.

     The LGP-30 was installed in the basement of the Arts Building
but was moved later to the Arts Building Annex. The Computing
Centre started as an open shop with the users doing their own programming.
Technical assistance to users was furnished by students
who gave full-time support during the summer months and part-time
support during the academic year. One of these students was Ursula
Bielenstein-now Ursula Maydell-who became the first full-time
employee of the Computing Centre. In January and February of
1960 Bill Adams, another supporting student, gave one of the first
programming courses at the university consisting of 12 evening lectures
for the Department of Extension on programming the LGP-30.
(Ursula and Bill joined the academic staff of the department after
completing their MSc degrees. Bill retired in 1992 while Ursula is
still a member of the Department.

The 1960s-Formation
     The LGP-30 was managed by the Committee on Electronic
Equipment until November 1960 when Donald B. Scott, professor
of physics, was appointed director of the Computing Centre with a
mandate to offer computing services to the university. By the fall of
1960 the computer was being used 24 hours a day, seven days a
week.

     The university was unable to raise the $240,000 needed to purchase
a used IBM 704 computer from IBM. The Committee on
Electronic Equipment then recommended the rental of the much
smaller IBM 1620 Data Processing System at a cost of $3,126 a
month. The IBM 1620 arrived in May 1961. It was intended primarily
for research while the LGP-30 was to be kept for teaching.
The LGP-30 remained in use until the middle of 1963.   

     After the arrival of the 1620 the Centre continued to be operated on
an open-shop basis. However, as the demand increased a change was
begun to a closed-shop operation with Computing Centre staff operating
the equipment. In April 1963 a completely closed-shop operation
was implemented. The 1620 was replaced during the summer of 1964
by an LBM 7040/1401, and in the summer of 1967 this system was
replaced by an IBM 360/67, which remained in use until the mid-1970s.

     The first courses given and degrees granted were through the
Department of Mathematics. In 1959/60, Mathematics 460:
Numerical Analysis was given. It covered a number of topics in
interpolation, finite differences, linear algebra, and differential equations.
The following year a graduate course, Mathematics 640:
Advanced Numerical Analysis was added. The first course devoted
to computers was Mathematics 641 : Automatic Digital Computers
and Programming, which appeared for the first time in the 1961/62
calendar. It covered a variety of topics in number systems, logic,
computer design and organization, and programming. A prerequisite
was some knowledge of elementary coding, and during the course
students were required to solve several problems on the computer.
These three courses were given by John McNamee of the
Department of Mathematics. By the 1963/64 academic year in addition
to these courses the staff of the Computing Centre gave a total
of five courses to students in Mathematics, Commerce and
Engineering as well as a number of non-credit courses for university
staff and for the Department of Extension. Also by 1964, eight
graduate students studying in the Computing Centre had been
awarded MSc degrees in Numerical Analysis through the
Department of Mathematics.

     During the 1963/64 academic year the members of the Computing
Centre finally convinced a sometimes doubting Faculty of Science
that a separate department was needed, and the Department of
Computing Science came into existence on April 1, 1964 with Don
Scott being appointed department head. The choice of the name
“computing science” instead of the more common “computer science”
was intended to indicate that computing rather than computers
was to be the foundation of the discipline.

     Initially there were five faculty members in the department. In
addition to the courses mentioned previously, there was Computing
Science 300, a Fortran programming course for engineers, and
Statistics 256, an elementary introduction to probability, statistics
and numerical analysis. The first introductory programming course
for computing science students, Computing Science 3 10: Elements
of Programming, appeared in the 1965/66 Calendar. The following
year the BSc degree with Honors in Computing Science was listed
in the calendar along with course descriptions of eight courses.

     The first MSc degree granted by the department was conferred in
1964. The first BSc in Honors Computing Science was awarded in
1968, the same year that the department’s PhD program was
approved. The first PhD degrees were awarded in 1973. During
these years several new faculty members were recruited, some of the
original members left, and by the end of the decade the faculty had
increased to 18.

     During the late 1960s the role of computing began to change at
the university. The Computing Centre had been formed to provide a
service to the university while the Department of Computing
Science was an academic department in the Faculty of Science and
offered its own courses and degrees.

The 1970s-Consolidation
     In 1970 the Computing Centre became a separate organization
under a director reporting to the academic vice-president. The
Department of Computing Science became a user of the computing
facilities as was any other department in the university. The separation
of the Department of Computing Science from the Computing
Centre was intended to make clear to the university the distinct functions
of each organization and to improve the administration of each.
Unfortunately, all of the equipment and most of the support staff were
assigned to the Computing Centre. Thus one of the most urgent tasks
for the Department in the 1970s was the acquisition of computing
equipment to handle the teaching and research, which could not be
done on the computer now administered by the Computing Centre.

     Don Scott was succeeded as chairman in 1971 by John Penny who
served as acting chairman for one year. In the summer of 1972
Arthur Wouk, a numerical analyst from Northwestern University,
became chairman. In 1976 John Tartar was appointed acting chairman
for one year then became chairman for a five-year term.

     Very few new faculty were recruited in the 1970s. In the 1979/80
academic year there were only 16 faculty consisting of five assistant
professors, nine associate professors and two professors. The number
of courses increased during the same period from 51 in the
1971/72 academic year to 71 in the 1979/80 year with most of the
increase being in senior undergraduate and graduate courses. In
addition, throughout this period there was a dramatic increase in the
number of students taking not only undergraduate and graduate
courses leading to degrees in the department but also service courses
intended for students in other departments and faculties.

     During the 1970s the department continued to use the computing
equipment in the Computing Centre for teaching and research while
at the same time acquiring a number of minicomputers of its own.
By the end of the decade the department was operating over a dozen
computers ranging from very small machines such as the PDP-8 to
the PDP-11/45 and the Nanodata QM-1. Also a Minicomputer
Laboratory with a microprogrammable computer was established to
introduce students to different computer architectures. The
Minicomputer Laboratory was discontinued in the early 1980s when
microcomputers became available and there was much less need to
study differences in computer architecture.

The 1980s–Growth
     Total enrollments in all computing science courses increased from
2,348 in the 1977/78 academic year to 4,590 in 1981/82. AU requests
for the additional resources obviously required to meet this increasing
demand for courses and for the supervision of graduate students were
unanswered, and in June 1981 John Tartar resigned with one year left
in his term as Chairman, feeling that it was futile to continue.

     Wayne Jackson was appointed acting chairman for a one-year
term, taking over a thoroughly dispirited department, the staff of
which could find little solace in the realization that many other computer
science departments in Canadian and US. universities were faring
similarly. During the summer Wayne prepared a report summarizing
the department’s position and the resources that would he
required for the department to meet its commitments. One graph
showed that total weekly student hours per term per faculty member
for the years from 1970 to 1981 had increased almost exponentially
for Computing Science over the last part of the range, whereas the
hours for the Faculty of Science and the University declined over
parts of the period except for a slight increase in the last year. The situation
in the department continued to worsen, and at the end of the
1981/82 academic year all four faculty who had joined the department
in 1980 left.

     Lee White intensified the vigorous recruiting program begun by the
two previous acting chairmen. Soon new faculty were being attracted
to the department, with four coming in 1983, five in 1984, three in
1985, and seven in 1986. By 1989 there were 16 assistant professors,
seven associate professors and eight professors in the department.
By the late 1980s the department was occupying all of the sixth
floor of the General Services Building, most of the third floor of
Assiniboia Hall, and a dozen or so offices on the fourth floor of the
Central Academic Building. In addition, a few graduate students were
accommodated in the Printing Services Building. This dispersal of
staff created serious problems in communication and morale, which
were alleviated somewhat by the increased use of electronic mail.

     During the 1980s enrollment in courses in the department continued
to grow. Computer Science became increasing popular as a discipline,
and the development of the personal computer in the early
1980s made computer literacy the current educational fad. In 1984
the number of students entering the second year of the Honors and
Specialization programs was limited to 110 a year. In 1988/89 limits
had to be placed also on the enrollments in service courses.

     Two new academic programs were introduced in 1992. The first was
the Industrial Internship Program, which allowed students at the end of
their third year to spend 16 months in private industry before entering
their final undergraduate year. It differed from other cooperative programs
m providing an uninterrupted 16 month period of employment.
The second new program was the Master of Science (non-thesis), which
differed from the MSc program in that there was more course work and
an essay rather than a thesis. It is intended for persons wishing more specialized
training after a first degree before entering the work force.

     In the 1990s the department has tried to publicize its activities to
former and prospective students. Among the publications are two
intended to attract students to the undergraduate program-a small
brochure entitled Department of Computing Science and a booklet
Computing Science Undergraduate Program, which describes the
undergraduate program in detail-and an 88 page booklet for
prospective graduate students, Computing Science at the University
of Alberta, which summarizes current research in the department.
The annual Direct Access is intended for alumni and reviews current
work and gives profiles of present and previous faculty.

Teaching and Research
     At the time the Department of Computing Science was formed in
1964 there were eight credit courses and a number of non-credit
courses. The emphasis in teaching and research was, in addition to
programming languages, in such areas as numerical analysis, optimization,
statistical analysis and algorithms, and logical design
Thus the undergraduate degree could be considered to be a major in
mathematics with a minor in programing.

     The first seven MSc degrees of the early 1960s before the department
was created were designated Master of Science in Numerical
Analysis, and were awarded through the department of Mathematics
Although the thesis topics for many of the first MSc degrees awarded
by the department of Computing Science were in numerical analysis,
an increasing number were on topics in the implementation and
use of programrming languages, computer graphics, and operating
systems. As more faculty were added to the department during the
late 1960s and the 1970s, the range of topics became broader and the
number of graduate degrees granted increased.

     The undergraduate curriculum changed very little during the
1970s; however, fundamental changes were made during the 1980s.
Not only did the new faculty who came during this period introduce
courses in their own specialties, but the curriculum committee was
influenced by computer science programs in Canadian and U.S. universities
and by the curricula developed by the the Institute of
Electrical and Electronics Engineers and the Association for
Computing Machinery. By the end of the decade, the curriculum
covered analysis of algorithms, artificial intelligence, compiler construction,
computer graphics, computer organization, data base management,
data structures, discrete mathematics and logic, file management,
image processing, introductory programming, logical
design, numerical methods, programming languages, simulation,
switching theory, systems programming, and telecommunications.

     For many years the Specialization Program consisted of four streams:
  • Computer Design,
  • Business Applications,
  • Scientific Applications, and
  • Software Design.
     In 1987 the accreditation study of the Honors and
Specialization programs by the Canadian Information Processing
Society suggested that these streams imposed too great a constraint
on students’ programs. On the recommendation of the curriculum
committee the department abolished the streams and
relaxed some of the requirements to allow students more flexibility
in the selection of courses.

     The Instructional Support Group was established in 1987 to
provide and maintain adequate laboratory facilities for courses.
This included the selection and training of teaching assistants,
organization and supervision of laboratories, assistance with the
preparation of assignments and laboratory materials, and assessment
of future hardware and software requirements. This group
continues to contribute significantly to the quality of instruction in
the department.

     During the 1980s the department set up joint programs with other
departments and faculties. In 1980 a Computer Engineering program
was established jointly with the department of Electrical Engineering
to provide students with a good background in software topics such
as programming languages, data structures, and file management as
well as hardware topics such as electronics, digital logic, and microprocessors.
The program was accredited by the Canadian Council of
Professional Engineers in 1983. A Specialization program in Geo-
Information Processing and Mapping was set up jointly with the
Department of Geography in 1985 to give students an expertise in the
application of computer science to cartography together with the necessary
background in mathematics, statistics and geography. This
program was terminated during the 1988189 year.

     Although there was cooperation between faculty with similar
research interests, there were few formal working arrangements and
no visible signs in the department of the types of research being
undertaken. During the 1980s a number of research groups were
established to promote cooperation among faculty with similar
research interests and to establish laboratories where they could
work with their students. The following listing of the research
groups at the beginning of the 1990s may give some indication of the
research being undertaken in the department:
  • Artificial intelligence
  • Computational complexity, algorithms and formal systems
  • Computer graphics
  • Computer vision and image processing
  • Database systems
  • Distributed systems
  • Networks and distributed operating systems
  • Numerical analysis
  • Programming languages and methodologies
  • Robotics
  • Software engineering
----------------------------------------------------------------------------------------------
One graph showed that total weekly
student hours per term per faculty
member for the years from 1970 to 1981
had increased almost exponentially for
Computing Science over the last part of
the range.
----------------------------------------------------------------------------------------------

     The department has received international recognition for its
work in computer chess and checkers. The World Computer Chess
Championship, held in Edmonton during the 1989 National
Conference of the Canadian Information Processing Society, was
organized by Jonathan Schaeffer and Tony Marsland. Jonathan’s
program Phoenix was in the top 10 programs competing. A checkers
program, Chinook, developed by Jonathan Schaeffer assisted
by Joe Culbertson, Duane Szafron and a number of students came
second in the United States National Open tournament in 1990
and thus became eligible to compete for the World Checkers
Championship. In this 40 game match held in London, England in
August 1992, Chinook lost to the reigning world champion by
only two points. The department worked for several years with the
department of Computer and Information Science of the Harbin
Shipbuilding Engineering Institute in the People’s Republic of
China, and in 1987 the two departments signed a formal agreement
to provide for better cooperation and for the exchange of
information.

     In 1988 an agreement was reached between the University of
Alberta and the All-Union Research Institute for Systems Studies of
the USSR Academy of Sciences for a four-year cooperative program
in artificial intelligence and data bases. The main areas of research
were heuristic methods of search, hierarchical data bases, and
knowledge representation.

     The department has always taken an active part in the Canadian
Information Processing Society, which has established several
awards to students in the department. These are the Donald B. Scott
Memorial Prize, which has been awarded since 1976, and the
Computing Science Award and the CIPS Scholarship, which have
been given since 1988. Profits from local conferences have helped
support these awards since 1986.

Hardware
     The LGP-30, which was purchased in 1957 for $40,000, weighed
800 pounds, occupied 22 cubic feet and required a floor area of eight
square feet. The original installation consisted of the computer with
a Flexowriter, a photoelectric paper tape reader, a paper tape punch,
and an additional Flexowriter for the preparation of program and
data tapes. The computer contained 113 vacuum tubes and 1,350
diodes. The recommended air conditioning was 1 1/4 tons for the
equipment, an operator and two observers. (It was not stated what
the observers were supposed to be observing.) Storage consisted of
a magnetic drum with a capacity of 4,096 thirty-two-bit words. The
clock speed was 120 kilocycles giving addition and multiplication
times, inclusive of storage access, of 8,750 and 24,000 microseconds,
respectively. The internal operation was binary so that all data
had to be converted from decimal to binary on input and all output
from binary to decimal.

     The IBM 1620 Data Processing System purchased in 1961 had
20,000 characters, expandable to 60,000 characters, of core storage
and a paper tape reader and punch, which allowed input and
output at rates of 150 and 15 characters per second, respectively.
It was replaced later in the year by a new 1620 with a card reader
and punch with speeds of 250 and 150 cards a minute, respectively,
which was upgraded the following July with three IBM 7330
magnetic tape units. Arithmetic was performed on binary-coded
decimal numbers of variable length. Addition, subtraction and
multiplication were done by table lookup while division was by
either a subroutine or an “automatic divide” feature. The times of
arithmetic operations depended on the lengths of the operands,
and for addition and subtraction on their signs and relative values.
The addition of two 10 digit numbers took from about 1,000 to
1,800 microseconds and their multiplication about 17,000
microseconds. The original IBM Fortran I1 compiler was soon
replaced by the FORGO “load-and-go” compiler and other programs
available through the SHARE library. In 1963 the
University of Alberta 1620 Tape System, written by Peter
Csontos, Ron Davis and Barry Mailloux, was introduced. This
system included the GO monitor, which allowed for job-to-job
transition without operator intervention.

     In order to meet the increasing demand for computing time an
IBM 7040/1401 was installed during the summer of 1964 and the
1620 was phased out during a three-month period. The new system
consisted of a central processing unit with 32,768 words of core
memory, six magnetic tape drives augmented later by more tape
drives including those from the 1620 when that system was no
longer used. Additional peripheral equipment obtained included a
1401 central processing unit with 4,000 characters of core memory,
a 1402 card reader and punch with reading and punching speeds of
800 and 250 cards per minute, respectively, and a 600-line-perminute
1403 printer. The 7040/1401 system was controlled by a
supervisory program, which handled the scheduling of jobs and the
generating of accounting information.

     The use of the 7040/1401 increased so rapidly that in the summer
of 1967 an IBM 360/67, which allowed time sharing, was installed
and upgraded several times during the next few years By November
1969, the system had a total of 768,000 bytes of core storage, a
drum, two disk units each with eight discs, eight tape drives, a CDC
GRID display for interactive graphcs, two printers, two card readers
and punches, and 56 terminal ports Several different operating systems
were available for the 360/67 including IBM OS, which was
used together with the Houston Automatic Spooling System HASP,
in whch input jobs were read onto a disk, then processed according
to priority, and the output stored on a disk for subsequent printing
Another important system was the student-oriented batch facility
(SOBF) developed by the Computing Centre, which allowed students’
programs to be processed much more efficiently and quickly
than was possible before Students were issued “SOB tickets,” each
valid for one run. Those who used up their allotment of tickets could
purchase “SOB balls,” each costing a nickel and equivalent to one
ticket, made of translucent plastic and despensed by a gum-ball
machine, which had been bought at an auction The SOB Facility
was used very heavily with up to 100 persons out of the 2,700 possible
users waiting to submit program decks or pick up output at any
one time.

On January 1, 1971 the Michigan Terminal System MTS was
adopted as the principal operating system for both terminal and
batch work, and on April 1 of the same year a charging system was
introduced for all users of the MTS system. The IBM 360/67 continued
to be upgraded with additional printers and tape drives and by
the end of 1974 was operating at full capacity. A year later it was
replaced with an Amdahl 470 V6, which itself was upgraded and
then replaced with an Amdahl580 Changes in university computing
facilities during the latter half of the 1970s, which had a significant
influence on the department include the acquisition of better hardcopy
terminals and of display terminals, the installation of an optcal
mark reader and laser page printers, and the replacement during the
1979/80 academic year of the SOB Facility by terminals.

     The first computer acquired by the department of Computing
Science itself as distinguished from the Computing Centre was a
used Digital Equipment Corporation PDP-9, which was purchased
in 1970 for $19,700 dollars This system had 8K of 18-bit memory,
an Extended Arithmetic Element to speed up multiplication, division
and shifting, a teletype console and oscilloscope display, a
paper tape reader and punch, and a card reader The cycle time was
one microsecond; addition required two cycles Two 256K fixedhead
disks having an average access time of 17 milliseconds were
added shortly, and a Sykes Compucorder 100 cassette tape drive
was added in 1972. The PDP-9 was used for a large number of small
projects as well as for research in image processing, which was
moved to the PDP-11/60 in 1977. The hour meter, which registered
6,634 hours when the PDP-9 was purchased, was at 15,993 hours
when it was sold in 1980.

     In January 1973 a PDP-lU45 costing $45,000, of which $18,000
represented all of Tony Marsland’s research grant, was installed. The
system had a 16K core memory, a removable disk of 1 2M words, a
card reader, and a Centromcs dot matnx printer Tony proposed replacing
the DOS-11 operating system with the UNIX operating system
developed by the Bell Laboratories One reason for obtaining UNIX
was that it would enable hm to match the Belle chess program developed
at the Bell Laboratories on the PDP-11/45 aganist h s own program
Wita, whch ran under MTS on the IBM 360/67. The fourth edi-
tion of UNIX was shipped to the university in October 1973; it is
believed to be the first version of UNIX used outside of AT&T. The
PDP-I1/45 was for some persons the most significant of the department’s
computers. On January 14, 1986 at 253 p.m. it registered
100,000 hours of use, an event marked by an appropriate celebration,
after which it was formally retired. The PDP-11/45 was kept in the
department in recognition of its important role in teaching and research.

     In 1974 the department purchased at a cost of $250,000 dollars a
Nanodata QM-1, which was developed at the University of Buffalo
as a universal microprogrammable computer. The original intention
was to use the computer to emulate each of several minicomputers so
that programs developed on this computer could he run on minicomputers.
The emulators were never developed however, and the QM-1
was used for research purposes, one of which did involve the emulation
of the PDP- 11. The QM- 1 was retired in 1984, never having been
used to its full capabilities, and still remains in the department.

     Late in 1975 Bill Adams and Keith Smillie took delivery of an
IBM 5100 minicomputer for use in their research and teaching in
APL. The 5100 was a small computer by the standards of the day,
measuring 17.5” by 24” by 8” and weighing 48 pounds. The cost
including a printer was $1 8,300. It had an attached keyboard, a small
screen allowing 16 lines of 64 characters, a memory of 16K bytes
expandable to 64K bytes, a tape unit for permanent storage, and a
communications adapter, which allowed the output to be displayed
on a television monitor. The system fit conveniently on the top shelf
of an audio-visual trolley with the printer on the bottom shelf. This
system was used effectively for several years both in the classroom
for teaching and in the office for course preparation and research.
(The IBM 5100 was followed by the IBM 5150 and IBM 5160,
which were better known as the IBM PC and the IBM XT.)

     By 1980 the computers purchased from Digital Equipment
Corporation-there were several in addition to the PDP-
11/45-were presenting serious problems due to limited storage
capacities and sixteen-bit word length. They were replaced in the
early 1980s by four VAX 11/780s, each with a speed of 1 million
instructions per second, 10 megabytes of main storage and one
gigabyte of disk storage. They were called Pembina, Cadomin,
Cave11 and Jasper. In addition a VAX 11/730 was acquired, and
named Miette. Other computers obtained by the department during
the 1980s included two Sun-1 workstations which were the
second and third workstations in Canada, and a MIPS MI1000
with a speed of about 10 million instructions per second, 32
megabytes of main storage and one gigabyte of disk storage. An
Imagen laser printer, one of the first in Canada, was obtained in
1982. When some of the department moved to Assiniboia Hall, an
AppleTalk network with an Apple Laserwriter was set up to
accommodate the printing needs there. The introduction of the
IBM Personal Computer in 1981 and the Macintosh in 1984 had a
considerable impact on all aspects of the work of the department.
Soon each faculty office was equipped with either a workstation
or a microcomputer (usually a Macintosh), or both, which were
used for programming, electronic mail and document preparation.
Two AppleTalk networks were established for the Macintoshes,
one in the General Services Building and the other in Assiniboia
Hall, which were connected by a fibre optic Ethernet link. In addition
to personal computers the department has also purchased a
large number of Sun workstations, linked by an Ethernet.

Software
     Programming for the LGP-30 was done in machine language
using an order code of 16 one-address instructions, each with a one
character operation code followed by a four-digit decimal address.
Arithmetic was carried out with one operand in the accumulator

----------------------------------------------------------------------------------------------
The computer contained 113 vacuum
tubes and 1,350 diodes. The recommended
air conditioning was 1 1/4 tons
for the equipment, an operator and two
observers. (It was not stated what the
observers were supposed to be observing.)
Storage consisted of a magnetic
drum with a capacity of 4,096 thirty-twobit
words.The clock speed was 120 kilocycles
giving addition and multiplication
times, inclusive of storage access, of
8,750 and 24,000 microseconds,
respectively.
----------------------------------------------------------------------------------------------

register and the other operand in the specified memory location.
The introductory paragraph of the 56 page programming manual
was entitled What is programming and contained such interesting
statements as “Programming the Royal Precision LGP-30 is basically
simple. Understanding certain problems requires certain
knowledge, however programming for the LGP-30 does not.”
(Many persons undoubtedly disputed these statements as they read
further.) A description of the structure and programming of the
LGP-30 was preceded by a discussion of organizing calculations on
a hypothetical desk calculator. The remainder of the manual was
approximately evenly divided into sections on the structure of the
programming, number systems, input-output procedures, and a
summary of the order code. There was a reference to an “LGP-30
Subroutine Manual,” which presumably contained programs for
input and output, number conversion and trigonometric functions.

     Programming for the 1620 could be done in machine language, a
symbolic programming system, SPS, or Fortran. There was also an
IBM library of utility routines, which performed “most of the more
standardized computations and routine tasks occurring in many computer
problems.” Since the Fortran language was relatively new, it
was introduced in the manual as follows:

           Fortran is the term applied to another IBM programming system
      that translates a problem, expressed as a series of algebraic
      statements, into a complete machine language program, generating
      the step-by-step instructions necessary to solve the problem.

Some of the software packages used on the 7040/1401 system in
the mid-1960s were MAP (machine assembly Program), Fortran II
and Cobol compilers, an ALGOL compiler from the University of
Grenoble, the LP I11 linear programming system, the BMD
Biomedical Statistical Package, and the AGGIE student Fortran I1
compiler, which was soon replaced by WATFOR from the
University of Waterloo. One system implemented at the University
of Alberta was a simulator for the MENTOR and MENTORSAP
languages which were used briefly to teach simplified machine language
and assembly language programming.

     Basic played a minor role in the department until personal computers
came into use in the mid 1980s. Neither the first Basic interpreter that
was available in the 1960s nor Waterloo Basic, which replaced it in the
early 1970s received much use. However, in the 1980s a subset of Basic
emphasizing structured programming concepts began to be taught in
some courses. The Fortran language has been in continuous use since it
frst became available at the University of Alberta on the IBM 1620.
Fortran II was soon replaced by various implementations of Fortran IV
including WATFOR and WATFIV from the University of Waterloo and
other versions more suitable for production work, and finally by Fortran
77 in the 1980s. Fortran was used for a number of years as the fmt conventional
hgher-level language in all courses. Only in the past year has
it been replaced by Pascal in ENCMP 100 Computer Programming for
Engineers, which is taught jointly with the Faculty of Engineering.

     In about 1970 Algol W replaced Fortran as a first language for
computing science students. It was used throughout the 1970s when
it was then replaced by Pascal, ‘which was used as an introductory
language until 1994 when it was replaced by Modula-2. Both Algol
W and Pascal not only encouraged the use of structured programming
techniques but also introduced the notion of a formal description
of a programming language.

     TEXTFORM, an extremely large, complex and even cumbersome
word processing and typesetting package implemented by the
department of Computing Services was used in the late 1970s and
early 1980s. Although primitive when judged by today’s standards
for word processors, it was used by countless numbers of faculty,
staff and students throughout the University and provided almost all
of them with their first introduction to word processing. The introduction
of the personal computer in the 1980s had a profound effect
on the teaching and practice of programming. The implementation
of a language became a programming environment consisting of a
compiler or interpreter, or both, together with an editor, debugging
tools, program library, online help and tutorial. Many students purchased
or had access to computers and could do many of their
assignments independently of the University’s computing facilities.

Acknowledgements
This paper is a condensed version of a monograph, Computing
Science at the University of Alberta 1957-1993
, which was prepared
by the author in conjunction with celebrations held in the
department of Computing Science in October 1993 to honor 25
years of the awarding of the Honors BSc in Computing Science. He
would like to thank the many faculty, staff and students who assisted
in the preparation of this publication. He would also like to
thank Eric Weiss who prepared the first draft of the present paper.

     Keith Smillie
     Department.of Computing Science
     University of Alberta
     Edmonton, Alberta T6G 2A4
     smillie@cs.ualberta.ca


                                           &

Comments