Computerworld
Quick Menu
Search



Ads by TechWords

See your link here


Subscribe to our e-mail newsletters
For more info on a specific newsletter, click the title. Details will be displayed in a new window.
Application/Web Development
Computerworld Daily News (First Look and Wrap-Up)
Computerworld Blogs Newsletter
The Weekly Top 10
More E-Mail Newsletters 
Computerworld 2007Subscribe to Computerworld
40 years of the most authoritative source of news and information for IT leaders.

The A-Z of programming languages: Modula-3

July 23, 2008 (Computerworld Australia) Computerworld Australia 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 Corp. about its server-side script engine ASP, Chet Ramey about his experience maintaining Bash, Bjarne Stroustrup of C++ fame, Charles H. Moore about the design and development of Forth, and the irreverent Don Woods about the development and uses of Intercal.

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, England, and is an ACM Fellow. Here he chats with Computerworld about the origins of Modula-3, including how a Modula-3 design meeting was abruptly interrupted by a powerful 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 you'd like us to cover, please e-mail naomi@computerworld.com.au.

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 type checker 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 or 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 [Principles of Programming Languages] 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.


Reprinted with permission from

Computerworld AustraliaFor more news from Computerworld Australia, visit its Web site. Story copyright 2006 Computerworld New Australia. All rights reserved.

What People Are Saying

Events
Security Directions Virtual Conference

Security Directions: Strategies and Tactics for Protecting Your Enterprise in 2009

Attend the Security Directions virtual event, with sessions available live on December 16, 2008 and available on-demand from December 17 though March 17, 2009.

Some topics that will be covered include:
  • Best Practices around Data Leak Prevention (DLP).
  • What exactly is security due diligence and why does it matter?
  • Cloud security and privacy.
  • End-point security - rising gas prices have caused an increase in the number of remote workers, which leads to more security issues.
Register now for this event that happens on December 16, 2008, but will also available on-demand from December 17 - March 17, 2009.
Register Now! 
White Papers
Best Practices for Delivering Virtual Classroom Training
How can you encourage people to listen, and even better, absorb your presentation? How will you know your audience is engaged? This paper provides suggestions and pitfalls that can increase your effectiveness when you're training a remote audience.
Download this white paper now! 
White Papers
Read up on the latest ideas and technologies from companies that sell hardware, software and services.
The 2008 ERP in Manufacturing Benchmark Report Summary
IronPort Web Reputation Filters Tech Note
Designed to Manage Lean Principles
View more whitepapers