summaryrefslogtreecommitdiff
path: root/examples/parray.tcl
blob: 8ac5d3da241516087e2a6ac73b44ad678d89f68b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Example of using the 'putter' function to redirect parray output

set a {1 one 2 two 3 three}

# Use 'curry' to create a single command from two words
stderr puts "curry"
parray a * [curry stderr puts]

# Same thing, but an alias instead
stderr puts "\nalias"
alias stderr_puts stderr puts
parray a * stderr_puts

# Now use a lambda to accumulate the results in a buffer
stderr puts "\nlamba"
parray a * [lambda {msg} {lappend ::lines $msg}]
stderr puts [join $lines \n]