分割代入
List <- := method(aList, obj := call sender foreach(i, v, if(v at(0) == 0x2A, # "*(var)" obj setSlot(v slice(2, -1), aList slice(i)); break, obj setSlot(v, aList at(i)))) aList ) Object w := method( call message arguments mapInPlace(code) ) list("a", "b", "c") <- list(1, 2) w(d, e, f, *g) <- list(3, 4, 5, 6, 7, 8, 9) list(a, b, c, d, e, f, g) join(" ") print # => 1 2 nil 3 4 5 list(6, 7, 8, 9)