A Symbolic Release
Maple 17, the newest release from Maplesoft, reveals more than just a new set of useful software tools for engineers and scientists.
A number of major software companies are approaching milestones typically associated with far older industries. Microsoft, for instance, will celebrate its 40th anniversary in a couple of years. Apple will observe the same anniversary just a year later.
Maplesoft, a Canadian-based maker of symbolic computation and mathematical software for scientists and engineers, is younger than these veteran companies, but not by a lot.
Marking its 25th year in business, the company was originally conceived in 1980, when Keith Geddes and Gaston Gonnet, professors at the University of Waterloo, Ontario, began working on a computer algebra system called, patriotically enough, “Maple”.
Directed at the academic market, the company’s first users were university students. After a successful launch, growth was rapid; and in 1984, the company launched Maple 3.3.
In March 2013, Maple 17, the latest release of the flagship product, shipped. This release represents more than a standalone tool for researchers and developers.
The changing face of software
Now selling in more than 100 countries, Maplesoft has seen its customer base gradually change from primarily academic users to, increasingly, industrial and corporate buyers. Paul Goossens, vice president, applications engineering, says this is an encouraging shift, but it also presents some challenges as Maplesoft has felt the pressure, particularly in the last 10 years, to address customer demands in a rapidly evolving market.
“In the last 40 years, we’ve been seeing the industry move away from in-house applications. Basic programs for research don’t give users everything they need. They are now suddenly realizing they want a tool that not only gives them the results they want, it exposes what went into it,” says Goossens, referring to the symbolic computation engine that governs how Maple functions. Since the beginning of the company, this engine has been transparent, allowing users to see what their work is doing at a fundamental computational level. It began as a useful education tool, helping accelerate the learning process for academic mathematicians. Over time, however, engineers became exposed to the practical capabilities of Maple.
Goossens considers the catalyst for Maple’s growth is its symbolic code engine, which allows code generation to be done in a way that used to be manually time intensive and prone to mistakes. As engineers have increasingly become reliant on code and computer application development, a tool like Maple has found widespread appeal for its transparency in code generation and additional capability of simulating solutions in MapleSim, a tool that is part of Maple 17’s environment.
This overall suite of tools has been intentionally built over time as a way to give users a do-anything platform for problem solving. In many ways, says Goossens, this strategy has born itself out.
New features in Maple 17
Releases at Maplesoft typically occur annually. The company’s major goal, says Laurent Bernardin, executive vice president and chief scientist, is to continue strengthening the mathematical libraries and the power at the user’s disposal.
A major watchword for the Maple development team is integration. The many aspects of the Maple environment must be contained within the same navigable environment. Also, Maple must not serve as a roadblock to the tools engineers and scientists rely on to conduct more mundane tasks.
With Maple 17, Maplesoft has introduced more computation tools and a large collection of enhancements dedicated to supporting the creation of applications. New functionality includes the ability to solve a new class of differential equations; advancements in solving systems of equations; new signal processing tools; expanded support for physics, statistics, and dynamic systems; and more.
Performance has also been enhanced with improvements to frequently called routines and algorithms, as well as in the low-level infrastructure of memory management.
Digging below the raw numbers—400 new commands—the biggest additions to Maple’s toolset are a new advanced code editor to make algorithm development easier for more complex applications; new programming constructs to facilitate the creation of multithreaded code for parallel routines; and an Embedded Video Component for adding rich multimedia content to applications.
The power to compute, communicate
In addition to the pursuit of an all-in-one engineering and development tool, Maplesoft has recognized the power of multicore, distributed computing, and cloud-based resources. With respect to cloud computing, Maplesoft has been a strong supporter of Modelica, an international repository of mathematical applications open to all users.
The advantages of multicore and distributed computing have been addressed within Maple itself. Applications built in Maple 17 can be easily optimized to run on 64-core machines, for example.
In recognition the software’s ability to streamline collaboration, Maplesoft’s developers also introduced the Player application in Maple 17.