Skip to content

Instantly share code, notes, and snippets.

Created October 22, 2014 19:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/d94fc56fba4a1665f73f to your computer and use it in GitHub Desktop.
Save anonymous/d94fc56fba4a1665f73f to your computer and use it in GitHub Desktop.
(fn [x] (:foo/bar x)) disassembled
public java.lang.Object invoke(java.lang.Object x);
0 getstatic user$eval3717$fn__3718.__thunk__0__ : clojure.lang.ILookupThunk [37]
3 dup
4 aload_1 [x]
5 aconst_null
6 astore_1 [x]
7 dup_x2
8 invokeinterface clojure.lang.ILookupThunk.get(java.lang.Object) : java.lang.Object [46] [nargs: 2]
13 dup_x2
14 if_acmpeq 21
17 pop
18 goto 43
21 swap
22 pop
23 dup
24 getstatic user$eval3717$fn__3718.__site__0__ : clojure.lang.KeywordLookupSite [35]
27 swap
28 invokeinterface clojure.lang.ILookupSite.fault(java.lang.Object) : clojure.lang.ILookupThunk [52] [nargs: 2]
33 dup
34 putstatic user$eval3717$fn__3718.__thunk__0__ : clojure.lang.ILookupThunk [37]
37 swap
38 invokeinterface clojure.lang.ILookupThunk.get(java.lang.Object) : java.lang.Object [46] [nargs: 2]
43 areturn
Line numbers:
[pc: 0, line: 1]
[pc: 0, line: 1]
Local variable table:
[pc: 0, pc: 43] local: this index: 0 type: java.lang.Object
[pc: 0, pc: 43] local: x index: 1 type: java.lang.Object
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment