Maple includes a full featured programming language that can be used to create scripts, programs, and full applications.
- Interpreted language supports easy exploration and fast prototyping
- Programming environment options include an advanced code editor and the Maple IDE (available separately)
- Procedural, functional, and object-oriented programming
- Advanced features include operator overloading, assumptions on variables, and exception handling
- Debugging, profiling, security, and library management tools
- Source code of most routines available for viewing
- Create and manipulate many kinds of data structures, including sets, strings, lists, arrays, stacks, queues, records, and modules
- Tools for manipulating mathematical objects, including polynomials, integrals, and sums
- Powerful type system, including ability to extend existing types
- Generate and manipulate Maple worksheets through their XML representation
- User-level routines for multi-threaded programming on multi-core computers
- Compiler package, CUDA support, parallel algorithms, and optimization tools promote highly efficient user code for numeric computations
- External function interface for transparent access to dynamic libraries
- Interactive embedded components include buttons, sliders, plots, check boxes, list boxes, toggle buttons, radio button, dials, gauges, and mathematical expression boxes for entering and displaying 2-D math
- Customizable context-sensitive menus
- Maplet applications can be built programmatically or through a point-and-click Maplet builder