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

Online Help

All Products    Maple    MapleSim


StringTools

  

LeftFold

  

left-associative iterator for strings

  

RightFold

  

right-associative iterator for strings

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

LeftFold( p, id, s )

RightFold( p, id, s )

Parameters

p

-

anything; typically, a Maple procedure to iterate over string s

id

-

anything; initial value

s

-

Maple string

Description

• 

The LeftFold( p, id, s ) function iterates procedure p over string s, composing the successive results from the left with the initial value id.

• 

If s is the string argument abcde, then the value of the expression LeftFold( F, id, s ) is Fe,Fd,Fc,Fb,Fa,id.

• 

Except for a more efficient implementation, this procedure is equivalent to the composition foldlp,id,seqt,t=s.

• 

The RightFold( p, id, s ) function iterates procedure p over string s, composing the successive results from the right with the initial value id.

• 

Except for a more efficient implementation, this procedure is equivalent to the composition foldrp,id,seqt,t=s.

• 

These functions are part of the StringTools package, and so they can be used in the form LeftFold(..) only after executing the command with(StringTools). However, they can always be accessed through the long form of the command by using the form StringTools[LeftFold](..).

• 

All of the StringTools package commands treat strings as (null-terminated) sequences of 8-bit (ASCII) characters.  Thus, there is no support for multibyte character encodings, such as unicode encodings.

Examples

withStringTools:

LeftFoldcat,``,abcde

edcba

(1)

LeftFolda,bopb,a,,abcde

a,b,c,d,e

(2)

RightFoldcat,``,abcde

abcde

(3)

RightFolda,bopb,a,,abcde

e,d,c,b,a,

(4)

See Also

cat

foldl

foldr

op

seq

string

StringTools

StringTools[AndMap]