Add first cut at Java interop

This commit is contained in:
Colin Jones 2011-07-08 15:57:44 -05:00
parent d7d54f1a08
commit fb3f05e2c6
3 changed files with 30 additions and 2 deletions

View File

@ -0,0 +1,16 @@
(meditations
"You may have done more with Java than you know"
(= __ (class "warfare")) ; hint: try typing (javadoc "warfare") in the REPL
"The dot signifies easy and direct Java interoperation"
(= __ (.toUpperCase "select * from"))
"But instance method calls are very different from normal functions"
(= ["SELECT" "FROM" "WHERE"] (map ___ ["select" "from" "where"]))
"Constructing might be harder than breaking"
(= 10 (let [latch (java.util.concurrent.CountDownLatch. __)]
(.getCount latch)))
"Static methods are slashing prices!"
(== __ (Math/pow 2 10)))

View File

@ -192,7 +192,18 @@
nil
[true false]
(str "Congratulations on your Best Picture Oscar, "
"Evil Alien Conquerors!")]}})
"Evil Alien Conquerors!")]}
"java_interop" {"__" ['java.lang.String
"SELECT * FROM"
10
1024
]
"___" ['#(.toUpperCase %)
]
}
})
(defn replace-with [s k replacements]
(let [unreplaced-texts (split s (re-pattern (str "\\b" k "\\b")))]

View File

@ -19,7 +19,8 @@
"refs"
"atoms"
"macros"
"datatypes"])
"datatypes"
"java_interop"])
(defn ordered-koan-paths []
(map (fn [koan-name]