Skip to content

Instantly share code, notes, and snippets.

@ztellman
Created January 2, 2014 22:01
Show Gist options
  • Select an option

  • Save ztellman/8227826 to your computer and use it in GitHub Desktop.

Select an option

Save ztellman/8227826 to your computer and use it in GitHub Desktop.
> (println (disassemble (fn [x y] (+ x y))))
// Compiled from form-init6926380131348672798.clj (version 1.5 : 49.0, super bit)
public final class s3_journal$eval7007$fn__7008 extends clojure.lang.AFunction {
// Field descriptor #7 Lclojure/lang/Var;
public static final clojure.lang.Var const__0;
// Method descriptor #9 ()V
// Stack: 2, Locals: 0
public static {};
0 ldc <String "clojure.core"> [11]
2 ldc <String "+"> [13]
4 invokestatic clojure.lang.RT.var(java.lang.String, java.lang.String) : clojure.lang.Var [19]
7 checkcast clojure.lang.Var [21]
10 putstatic s3_journal$eval7007$fn__7008.const__0 : clojure.lang.Var [23]
13 return
Line numbers:
[pc: 0, line: 1]
// Method descriptor #9 ()V
// Stack: 1, Locals: 1
public s3_journal$eval7007$fn__7008();
0 aload_0
1 invokespecial clojure.lang.AFunction() [26]
4 return
Line numbers:
[pc: 0, line: 1]
// Method descriptor #28 (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
// Stack: 3, Locals: 3
public java.lang.Object invoke(java.lang.Object x, java.lang.Object y);
0 aload_1 [x]
1 aconst_null
2 astore_1 [x]
3 aload_2 [y]
4 aconst_null
5 astore_2 [y]
6 invokestatic clojure.lang.Numbers.add(java.lang.Object, java.lang.Object) : java.lang.Number [34]
9 areturn
Line numbers:
[pc: 0, line: 1]
[pc: 0, line: 1]
Local variable table:
[pc: 0, pc: 9] local: this index: 0 type: java.lang.Object
[pc: 0, pc: 9] local: x index: 1 type: java.lang.Object
[pc: 0, pc: 9] local: y index: 2 type: java.lang.Object
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment