Skills

At Control Data

During my nearly 18 year career at CDC, I did operating system integration, driver development (tapes mostly), operating system application (similar to ScanDisk on Windows), compiler development, client/server applications and e-mail system integration.

A lot of the code that I wrote was written in an extended version of Pascal called Cybil. When I worked on the C compiler we used our own compiler for the front-end code. The Macintosh and PC client code was written in C. The e-mail system integration involved writing long (3K lines) Perl scripts.

The compiler projects started with a common code generator that was used for Fortran and Cobol compilers. Later we added Pascal and Basic compilers. The code generator did global optimizations for Fortran. An optimization that I implemented strictly on my own design and code was the loop unroller. At this time, the Fortran compiler was the most important compiler at Control Data. A new Fortran compiler project was supposed to take over from the compiler that I was working on and the new project got far more funding and had many more people working on it than my project. However, we were able to consistently beat the new compiler in generated code scalar performance (as measured by the Livermore Loops programs). At the same time, our compilation speed was orders of magnitude faster. This battle was a lot of fun because we were able to compete and be judged in a very objective way. At the same time, our compiler had hundreds of customers while the new compiler was just starting to ship.

Another project used a Control Data product called Open Hub. As part of the implementation of this product (an X.500 e-mail directory), a number of Perl scripts had to be written to synchronize the e-mail directories. These Perl scripts were up to 3000 lines long. I later used my Perl expertise to solve minor problems. Open Hub ran on different flavors of Unix but most of my experience was on Solaris.

Control Data was very interested in the client/server area in the early 1990's. One project I was on involved creating several reports in Crystal Reports and displaying them with a Visual Basic application. Visual Basic was also used to create a demonstration that was used at conferences and was written up in a piece of sales collateral. One other project was created in house and used Visual FoxPro.

While at Control Data I wrote a newsletter for the C compiler project. The purpose of this newsletter was to let the Control Data community know what was happening with C at Control Data. I also wrote 3 articles for a journal called "The Journal of C Language Translation". This journal was produced by Rex Jaeschke, a friend from the ANSI C++ committee that we both served on.

Back to the résumé