diff --git a/collects/profile/analyzer.ss b/collects/profile/analyzer.ss index 22bec08..5e5f651 100644 --- a/collects/profile/analyzer.ss +++ b/collects/profile/analyzer.ss @@ -55,13 +55,8 @@ (or (node-id (edge-caller edge)) '???) (or (node-id (edge-callee edge)) '???)))) -(define with-hash:not-found (gensym)) (define-syntax-rule (with-hash ) - (let ([t ] [k ]) - (let ([v (hash-ref t k with-hash:not-found)]) - (if (eq? v with-hash:not-found) - (let ([v ]) (hash-set! t k v) v) - v)))) + (hash-ref! (lambda () ))) ;; This function analyzes the output of the sampler. Returns a `profile' ;; struct holding a list of `node' values, each one representing a node in the