REBOL [ Title: "Hash2" Author: "Aldo Calpini" Date: 05-Jul-2001 File: %hash2.r ] NUM: to-integer to-string system/script/args NUM: either NUM < 1 [ 1 ] [ NUM ] hash1: make [] 9999 for i 0 9999 1 [ append hash1 rejoin [ "foo_" i ] append hash1 i ] hash2: make [] 9999 for i 1 NUM 1 [ hash1: head hash1 forskip hash1 2 [ k: first hash1 hash2: head hash2 k2: select/skip hash2 k 2 either k2 == none [ append hash2 k append hash2 0 v: 0 hash2: head hash2 hash2: find/skip hash2 k 2 ] [ hash2: find/skip hash2 k 2 v: second hash2 ] v1: first select/skip hash1 k 2 v2: (v + v1) comment [ hash2: head hash2 hash2: find/skip hash2 k 2 hash2: next hash2 ] hash2: next hash2 change hash2 v2 comment [ if error? try [ change hash2 v2 ] [ print [ "error in change hash2 (k=" k ")" ] probe hash2 ] ] ] hash2: head hash2 ] hash1: head hash1 hash2: head hash2 write %output.rebol [ select/skip hash1 "foo_1" 2 select/skip hash1 "foo_9999" 2 select/skip hash2 "foo_1" 2 select/skip hash2 "foo_9999" 2 ]