Maple für Professional
Maple für Akademiker
Maple für Studenten
Maple Personal Edition
Maple Player
Maple Player für iPad
MapleSim für Professional
MapleSim für Akademiker
Maple T.A. - Testen & beurteilen
Maple T.A. MAA Placement Test Suite
Möbius - Online-Courseware
Machine Design / Industrial Automation
Luft- und Raumfahrt
Fahrzeugtechnik
Robotics
Energiebranche
System Simulation and Analysis
Model development for HIL
Anlagenmodelle für den Regelungsentwurf
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematikausbildung
Technik
Allgemein- und berufsbildende Schulen
Testen und beurteilen
Studierende
Finanzmodelle
Betriebsforschung
Hochleistungsrechnen
Physik
Live-Webinare
Aufgezeichnete Webinare
Geplante Veranstaltungen
MaplePrimes
Maplesoft-Blog
Maplesoft-Mitgliedschaft
Maple Ambassador Program
MapleCloud
Technische Whitepapers
E-Mail Newsletters
Maple-Bücher
Math Matters
Anwendungs-Center
MapleSim Modell-Galerie
Anwenderberichte
Exploring Engineering Fundamentals
Lehrkonzepte mit Maple
Maplesoft Welcome-Center
Resource-Center für Lehrer
Help-Center für Studierende
Accessing Top-level Commands after Rebinding Their Names
Some commands in Maple have similar names. For example, the top-level command name diff is similar to the package-level command name VectorCalculus[diff].
When the short-form name of package-level command is defined using the with command, the short-form name is bound to the package-level command. This happens regardless of whether a top-level command with the same name, protected or not, exists. For example, after issuing with(VectorCalculus, diff), the command name diff refers to the package-level VectorCalculus[diff] command.
You can still directly access the top-level command after its name has been rebound if the package invoked is implemented as a module, but not if the package is implemented as a table.
How to determine if a package is implemented as a module or table
Use the type command to determine if a package is implemented as a module or as a table.
type(packagename, `module`);
type(packagename, table);
For example,
type(networks, '`module`');
type(VectorCalculus, '`module`');
Once you have determined how the package has been implemented, follow the instructions in one of the following sections.
Packages Implemented as Modules
Packages Implemented as Tables
To use a top-level command after its name has been rebound to a package-level command, use the colon-dash syntax (:-commandname).
The following example intentionally employs an error message to illustrate which command level is used.
diff( );
Error, invalid input: diff expects 2 or more arguments, but received 0
Note: The message refers to the top-level diff command.
Now invoke the VectorCalculus package.
with(VectorCalculus);
The VectorCalculus package contains a diff command. For differences between the two commands, see diff and VectorCalculus[diff].
Enter the diff(); command again.
diff();
Error, invalid input: VectorCalculus:-diff uses a 1st argument, f, which is missing
The message now indicates that the error is generated by the VectorCalculus package-level command and not the top-level diff command.
To use the top-level diff command, use the :- syntax.
:-diff();
Note: The message once again indicates that the error is generated by the top-level diff function.
To use a top-level command after its name has been rebound to a package-level command, you must first use the restart; command.
minimize();
Error, invalid input: minimize uses a 1st argument, exprFP (of type algebraic), which is missing
Note: The message refers to the top-level minimize command.
with(simplex);
The simplex package contains a minimize command.
Error, invalid input: minimize uses a 1st argument, obj, which is missing
Note: The message refers to the package-level simplex[minimize] command.
:-minimize();
Note: Packages implemented as tables overwrite any conflicting top-level commands when you invoke the package. You cannot access the top-level command by using the :- syntax.
To use the top-level minimize command, first invoke the restart command.
restart;
Note: The message once again refers to the top-level minimize command.
See Also
protect, Using Packages, with
Download Help Document