Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
convert/local - convert an expression to a local name
Calling Sequence
convert(e, '`local`')
Parameters
e
-
expression; name, string, or symbol
Description
An expression e (typically itself a symbol or string) can be converted to a local name using the convert( e, '`local`' ) calling sequence. The expression returned is of type symbol, and is guaranteed to be unequal to any name at the same scope in which the call is made. If the expression e is a symbol, then the symbol returned by this conversion has the same external representation as e, but is distinct from e. (See the examples.)
Note that, because it is a Maple keyword, the name local must be enclosed in left single quotes, as demonstrated by the examples below.
Examples
p := proc() local t; evalb( t = convert( t, '`local`' ) ) end proc;
Even when called on the same argument within the same scope, distinct calls yield distinct names.
q := proc() local t; evalb( convert( t, '`local`' ) = convert( t, '`local`' ) ) end proc:
This is also true for module scopes.
m := module() export e, try1, try2; local t; try1 := proc() evalb( e = convert( e, '`local`' ) ) end proc; try2 := proc() evalb( t = convert( t, '`local`' ) ) end proc; end module:
This facility can be used to generate a collection of distinct objects all of which look the same.
See Also
convert, keyword, name, procedure, type/name, type/symbol
Download Help Document