aboutsummaryrefslogtreecommitdiff
path: root/examples/parray.tcl
diff options
context:
space:
mode:
Diffstat (limited to 'examples/parray.tcl')
-rw-r--r--examples/parray.tcl17
1 files changed, 17 insertions, 0 deletions
diff --git a/examples/parray.tcl b/examples/parray.tcl
new file mode 100644
index 0000000..8ac5d3d
--- /dev/null
+++ b/examples/parray.tcl
@@ -0,0 +1,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]