The A-Z of Programming Languages: Modula-3
- 15 July, 2008 21:38
Computerworld is undertaking a series of investigations into the most widely-used programming languages. Previously we have spoken to Alfred v. Aho of AWK fame, S. Tucker Taft on the Ada 1995 and 2005 revisions, Microsoft about its server-side script engine ASP, Chet Ramey about his experience maintaining Bash, Bjarne Stroustrup of C++ fame, to Charles H. Moore about the design and development of Forth, a chat with the irreverent Don Woods about the development and uses of INTERCAL and most recently, Stephen C. Johnson on YACC.
In this interview, we chat with Luca Cardelli, a member of the Modula-3 design committee. Cardelli is a Principal Researcher and Head of the Programming Principles and Tools and Security groups at Microsoft Research in Cambridge, UK, and is an ACM Fellow. Here he chats to Computerworld about the origins of Modula-3, including how the most exciting Modula-3 design meeting ever, was abruptly interrupted by the San Francisco 7.1 earthquake.
Please note that we are no longer following exact alphabetical order for this series, due to popular demand. If you'd like to submit any suggestions for programming languages or language authors that you'd like to see covered, please email firstname.lastname@example.org.
Why did you feel the need to develop Modula-3? Was it a reaction to a problem that needed solving?
The "problem" was developing programming environments in a type-safe language. This meant that if I wrote a type-safe library, and my clients had a hard crash, I could say: "not my problem, somebody must be cheating somewhere" because the typechecker guaranteed that it wasn't my problem. You couldn't say that if you used C++.
Why was the name Modula-3 chosen?
We wanted to show continuity of the basic philosophy of modularization of Modula-2, carried out into an object-oriented language. Klaus Wirth designed Modula-2 while (or shortly after) visiting Xerox PARC, so there was a common origin. We asked him to use the name Modula-3, and he agreed, and he also occasionally attended our meetings.
How did Modula-2+ influence the design of Modula-3?
It was basically the same language, but with none of the dark corners.
Modula-2+ had been developing organically, and needed a cleanup and standardization. We also wanted to publicize the innovative features of Modula-2+ (which largely came from Cedar/Mesa at Xerox PARC), and make them available to a wider community.
Were there any particularly hard/annoying problems you had to overcome in the development of the language?
Settling the type system was the hard part, not only for me, but I believe for everybody. A POPL paper discussed just that part.
Why was one of the language's aims to continue the tradition of type safety, while introducing new elements for practical real-world programming? Was there a real need for this in the 1980s?
Yes, the idea to design type-safe operating systems was still in full swing. It started at Xerox with Cedar/Mesa, and continued at DEC with the Taos operating system. You might say it is still continuing with Microsoft's .NET, and we are not quite there yet.
Join the Computerworld Australia group on Linkedin. The group is open to IT Directors, IT Managers, Infrastructure Managers, Network Managers, Security Managers, Communications Managers.
- Multi-Factor Authentication; Current Usage and Trends
- What is Threat Emulation Technology
- Challenges & Opportunities for Government Data Management in Australia
- How to Compare Application Delivery Controllers
- Virtualisation and Cloud Computing: Optimised Power, Cooling and Management Maximises Benefits
- NAB plans customer migration to NextGen platform
- A/NZ College of Anaesthetists to expand campus security monitoring
- Credit Union Australia signs Good Technology to secure 400 devices
- Taxi startup ingogo hails $3.4 million in latest funding round
- Updated: Federal Court dismisses Aust Post trade mark appeal
Amazon drones are 'fantasy,' says eBay CEO
Training critical to Australia tapping broadband potential: CSIRO
US faces major Internet image problem, former gov't official says
Why CIOs stick with cloud computing despite NSA snooping scandal
Telstra hits 300 Mbps in LTE-A trial