drewr (owner)

Revisions

  • a34efa drewr Fri Oct 30 10:39:59 -0700 2009
  • 57c2a7 drewr Fri Oct 30 10:38:40 -0700 2009
gist: 222567 Download_button fork
public
Public Clone URL: git://gist.github.com/222567.git
Embed All Files: show embed
caseprof.clj #
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
(ns com.draines.test)
 
(defmacro casen [n switch]
  (let [f (fn [m]
            (let [s (format "x-%d" m)
                  k (keyword s)]
              [k s]))
        disps (map f (range 1 (inc n)))]
    `(case ~switch
       ~@(apply concat disps))))
 
(time (casen 5 :x-5))
; "Elapsed time: 0.045 msecs"
 
(time (casen 50 :x-50))
; "Elapsed time: 0.019 msecs"
 
(time (casen 100 :x-100))
; "Elapsed time: 0.025 msecs"
 
(time (casen 500 :x-500))
; java.lang.IllegalArgumentException: No distinct mapping found