Die erste Version von Maple wurde 1980 von Keith O. Geddes, Gaston H. Gonnet und deren Mitarbeitern von der Symbolic Computation Group an der Universität von Waterloo in der kanadischen Stadt Waterloo (Ontario) programmiert. Ende 1987 gab es Maple bereits in der Version 4.2.
Seit 1988 wird Maple von Maplesoft, einer Abteilung der Firma Waterloo Maple, weiterentwickelt und vermarktet. Waterloo Maple gehört seit September 2009 zur in Japan ansässigen Firma Cybernet Systems Co., Ltd.
Bei der wissenschaftlichen Unterstützung des Maple-Projektes ging und geht es darum, schnelle und effiziente Algorithmen für symbolische Berechnungen zu entwickeln und in das Programm zu integrieren. An diesen Arbeiten sind bzw. waren neben dem Ontario Research Centre for Computer Algebra (ORCCA), bestehend aus der Maple Symbolic Computation Group (Universität von Waterloo) und dem Symbolic Computation Laboratory (Universität von Western Ontario), auch Wissenschaftler an der ETH Zürich, dem Institut national de recherche en informatique et en automatique (INRIA) und vielen anderen Labors weltweit beteiligt.
Seit 1998 gibt es eine Zusammenarbeit zwischen Maplesoft und der Numerical Algorithms Group (NAG). NAG-Komponenten fanden sich erstmals in Maple Release 6 aus dem Jahre 2000. Diese Komponenten führten insbesondere zu einer erheblichen Verbesserung der Rechengeschwindigkeit und der Rechengenauigkeit auf dem Gebiet der Linearen Algebra.
2005 wurde mit Maple 10 ein neuer Dokument-Modus („document mode“) innerhalb der Standardversion von Maple eingeführt. Seither ist es möglich, Maple-Inputs in normaler mathematischer Schreibweise zu editieren. Hierbei lassen sich Texte und mathematische Symbole in derselben Eingabezeile miteinander kombinieren.
Maple 13 bot unter anderem erhebliche Verbesserungen bei der Ausgabe von 3D-Grafiken, neue Prozeduren und neue interaktive Tutoren.
Ab der Version 14 von Maple ist es möglich, zusammen mit anderen Maple-Nutzern auf Worksheets gemeinsam zuzugreifen (MapleCloud). Hierbei kann man eigene Ressourcen allen Maple-Nutzern weltweit oder aber nur den Mitgliedern bestimmter Arbeitsgruppen zur Verfügung stellen.
Maple 15 unterschied sich von den Vorgängerversionen insbesondere durch eine erhebliche Vergrößerung der Rechengeschwindigkeit bei Rechnern, die mit mehreren Prozessoren ausgestattet sind.
Neben neuen Packages (wie zum Beispiel GroupTheory), neuen Rechenbefehlen sowie zahlreichen Verbesserungen bietet Maple ab der Version 17 einen Editor, der die Entwicklung von Quelltext mit Syntax Highlighting und weiteren Funktionalitäten unterstützt. Außerdem werden Funktionsaufrufe jetzt durch die Verwendung von hardwareunterstützten Algorithmen erheblich schneller abgearbeitet als früher.
Benutzeroberfläche
Hauptkomponente der grafischen Benutzeroberfläche
von Maple ist das jeweilige Worksheet, in dem interaktiv gearbeitet wird. Es erscheint als
Fenster, in das Rechenanweisungen (Maple-Inputs) eingetragen werden. Die Maple-Engine
interpretiert diese Anweisungen und liefert entsprechende Ausgaben (Maple-Outputs) zurück.
Typische Maple-Outputs sind Zahlenwerte, Terme, Funktionen, Tabellen,
2- und 3-dimensionale Grafiken, Animationsobjekte und Diagramme. Es ist möglich,
die von Maple erzeugten Objekte bzw. Ausdrücke über kontextsensitive Menüs zu bearbeiten.
Das Einfügen mathematischer Symbole, Ausdrücke, Vektoren und Matrizen in
Rechenanweisungen wird erleichtert durch die Benutzung von Paletten.
Diese bestehen aus für verschiedene Aufgaben vorgefertigten Code-Schnipseln,
die per Mausklick dem Worksheet hinzugefügt werden können.
Von der Version 9 an gibt es neben dem Classic Worksheet Maple eine Java-basierte Version
Maple Standard. Die Standardversion von Maple bietet eine komfortablere Oberfläche, ist
aber andererseits deutlich langsamer als die klassische Variante. Aufgrund dieser zwei Varianten
gibt es auch zwei unterschiedliche Arten, Worksheets zu speichern. Man unterscheidet
Standard-Worksheets (Dateiendung: mw) und
Classic-Worksheets (Dateiendung: mws; kompatibel zu älteren Maple-Versionen).
Ein fertig bearbeitetes Worksheet kann man bei Bedarf exportieren als PDF-, HTML-, LaTeX- oder als RTF-Dokument.
Packages
Maple umfasst einen Kern häufig benutzter Standard-Rechenanweisungen
(main library) und zusätzliche, zur Laufzeit mit dem with-Befehl ladbare Pakete (packages).
Im Folgenden sind einige der wichtigsten dieser insgesamt über hundert Pakete aufgelistet:
Maple besitzt Schnittstellen zu Matlab, Fortran, C, C#, Java, Visual Basic, Python, Perl, R, JavaScript, Julia und Swift, die Maple-Code in diese Zielsprachen übersetzen. Umgekehrt lassen sich Fortran-, C-, C#- oder Java-Routinen in Maple einbinden, und Maple lässt sich aus C, Java und VisualBasic aufrufen (OpenMaple-API).
Features (Auswahl)
Mit diesem Befehl löst Maple Differentialgleichungen:[4] dsolve(...)
Maple kann Doppelintegral[5] und Tripelintegral[6] lösen.
Anwendungsbeispiele
Es folgen einfache Beispiele für Rechenanweisungen in der ursprünglichen Maple-typischen Notation. In der aktuellen Version ist ein Programmbefehlabschluss mit dem Semikolon nicht mehr erforderlich und die Eingabe der Rechenanweisungen lässt sich alternativ über einen Formeleditor eingeben und die Ausführung über ein Kontextmenü erwirken.