create a new cache table - Maple Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Programming : Procedures and Functions : Cache Package : CacheCommand

Cache Command - create a new cache table

Calling Sequence

Cache( opts )

Cache( n, opts )

Cache( cache, opts )

Parameters

n

-

integer; size of cache table to create

cache

-

cache table; cache table to copy

opts

-

(optional) equations of the form option=value, where option is one of procedure, temporary or permanent

Description

• 

The Cache command is a top-level command that creates a new cache table.  If n is given, the returned table will be capable of storing at least n distinct temporary entries.  Increasing n may also make accessing permanent elements faster.

  

For example:

c1 := Cache( 100, permanent=[ a=2, b=3 ], temporary=[ c=4, d=5] );

c1:=Cache128,'temporary'=c=4,d=5,'permanent'=b=3,a=2

(1)
• 

If cache is given, a cache table with the same size as cache is created.  As well, the entries of cache, both temporary and permanent, are inserted into the new cache table.  Any additional entries specified by optional parameters are also added.

• 

There are three optional arguments: procedure, temporary, and permanent.

  

procedure = p

  

The procedure optional argument accepts a procedure, p as an argument.  The newly created cache table is installed as p's remember table.  If p has option remember or it already has a remember table, an error is raised.

  

temporary = list

  

The temporary optional argument accepts a list of equations that are used to initialize the temporary entries of the cache table.  The lhs of each equation is used as the key and the rhs is used as the value. As a cache table is only capable of storing a fixed number of temporary entries, there is no guarantee that all the entries in the list will be in the returned table.

  

permanent = list

  

The permanent optional argument accepts a list of equations that are used to initialize the permanent entries of the cache table.  The lhs of each equation is used as the key and the rhs is used as the value.

• 

For more information on cache tables, see Cache Package.

Examples

The Cache command is always called using the Cache(arguments) calling sequence. You do not need to use with(Cache).

c1:=Cache60,permanent=1=2,2=3,temporary=3=4,4=5

c1:=Cache64,'temporary'=3=4,4=5,'permanent'=1=2,2=3

(2)

c2:=Cachec1,permanent=x=y,y=z,temporary=a=b,b=c

c2:=Cache64,'temporary'=b=c,3=4,4=5,a=b,'permanent'=1=2,y=z,2=3,x=y

(3)

p := proc(x) return 1; end proc;

p:=procxreturn1end proc

(4)

Cachec2,procedure=p

Cache64,'temporary'=b=c,3=4,4=5,a=b,'permanent'=1=2,y=z,2=3,x=y

(5)

p1

2

(6)

pa

b

(7)

See Also

Cache Package, Cache[AddPermanent], Cache[AddTemporary], Cache[RemovePermanent], Cache[RemoveTemporary], Cache[Resize]


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam