Kateryna L. Yushchenko — Inventor of Pointers
While according to history Harold Lawson is credited with the invention of pointers in 1964 for the programming language PL/1, it was Kateryna L. Yushchenko who came up with this idea back in 1955 when she created the Address Programming Language (Адресна мова програмування). Sadly, little is know in “The West” about the Address Programming Language, since most of its text books are in Russian.
Who was Kateryna? She was born an 8th of December, but almost a hundred years ago, in 1919. She’s a native of the city of Chigirin, Ukraine. She studied at the Ukrainian Academy of Sciences, where she did her post-graduate studies. She was the first woman in the USSR to obtain a PhD of Physical and Mathematical Sciences in programming. The path to her PhD wasn’t easy though.
In 1937 she got expelled from the Kyiv University, because her father was accused of being “enemies of the people”. She applied to the university of Moscow and got accepted, but couldn’t start studying there, since they didn’t provide lodging.
She didn’t quit, she kept trying, and moved to Uzbekistan, enrolling at the university in Samarkand. Nothing was going to stop her from learning mathematics. She even got a job in a factory that produced sights for tanks during the war!
It was only after the war that she returned to Ukraine, where she could continue her studies and earn a PhD.
Director of the Institute of Computer Science
In 1950 Boris V. Gnedenko, a former boss of Kateryna, was appointed as a full member of the Ukrainian Academy of Sciences. His new office was based in the Kyiv Institute of Mathematics. As soon as he moved there, he invited Kateryna to join him.
Starting in 1950 Kateryna became a Senior Researcher at the Kyiv Institute of Mathematics. There she had the chance to work on the MESM computer, one of the first computers in continental Europe. After seven years, in 1957, she was appointed Director of the Institute of Computer Science.
At the Computer Science Institute she worked on the Address Programming Language, writing books about it. In 1961 she co-authored the book “Elements of Programming” (Элементы программирования in Russian). The book was used all across the USSR and countries from the Eastern Bloc.
A tireless mentor, she supervised 56 PhDs!
A Woman Missing her City
Despite all her achievements, it’s hard not to empathize with the young Kateryna, wandering across Eastern Europe, with her family wrongly accused, and in jail. Still, she persisted, but she never forgot her hometown, as she wrote in this poem called My City:
And though I don’t neither Plank nor Bernstein,
I’ve studied their works, not seeing sun’s shine,
I’ll never forget you, I’ll come there once more,
As soon as we crash the spine of our evil foe.
I hope, my dear city, that you understand,
I’ll meet you again, when I’m back, in the end.
Who Invented Pointers, anyway?
According to this article, it was Andrey Kolmogorov, the Soviet mathematician, who first described them in the paper To the Definition of an Algorithm. The modern idea of pointers and how we came to know them in programming languages obviously comes from Harold Lawson. He received an award from them by the IEEE. There’s no discussion about that. Lawson got the award, because he made them part of the syntax of a language in PL/1 back in 1964.
But, at the same time Yushchenko created the Address Programming Language in 1955, which also could use addresses in analogous way as pointers. It’s really possible that back in the ’60s nobody knew in the western countries about the work of Yushchenko and her colleagues, and that was how things were back in those days of the cold war.
So who invented pointers? Apply your favorite criteria and decide for yourself.
Advent Calendar — Help us make it a book!
From December 1st until December 24th we plan to release one article each day, highlighting the life of one of the many women that have made today’s computing industry as amazing as it is: From early compilers to computer games, from chip design to distributed systems, we will revisit the lives of these pioneers.
Each article will come with an amazing illustration by @SebastianNavasF.
If you want to see these series to become a book with expanded articles and even more illustrations by Sebastián, then subscribe to our newsletter below.
Credits
- Illustration: Sebastián Navas
- Thanks to αλεx π for telling us about this amazing woman from Ukraine.
References:
- Kateryna L. Yushchenko: http://en.uacomputing.com/persons/yushenko/
- Prominent Programmers of the USSR: Kateryna L. Yushchenko. (in Russian) https://habr.com/company/ua-hosting/blog/387837/
- https://en.wikipedia.org/wiki/Kateryna_Yushchenko_(scientist)
- http://en.uacomputing.com/persons/yushenko/