Beatrice Worsley (en)

This is a blog post by Amanda Clare, for International Women’s Day 2022. You can find the Welsh version here.

Dyma blog gan Amanda Clare, ar gyfer Diwrnod Rhyngwladol Y Menywod 2022. Cewch ffindio’r fersiwn Cymraeg yma.

Beatrice Worsley was born in Mexico in 1921 but moved to Canada aged 7. After graduating from an undergraduate degree in Mathematics and Physics, she joined the Women’s Royal Canadian Naval Service in 1944 and then did a Masters degree in mathematics and physics at MIT. There, she wrote her Masters thesis “A Mathematical Survey of Computing Devices” and added “with an Appendix on Error Analysis of Differential Analyzers”.

In the early days of computing, computers were very difficult to program. Work was underway to try to simplify the machines, using fewer different components and simpler hardware instructions. Worsley went to Cambridge to learn from Turing, Wilkes, Hartree and others, and to start a PhD that she would finish in Toronto in 1952. Her PhD thesis investigated what would be needed in a universal language (a set of “order codes”) that could be used by any (Class I) machine. However, after analysing what would be needed for different application areas: logic calculations, applied maths and engineering problems, pure maths problems, and payroll or statistical problems, she could see that, for efficiency, each application would actually benefit from using a different set of codes. Counting the minimum instructions needed for different scenarios led her to see that a universal machine code would mean that some applications would then require much more code complexity if using a universal language.

Worsley worked at the University of Toronto Computation Centre and designed a compiler called Transcode, for the Ferranti Mark I machine there. She called the machine “Ferut” (“Ferranti computer at the University of Toronto”) and the name stuck. The machine was notoriously difficult to program natively, but her Transcode compiler helped hundreds of staff and students to write bug-free code. Worsley wrote code to solve a variety of scientific problems such as the analysis of atomic structures, diffusion, decay and other biophysics calculations. She also designed and wrote optimised libraries of subroutines for others to use, including matrix algebra, statistics and floating point arithmetic. Her 1959 paper “Blueprint for a Library” set out her designs for others to read.

Her PhD thesis, entitled “Serial Programming for Real and Idealized Digital Calculating Machines” was one of the first to analyse practical modern computers. Her pioneering work on universal languages and libraries to make programming easier and more efficient has echoes today: we still agree that there is no single most suitable programming language for all applications, and that well-designed, optimised, reusable libraries are still worth their weight in gold for the modern programmer.

For more on her life and works see the excellent article:

S. M. Campbell, “Beatrice Helen Worsley: Canada’s female computer pioneer,” in IEEE Annals of the History of Computing, vol. 25, no. 4, pp. 51-62, Oct.-Dec. 2003, https://doi.org/10.1109/MAHC.2003.1253890

Hannah Dee

Leave a Reply

Your email address will not be published. Required fields are marked *

Post comment