Top 1,000 Features Creators Resources Extensions Blog Explorer CSV Download
GitHub icon

A brief interview with Tcl creator John Ousterhout

by Hassam Alhajaji


February 8, 2023 — Dr. John Ousterhout is a computer science luminary who has made significant contributions to the field of computer science, particularly in the areas of operating systems and file systems. He is the creator of the Tcl scripting language, and has also worked on several major software projects, including the Log-Structered file system and the Sprite operating system. John Ousterhout's creation of Tcl has had a lasting impact on the technology industry, transforming the way developers think about scripting and automation.


Hassam: What is unique about tcl?

Dr. Ousterhout: I would highlight 2 things:

Hassam: How different would tcl be had you stayed on with the development team? :)

Dr. Ousterhout: I don't think it would have been very different. Tcl was quite mature by the time I passed off development responsibility. Tcl had its heyday in the 1990's, due in large part to the power of the Tk toolkit and the awfulness of the other X Window GUI toolkits; Tcl/Tk was the easiest and most powerful way to create GUI apps. Unfortunately, Tcl didn't make the jump to the Web, and most of the applications for which people would have used Tcl in the 1990s became Web applications.

Interesting footnote: the founding of Netscape occurred at the same time I was deciding where to go in industry when I left Berkeley in 1994. Jim Clarke and Marc Andreessen approached me about the possibility of my joining Netscape as a founder, but I eventually decided against it (they hadn't yet decided to do Web stuff when I talked with them). This is one of the biggest "what if" moments of my career. If I had gone to Netscape, I think there's a good chance that Tcl would have become the browser language instead of JavaScript and the world would be a different place! However, in retrospect I'm not sure that Tcl would actually be a better language for the Web than JavaScript, so maybe the right thing happened.

Hassam: As a long time educator, what do you predict the next paradigm shift in programming languages will be?

Dr. Ousterhout: I don't really know. It used to be that every 5-10 years a major new language came along, but it's been almost 20 or years since the last interesting new language I can think of (Go). Maybe others would count Rust, in which case maybe the 5-10 year interval is still holding. One interesting note on this. Historically, I think the most widely used programming linkages have come not from the programming language research committee, but rather from people who build systems and wanted a language to help themselves. PL researchers tend to create languages that are useful for PL researchers: they have interesting theoretical and conceptual properties (e.g., ML) but aren't usually useful for real systems. Systems people create languages that are useful for systems builders, so they get widely adopted. Examples are C, C++ (I think?), Perl, Java, and Go. I would put Tcl in this category as well, and perhaps Python also?

Thank you for your time Dr. Ousterhout! Image source

View source

- Build the next great programming language · About · Acknowledgements · Part of the World Wide Scroll