fork(1) download
  1. set text { 1 4 5 19
  2. 1 5
  3. 2 3 6 59
  4. 2 6
  5. 3 2 4 60
  6. 3 4
  7. 4 1 3 61
  8. 4 3
  9. 25 13 23 64 65
  10. 13 18
  11. 14 13 15 75
  12. 14 15
  13. 15 14 16 76
  14. 15 14
  15. 45 44 102 103 104}
  16. puts "Original:"
  17. puts $text
  18.  
  19. proc addevery {txt amount} {
  20. upvar text gtext
  21. set result [list]
  22. foreach line [split $txt \n] {
  23. set lineresult [list]
  24. foreach item [regexp -all -inline {\S+} $line] {
  25. lappend lineresult [expr {$item+$amount}]
  26. }
  27. lappend result $lineresult
  28. }
  29. set gtext [join $result \n]
  30. puts $gtext
  31. return
  32. }
  33.  
  34. puts "\nAdding 129:"
  35. addevery $text 129
  36.  
  37. puts "\nAdding again 129:"
  38. addevery $text 129
Success #stdin #stdout 0s 15768KB
stdin
Standard input is empty
stdout
Original:
    1    4    5   19
    1    5
    2    3    6   59
    2    6
    3    2    4   60
    3    4
    4    1    3   61
    4    3
   25   13   23   64   65
   13   18
   14   13   15   75
   14   15
   15   14   16   76
   15   14
   45   44  102  103  104

Adding 129:
130 133 134 148
130 134
131 132 135 188
131 135
132 131 133 189
132 133
133 130 132 190
133 132
154 142 152 193 194
142 147
143 142 144 204
143 144
144 143 145 205
144 143
174 173 231 232 233

Adding again 129:
259 262 263 277
259 263
260 261 264 317
260 264
261 260 262 318
261 262
262 259 261 319
262 261
283 271 281 322 323
271 276
272 271 273 333
272 273
273 272 274 334
273 272
303 302 360 361 362