Skip to content

Instantly share code, notes, and snippets.

@pjstadig
Created October 7, 2015 18:19
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 pjstadig/311fddcd5c7d09906d7a to your computer and use it in GitHub Desktop.
Save pjstadig/311fddcd5c7d09906d7a to your computer and use it in GitHub Desktop.
(ns direct-linking.core)
(defn say-hello
([name]
(say-hello name 0))
([name n]
(println "Hello," name n)))
Compiled from "core.clj"
public final class direct_linking.core$say_hello extends clojure.lang.AFunction {
public static final clojure.lang.Var const__0;
public static final java.lang.Object const__1;
public static final clojure.lang.Var const__2;
public static {};
Code:
0: ldc #14 // String direct-linking.core
2: ldc #16 // String say-hello
4: invokestatic #22 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
7: checkcast #24 // class clojure/lang/Var
10: putstatic #26 // Field const__0:Lclojure/lang/Var;
13: lconst_0
14: invokestatic #32 // Method java/lang/Long.valueOf:(J)Ljava/lang/Long;
17: putstatic #34 // Field const__1:Ljava/lang/Object;
20: ldc #36 // String clojure.core
22: ldc #38 // String println
24: invokestatic #22 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
27: checkcast #24 // class clojure/lang/Var
30: putstatic #40 // Field const__2:Lclojure/lang/Var;
33: return
public direct_linking.core$say_hello();
Code:
0: aload_0
1: invokespecial #43 // Method clojure/lang/AFunction."<init>":()V
4: return
public static java.lang.Object invokeStatic(java.lang.Object, java.lang.Object);
Code:
0: iconst_3
1: anewarray #47 // class java/lang/Object
4: dup
5: iconst_0
6: ldc #49 // String Hello,
8: aastore
9: dup
10: iconst_1
11: aload_0
12: aconst_null
13: astore_0
14: aastore
15: dup
16: iconst_2
17: aload_1
18: aconst_null
19: astore_1
20: aastore
21: invokestatic #55 // Method clojure/lang/ArraySeq.create:([Ljava/lang/Object;)Lclojure/lang/ArraySeq;
24: invokestatic #60 // Method clojure/core$println.invokeStatic:(Lclojure/lang/ISeq;)Ljava/lang/Object;
27: areturn
public java.lang.Object invoke(java.lang.Object, java.lang.Object);
Code:
0: aload_1
1: aconst_null
2: astore_1
3: aload_2
4: aconst_null
5: astore_2
6: invokestatic #65 // Method invokeStatic:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
9: areturn
public static java.lang.Object invokeStatic(java.lang.Object);
Code:
0: getstatic #26 // Field const__0:Lclojure/lang/Var;
3: invokevirtual #70 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
6: checkcast #72 // class clojure/lang/IFn
9: aload_0
10: aconst_null
11: astore_0
12: getstatic #34 // Field const__1:Ljava/lang/Object;
15: invokeinterface #74, 3 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
20: areturn
public java.lang.Object invoke(java.lang.Object);
Code:
0: aload_1
1: aconst_null
2: astore_1
3: invokestatic #76 // Method invokeStatic:(Ljava/lang/Object;)Ljava/lang/Object;
6: areturn
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment