This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new Linux.com!

Linux.com

Feature: Open Source

GHC developer Simon Peyton Jones on working for, gasp!, Microsoft

By JT Smith on July 03, 2001 (8:00:00 AM)

Share    Print    Comments   

- By Julie Bresnick -
Open Source people -
When Glasgow Haskell Compiler programmer Simon Peyton Jones says he used to spend Thursday afternoons programming the Elliot 803 at a Polytechnic University in Swindon, UK, it sounds a lot more dignified than, say, a couple of teenage geeks getting excited about making a room-size hunk of machinery sort numbers.
Says Peyton Jones, who now straddles the Open Source and closed-source worlds as a GHC programmer and a Microsoft employee: "I was about 17. We wrote programs to play NIM and to display the results of our physics experiments from school, and we experimented with recursion or sorting, basic programs. [The Elliot 803] didn't do applications.

"It was the size of half a dozen large washing machines. It had an operator in a white coat, and you programmed it by typing Algol programs onto paper-tape using tape punch machines and then you fed it into the machine. This was all very exciting. It was a high level language, not just a hundred locations of machine code. And after a bit the operator got to know that we would come on Thursday afternoons, and she would go away because nobody else was using this machine and she realized we could operate it perfectly well.

"You had to build very precisely, but then it would do what you said very quickly and very repeatedly. I would spend a long time preparing for these afternoons in Swindon."

His private (which is called "public" in England) secondary school had one of IBM's first school computers, and Peyton Jones approached this 1972 version of a desktop without trepidation.

"It was built out of cast-off parts from a mainframe. It had no permanent storage at all, no discs, no nothing, just its RAM and 100 memory locations." He laughs, a stately version of a Santa laugh. "And you had to program it in machine code all the time. It's an amazing machine, really. I became very adept at slipping programs into small numbers and memory locations. But it wasn't taught at Marlborough, it was just available for keen students. We pretty much figured it out, though one or two teachers were also quite intrigued by it, but it was more of a hobby for them than a teaching thing."

All of Peyton Jones' formal, and informal for that matter, learning took place at school. Born in South Africa in 1958, he is the oldest of four children. His father, a member of the British navy, transferred the family back to England when Peyton Jones, named after the town in which he was born (Simonstown), was about 18 months old. After a few years in England they transferred to Trinidad, where his father was charged with starting a coast guard. When Peyton Jones was 8, they returned again to England. His parents settled in Marlow, a town just southeast of London, but rather than disrupt his childhood further by what were sure to be future foreign posts, his parents enrolled Peyton Jones, then 8, in boarding school.

His live-in learning continued straight through university. Even as an adult, he spent a number of years on campus.

At Cambridge University, he studied two years of "maths," one year of electrical sciences -- which he cleverly describes as a sanctuary for disgruntled mathematicians and frustrated physicists seeking refuge from the competitive hoards and offered by the engineering department. He then tacked on a post-graduate year in computer science. That last year constitutes the entirety of his formal training in computers.

He opted out of the Ph.D. path and took a job with a small electronics company. The company made process-control and monitoring equipment for industrial settings, and was all of 10 people working in the house of the managing director's grandmother. Peyton Jones spent his days in the attic working on hardware and software at today's startup pace. It took him a few years to realize he did not share his boss' entrepreneurial proclivity for risk. There were things he enjoyed about the job, but it just was too stressful in the end.

"Every now and again we wouldn't be able to pay the tax bill for the value added tax, and the VAT tax man has a lot of power to impound your property. We wouldn't be able to pay the bill, and he'd come along and demand to impound some property, and we had a very old piece of equipment, called the data-logger, which was covered in knobs and dials and buzzers and switches, and we never used it. It was completely useless, and we'd give it to him and he'd drive off with it in the back of his car very pleased with himself. Then we'd pay the bill, and he'd give it back. We kept it as a sort of hostage for the VAT man."

He found that the pressure sapped energy from him. So he left and took a job, normally reserved for those with more extensive education, as a lecturer in computer science at University College London.

Later, during the nine years they lived in Glasgow, he and his wife had three children, and Peyton Jones birthed 'a child' of his own, the Glasgow Haskell Compiler. He had been involved in designing the Haskell programming language, and to him the obvious next step was to write a compiler for it. Though it's not a full-time job, he is still very dedicated to the GHC project.

A few years ago, when their youngest was old enough for Dorothy to go back to work, they settled back into Cambridge, and Peyton Jones, a devout Open Source developer and small-company veteran, applied to the then new Microsoft Research Center in Cambridge. Upon hiring, Peyton Jones was explicit about this attachment to GHC.

"I'm having a great time. My mode of research is by trying things out in the setting of this fully functional compiler that lots of people use. But they did not hire me to produce a Haskell compiler and maintain it. It's a secondary goal, but it is one that's very important to me emotionally. I'm very careful to keep the compiler in its place, namely as a means to an end rather than an end in itself. It forms a platform on which I can study things rather than the reason for my work."

He also continues to build it.

"Most people, by the time they get to be a full professor, don't do anymore hacking, but I still do a lot of programming, which I love.

"I'm working on our compiler's optimizer at the moment. The compiler's something like 60,000 lines of Haskell and I'm reworking a chunk in the middle of it. I'm also about to write a new analyses space."

Pursuant to the terms of our conversation, Peyton Jones would not comment on any of his employer's current legal interests. But regarding his work at Microsoft, he had only good things to say.

"It's very nice working for an outfit that lets you do full-time research, doing pretty much what you want to do. Microsoft generally has fairly bad press, but I think that this is something that Microsoft should really brag about, because they pay lots of people to do essentially very freely directed research. They don't correct our papers, they let us go to whatever conferences we want to. I'm publishing at a higher rate than I did at the university."

Just as growing up a geek sounds cooler in an English accent, so does working for Microsoft.

He works on a Windows machine, but it does run an X server that communicates with the Linux machines in the basement.

"It is quite tiresome having two completely different operating systems that our compiler has to work on, but that's not a moral question, it's just an inconvenience. There's Macintosh as well, but we don't provide GHC on Macs at all. It's just too much to have three ports.

"I'm not sure it would be a good thing to have only one flavor of any one operating system, to work with only one that 'won the race.'

"Diversity is good."

More about Simon Peyton Jones

Favorite book: Wyrms by Orson Scott Card

Favorite movie: Dogma

Game: Go, or Hare & Tortoise

Mail reader: Outlook or xmh (depends on OS)

Text editor: emacs

Music: Beethoven or Shubert piano sonatas

Hobbies: Choir and "very bad" piano

Share    Print    Comments   

Comments

on GHC developer Simon Peyton Jones on working for, gasp!, Microsoft

There are no comments attached to this item.

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya