A (Not So) Brief but (Very) Accurate History of Oracle PL/SQL (2020)

stmw1 pts0 comments

A (Not So) Brief But (Very) Accurate History of PL/SQL - Oracle Internals

Preface

PL/SQL is one of the top twenty programming languages in the world. While I’m no Matthew Symonds, and this is no Softwar, the history of PL/SQL deserves a helluva lot more than, "Oracle 7 had an advanced architecture and, like Sybase, was fully programmable via its elegant new PL/SQL programming language." That’s why, during the process working on my OOW/OCO session and related blog series, "Demystifying PL/SQL: The Life of a Compilation Unit," I wanted to include some of that history.

When I first began writing this history, I figured it would be a few paragraphs at most. In fact, the original title was A Brief But Accurate History of PL/SQL. The deeper I dug and the more people I spoke with, however, the more fascinating the story became. At one point, I decided there was no way I could leave all of this impressive history on the cutting-room floor.

As this is the longest post I’ve written–and I have even more content available–I’m working with Aaron Lazenby at Oracle to (hopefully) extend this into a collaborative multi-part set of articles for Oracle Connect. For that reason, this entry covers only a subset of the origins of PL/SQL. While much of the original underlying code still exists, this post does not cover the history of the optimizing compiler improvements.

Now, without any further ado whatsoever, I present the origins of PL/SQL.

Creating a Language (PL/SQL V1)

Working on PL/SQL (Peter Clare with daughter Tara)

Peter Clare’s career began in 1972 at Control Data Corporation (CDC). Although CDC no longer exists, throughout the 1960s and 1970s, it was one of the top mainframe and supercomputer companies in the United States. In terms of software, CDC’s Compiler Products Division created the first commercial Pascal compiler. Peter’s role in this division consisted of language and compiler development focused on building the world’s fastest computer language processors. During his six-year tenure there, Peter not only improved CDC’s compilers but also learned a great deal about overall language development and, more importantly, the practical issues related to it. With this knowledge, Peter left CDC and became a consultant.

Years later, in 1984, Peter thumbed through one of the local bay area tech publications looking for additional consulting-related work. Contained inside that publication was an advertisement from Oracle. Through the grapevine, Peter had heard Oracle was in the process of porting the database to many different platforms, one of which he knew rather well. Thinking it may be an excellent opportunity for some contract work, Peter gave Oracle a call. A few days later, Peter met with Bob Miner and Bill Friend for an interview.

Initially, the trio reviewed Peter’s porting-related experience. As Oracle was also working on SQL precompilers and a forms-based interface to the database, the group additionally discussed Peter’s background in language and compiler development. By the end of that meeting, Bob and Bill convinced Peter to accept a full-time job; Peter became the thirteenth developer at Oracle.

Peter wasn’t your stereotypical Oracle developer. Described by his teammates as a friendly, easy-going, competent, and highly-capable architect, Peter was not only known for being smart, but also for his love of the water and windsurfing, which he did almost every day. Peter took the old, "work hard, play hard" motto to heart, striving to achieve a fulfilling work-life balance – one he honed to perfection throughout his career.

In his first six months at Oracle, Peter’s responsibilities were more project management related than technical. Bob wanted to focus on development and relied on Peter to manage day-to-day project tasks. Although Peter enjoyed the work, communication became increasingly challenging. "By that time, Bob and Larry had been working together for quite a while," Peter remembered, "it was natural for them to communicate directly with each other and, as the man-in-the-middle, it didn’t take long for everyone to realize I was the third wheel." To reduce this friction, everyone agreed it would be better for Peter to focus on technical work.

Given his background in programming languages, Peter began working on Oracle’s precompilers. It wasn’t long until another issue arose: competition.

In those days, a couple of database vendors had simple triggers. Similarly, the only way for the database to execute a procedural function was to write it in another language, compile it, and write an interface. Ken Rudin, PL/SQL’s initial product manager, recalls, "as these approaches were somewhat limiting, rather than implement comparable functionality, Oracle wanted to leapfrog the competition and offer a complete procedural programming capability that lived inside the database. Thankfully, Oracle had realized early on that a consistent procedural language would be beneficial across multiple...

peter oracle history language working work

Related Articles