10 lines
478 B
Plaintext
10 lines
478 B
Plaintext
;; A closure's environment is found by walking the storage its function value
|
|
;; sits in — a frame slot, a global, a struct, an Option, a Vec's elements —
|
|
;; and a Map's storage is not walked. An (Fn ...) as a Map's value would hold
|
|
;; an environment the collector cannot see and would free. A Vec holds them,
|
|
;; and a (CFn ...) carries no environment and may go in a Map.
|
|
(defn main [] i32
|
|
(let [ops (map-new string (Fn [i32] i32))]
|
|
(put ops "id" (fn [x] x))
|
|
0))
|