Logo
Cardano Ecosystem

Input Output

07/20/2023

·

569 views


Wadler follows the giants of science

The stellar career of a leading light in Cardano’s development is being marked with fellowship of the Royal Society, the world’s oldest scientific academy

Wadler follows the giants of science

Professor Philip Wadler will be known to many Cardano users as the co-creator (along with Manuel Chakravarty) of Plutus, the blockchain’s smart programming language. His work on computer languages and functional programming has resulted in professorships, a sackful of awards, and fellowship of the Royal Society of Edinburgh. Anyone who has used Java or Haskell or XQuery, in fact any functional language, has benefited from Wadler’s work. 

This month, he will join earlier giants of science – including Newton – to be inducted as a fellow of the Royal Society, the world’s oldest scientific academy. He will be an FRS.

This accolade is testament to a career that spans the age of the microprocessor and the mushrooming of digital technologies. The effect of academics is measured by the h-Index system: after 20 years of research, a score of 20 is good, 40 is outstanding, and 60 is exceptional. Wadler’s score is 73, based on his work having been cited 26,981 times in published papers and books. 

His biography states that he ‘likes to introduce theory into practice and practice into theory’, and he has certainly done that. He was a research assistant at the University of Oxford and gained his first professorship at Glasgow – where he was one of the principal designers of Haskell. He then worked at Bell Labs and Avaya Labs. Since 2003, Wadler has been professor of theoretical computer science in the School of Informatics at the University of Edinburgh.  

‘I am a strong believer in being exposed to both theory and practice,’ says Wadler. ‘The importance of considering both in tandem is a theme you find throughout the history of science, from Blaise Pascal [the French mathematician and philosopher who laid the foundation for the theory of probabilities] to Robin Milner [who helped design the ML language, a forerunner of Haskell, at Edinburgh].’

He sees the huge advantage of academia as ‘You get to teach. Working with young people helps one to keep feeling young, and teaching sharpens communication skills. 

‘I’m delighted that I get invited to many industrial conferences, and the young developers who speak there are clever and inspired – but only some of them have learned how to communicate effectively.’

The importance of writing clearly was drilled into the young Wadler when he contributed a paper to the American Mathematical Society. It was 1975 and he wrote it after attending a course for high school students run at the University of California at Berkeley. ‘I tried to set it in the most general way possible, but my mentors advised me that this made it incomprehensible! They had me rewrite it in a more concrete way that made it more accessible. 

‘Being told how important it is to make the work easy for its readers to follow has stayed with me as a vital lesson.’

To understand Wadler’s world is to discover a vocabulary of lambda calculus, blame tracking, gradual typing, type classes, and monads. It’s a place where listlessness is better than laziness, and, if you’re going to be lazy, you should do it with class. Most people will never come across these terms, but he has followed that advice about making ideas easy for people to follow. The humor in many of his academic papers and his engaging lecture presentation style are evidence of this. Titles such as ‘An idiom’s guide to formlets’, ‘Leftover Curry and reheated Pizza’, and ‘Et tu, XML?’ are hard to forget. And his appearances at talks in a Lambda Man costume are unforgettable.

At the heart of Silicon Valley

Wadler went to school at Cupertino High, in California’s San Francisco Bay area that was becoming Silicon Valley. He thought he was going to be a mathematician, ‘But it was easier to get a job coding, and more lucrative.’ He credits three early teachers, ‘especially Mr Simons and Mr Grote, who taught mathematics at school, and Gerald Alexanderson, who taught calculus at the University of Santa Clara in a course that I attended’.

He gained his mathematics degree at Stanford in 1977. The year before, Steve Wozniak and Steve Jobs had begun marketing their Apple I kit with its 8-bit 6502 chip from MOS Technology, and 4KB of user memory. Donald Knuth is up to volume three of his programming opus (the most recent section came out last year). It is the era of Fortran, Cobol, Lisp, and Algol; Forth, Pascal, and C are relative newcomers. Xerox Parc is developing SmallTalk. Microcomputers have yet to arrive and popularize Basic. Engineers still carry slide rules. It’s two years before Douglas Hofstadter’s classic book Gödel, Escher, Bach (known as GEB); four years before Acorn’s BBC Micro and IBM’s PC. Tim Berners-Lee is studying physics at Oxford and decades away from proposing the WorldWide Web.

Most of these landmark moments have a reference in Wadler’s personal history. His next paper was written when he was in his second year at Stanford University – for a class given by Knuth. It was a formative time. ‘Knuth’s class on data structures, taught from his textbook, was a fantastic learning experience. Among other things, he gave us a few pages of notes on how to write mathematical texts. Those notes were the beginning of my career as an academic. I refer to them to this day.’

The paper, ‘Analysis of an algorithm for real-time garbage collection’ won the first of many accolades for Wadler: the Forsythe student paper award from the Association for Computing Machinery (ACM), the US-based scientific society.

The most influential class at Stanford was an introduction to economics. ‘I don’t recall the teacher’s name, but a web search suggests it was John Gurley. He was a mix of the two Marxes, Karl and Groucho. He knew his stuff, and presented it in a highly entertaining style. He would teach us straight economics. Then every other week or so he would say “I’ve been teaching you the standard theory, now I’ll tell you the truth” and give us a Marxist perspective. What I took away from that was the importance of fairly presenting opposing points of view. 

‘Even though he passionately thought the standard view was wrong, he wanted to present it to us correctly.’

Other lecturers included John McCarthy and Vint Cerf – one of the founders of the internet – as well as Knuth. ‘A vital thing I learned from all three was the importance of humor in your work. Vint is the nephew of Bennett Cerf [the humorist and collector of limericks], and it showed. When Vint explained the internet to me, he quoted from Gilbert and Sullivan’s opera HMS Pinafore, singing “Does it lose any packets? Never. What never? Well, hardly ever”.’

McCarthy, a pioneer in the field of artificial intelligence, taught Wadler ‘how to program in Lisp. That is, I learned the essence of functional programming.’

While at Stanford, Wadler attended meetings of the Homebrew Computer Club. ‘One day, a fellow showed up with a single board that you could attach to a TV, and a keyboard. It turned out to be the Apple I. The man who showed it to us was probably Wozniak, but I was focused on the computer and paid no attention to the man behind the machine. I hope I’ve become more attentive to people since then.’

Another class was taught by Hofstadter from the draft of GEB, which had yet to be published. When the book did come out in 1979, its pages credited Wadler for 'resonating' with Hofstadter. ‘I was insanely proud of that.’ Wadler’s roommate, the graphic artist Scott Kim, was thanked in the book as a 'gigantic influence'. 

Wadler worked as a summer intern at Xerox Parc. There, he implemented a simulator in an early version of Smalltalk, ‘which was a tiny and elegant system’. There was ‘a lot of discussion of “dynabooks”, which did not yet exist, but are what we now call laptops’.

At Carnegie-Mellon, where Wadler was studying artificial intelligence, Herbert Simon, a Nobel prize winner, was Wadler’s supervisor for the first two years. This led to Wadler’s focus on programming languages. ‘I came to the realization that the part of AI that most interested me was how to represent information, and I thought programming languages addressed that more directly. Again, I was incredibly lucky in the people I worked with, first Simon and then Bill Scherlis, Guy Steele Jr, and Nico Habermann.’ 

Wadler’s PhD was gained from Carnegie Mellon with ‘Listlessness is better than laziness: an algorithm that transforms applicative programs to eliminate intermediate lists.’ Steele and Habermann were his dissertation supervisors. 

Hofstadter's book; Philip Wadler photographed by his son, Adam; the Royal Society's offices in London           

Industry and academe

From 1983, Wadler was a researcher and member of the Programming Research Group at Oxford, where he published many papers, ‘How to replace failure by a list of successes’ being the most cited. 

After that, it was the University of Glasgow, where Wadler was a principal designer of Haskell, which became the most widely used language for lazy functional programming. He contributed its two main innovations: type classes, with Stephen Blott in 1989, and monads with Simon Peyton Jones in 1993. These innovations helped him become one of the most acknowledged computer science authors, and he gained a professorship in 1993. The monad paper won an ACM award for the most Influential paper of the previous decade in 2003.

The Glasgow Haskell Compiler (GHC) was developed at Glasgow, and Peyton Jones and Simon Marlow were given an ACM software award in 2011 as its creators. Wadler received a distinguished service award in 2016. Chakravarty, his Plutus co-creator, adds: ‘Somewhat later, his contribution of using the categorical concept of monads to provide a functional way to handle input and output of data, and general imperative programming has again a huge impact. Type classes and monads together have determined to a large part how software architects design programs in Haskell. Both concepts have been picked up by other languages.’

Alongside the core of Cardano being implemented in Haskell, Wadler cites three favorites among the many notable applications. First, Facebook uses the HAXL library created by Simon Marlow to filter every message it posts for spam and disinformation. Second, the number of banks using Haskell, whose influence has encouraged most financial firms to use a functional language in one way or another. SeL4, a highly secure minimal operating system for mobile phones, is his final choice. For this, a prototype was written in Haskell. The prototype formed the basis for a formal model in the Isabelle proof assistant and then the production implementation, which was translated from Haskell to the C language for speed. The translation was verified against the formal model in Isabelle.

From Glasgow, he jumped into industry for seven years at Bell Labs (Lucent Technologies) and then Avaya Labs; Peyton Jones went to Microsoft Research and is now at Epic Games. Two products from this time were GJ (Generic Java) – the basis for Sun Microsystems’ design – and FJ (Featherweight Java). The latter, from 1999, is a formal model of Java that can be written on one sheet of paper. It is one of Wadler’s most cited papers. As he says. ‘GJ pushes theory into practice; FJ pulls practice into theory.’

At Avaya, Wadler published his paper on XQuery, a language for querying XML and combining data, whether it is documents, databases, or web pages, developed at the World-Wide Web Consortium (W3C). It enables complex programs in other languages to be replaced by a few lines of code.

Then came an offer of the Chair of Theoretical Computer Science at Edinburgh in 2003. Taking up the position was an easy decision for Wadler because he was able to step into the shoes of one of his greatest scientific heroes, Robin Milner. (The other being Tony Hoare, inventor of the Quicksort algorithm). ‘When I was offered that chair at Edinburgh, I could not turn it down because the position was first created for Robin Milner.’ 

The man who put lambda on T-shirts

Knuth, McCarthy, and Cerf had instilled in Wadler the importance of humor in academic papers and presentations. His PhD thesis was ‘Listlessness is better than laziness’, and one of his first published papers was ‘How to replace failure by a list of successes’. ‘After that,’ he says, ‘there was no turning back’. He delights in his paper titles being featured in Helen Sword’s textbook Stylish Academic Writing.

People who have been to Wadler’s lectures will have seen him transform into Lambda Man, a costumed superhero. Lambda calculus – λ-calculus – is a formal system in mathematical logic that is fundamental to Haskell. The superhero transformations started when Wadler began to spice up lectures at academic conferences by drawing formulas on T-shirts and then ‘ripping off my outer shirt to reveal the formula’. He has a special shirt with snaps rather than buttons for this. ‘One T-shirt showed a categorical description of linear logic due to RAG Seely – who kindly agreed to pose with that one as a “Seely model”.’ 

At a different conference, while sitting in a bar, a colleague made an analogy between Wadler’s antics and Superman; and ‘a lightbulb went off. I commissioned the lambda design, which was made by Matija and Mojca Pretnar, and had it printed on the front of a Superman costume I bought.’

Peer review makes IOG ‘unique’

Wadler began working for Input Output six years ago after he met Charles Hoskinson, chief executive and co-founder of Input Output Global (IOG). Hoskinson was visiting Professor Aggelos Kiayias, the company’s chief scientist and founder of the Blockchain Technology Lab at Edinburgh. ‘Charles asked to meet with me. I had just met Wanda, who lived in Rio de Janeiro and would eventually become my wife. Anticipating the cost of many flights to Brazil, I asked Charles for a consulting job. It was bold of me, but it was one of the best choices I ever made!’

Their shared views on the importance of academia to industry were immediately apparent. ‘What I admire most about Charles is the insistence that everything IOG does should be based on peer-reviewed research. As he points out, that is the foundation of science.’

IOG funds the Edinburgh lab and research hubs at several other universities, a strategy that is not unusual among technology companies. However, Wadler feels that IOG has gone further: ‘With complicated cryptographic protocols, peer-reviewed research is the best way to ensure they are correct. Yet, as far as I can tell, IOG is unique in this insistence. Not just in crypto, but across all computing. Google or Microsoft will let their developers publish, but they don’t consider it a crucial step toward reliability.’

Wadler has contributed to IOG papers covering: extended UTXO, the ledger model used by Cardano; System F, an important element in the theoretical basis for languages such as Haskell and ML; and blockchain contracts.

Wadler’s concise and elegant approach, as seen in the Featherweight Java paper, came out again when Plutus was announced in 2018. At the PlutusFest event in Edinburgh, the team handed out black paper napkins on which the language specification for Plutus was printed in gold ink. It was an idea first mentioned by Hoskinson but, as Chakravarty adds, ‘This really goes back to Phil being the person who insisted right from the start on keeping Plutus Core as small as possible. Later, Charles made the napkin remark, but Phil ran with the idea and that’s how we ended up with the Edinburgh napkins.’

Simplicity, safety, and security are at the core of Plutus, all made possible by functional programming and Haskell.

Proof that the core semantics of Plutus fit on a napkin           

The power of mathematics

A stream that runs through Wadler’s work is the value of mathematics. ‘Many folk are scared of mathematics,’ he says, because ‘they think it is too hard for them. Hardened developers that are fine with Javascript will run screaming from the room if they see something on a slide written in italics, because it looks like formal mathematics.’ 

Yet, mathematics is an incredibly powerful tool in understanding the world around us, and has been used as such for millennia. Each generation has handed down its findings to the next. One of Wadler’s favorite quotes is by the Scottish polymath John Arbuthnot from his Of the Laws of Chance in 1692: 

There are very few things which we know, which are not capable of being reduced to a Mathematical Reasoning; and when they cannot it's a sign our knowledge of them is very small and confused; and when a Mathematical Reasoning can be had it's as great a folly to make use of any other, as to grope for a thing in the dark, when you have a candle standing by you.

This chain of understanding is something that he stresses to younger colleagues. ‘The work you do is only important if it inspires others to do even better work. I’m proud of the papers I’ve written, and I’m prouder of papers written by others that build on my work.’

Again, he stresses simplicity. ‘A corollary is the importance of simplicity. You have to present the work in a way that others can pick up and build upon. Too many of my colleagues are too damn smart! They are clever enough to handle a great deal of complexity, but that makes what they do harder to absorb. Please write aimed at simpletons like me. Just as important as the original discovery is the effort to simplify and polish.’

The world’s greatest autograph book

On July 14, Wadler will be at Carlton House Terrace in London. There, as one of 80 outstanding researchers, innovators, and communicators, he will be inducted as a fellow to the Royal Society. This learned body dates back to 1660 – Christopher Wren and Robert Boyle were among the founders. The building overlooks The Mall, the grand processional route that links Trafalgar Square to Buckingham Palace. Charles II, who built The Mall, gave his patronage to the Society, as has every monarch since. King Charles III has been a royal Fellow since 1978. 

Wadler will sign his name in a ledger that begins with Charles II’s signature and is dense with the brightest names in scientific history. Current and previous fellows include Charles Babbage, whose Difference Engine was the first digital computing device; the AI pioneer and wartime code-breaking hero Alan Turing; Hoare; Milner; Berners-Lee; David Deutsch, the father of quantum computing; Sophie Wilson, co-architect of the BBC Micro who helped develop the ARM chip architecture that powers the world’s smartphones; and Peyton Jones. Knuth and Cerf are foreign members.

Two early fellows were Isaac Newton and Robert Hooke. Newton is best known for his theory about the law of gravity, and his Principia Mathematica with its three laws of motion greatly influenced the Enlightenment in Europe. Hooke discovered microorganisms and coined the term ‘cell’, though he is probably best known to generations of schoolchildren for Hooke’s Law, which describes the effect of a force on a metal spring. In 1675, these two corresponded by letter. ‘If I have seen further,’ Newton wrote, ‘it is by standing on the shoulders of giants.’ After July 14, Wadler’s name will sit alongside the signatures of those giants, and he will be Iooking forward to the opportunities that his fellowship opens.

Lambda Man illustration by Jonathan Smith

Anthony Quinn

Editor
Marketing & Communications

AD

SNEKbot by DexHunter on CARDANO

Cardano's Telegram Trading Bot live on Cardano mainnet!TRADE NOW!


Disclaimer: Cardano Feed is a Decentralized News Aggregator that enables journalists, influencers, editors, publishers, websites and community members to share news about the Cardano Ecosystem. User must always do their own research and none of those articles are financial advices. The content is for informational purposes only and does not necessarily reflect our opinion.


Genius Yields DEX Launched!

More from Input Output

See more
Unlocking more opportunities with Plutus V3
Input Output
Unlocking more opportunities with Plutus V3

02/12/2024

·

227 views

Related News

See more
Genius Yields DEX Launched!

Featured News

See more



    DEFAULTENGLISH (EN)SPANISH (ES)RUSSIAN (RU)GERMAN (DE)ITALIAN (IT)POLISH (PL)HUNGARIAN (HU)JAPANESE (JA)THAI (TH)ARABIC (AR)VIETNAMESE (VI)PERSIAN (FA)GREEK (EL)INDONESIAN (ID)ROMANIAN (RO)KOREAN (KO)FRENCH (FR)CZECH (CS)PORTUGUESE (PT)TURKISH (TR)