Cache Top-Level Command - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Cache Command

create a new cache table

 

Calling Sequence

Parameters

Description

Examples

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] );

c1Cache128,temporary=d=5,c=4,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).

c1Cache60,permanent=1=2,2=3,temporary=3=4,4=5

c1Cache64,temporary=3=4,4=5,permanent=1=2,2=3

(2)

c2Cachec1,permanent=x=y,y=z,temporary=a=b,b=c

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

(3)

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

pprocxreturn1end proc

(4)

Cachec2,procedure=p

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

(5)

p1

2

(6)

pa

b

(7)

See Also

Cache Package

Cache[AddPermanent]

Cache[AddTemporary]

Cache[PermanentEntries]

Cache[PermanentIndices]

Cache[RemovePermanent]

Cache[RemoveTemporary]

Cache[Resize]

Cache[Resize]

Cache[TemporaryEntries]

Cache[TemporaryIndices]

option cache