Skip to content

Commit 584b9e1

Browse files
errata fixes for Beta 5
1 parent 40a94a9 commit 584b9e1

14 files changed

+32
-43
lines changed

examples/exploring.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@
115115
; END:greet-author-2
116116

117117
; START:ellipsize
118-
(use '[clojure.contrib.str-utils :only (re-split)])
118+
(use '[clojure.contrib.str-utils :only (re-split str-join)])
119119
(defn ellipsize [words]
120120
(let [[w1 w2 w3] (re-split #"\s" words)]
121121
(str-join " " [w1 w2 w3 "..."])))

examples/interop.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
(def print-element-handler
5454
(proxy [DefaultHandler] []
5555
(startElement
56-
[uri, local, qname, atts]
56+
[uri local qname atts]
5757
(println (format "Saw element: %s" qname)))))
5858
; END:print-element-handler
5959

examples/sequences.clj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@
3838
(def languages #{"java" "c" "d" "clojure"})
3939
(def letters #{"a" "b" "c" "d" "e"})
4040
(def beverages #{"java" "chai" "pop"})
41-
(def inventors {"java" "gosling", "clojure" "hickey", "ruby" "matz"})
4241
; END: sets
4342

4443
(defdemo demo-mutable-re

examples/utils.clj

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,12 @@
22
(:use [clojure.contrib.duck-streams :only (spit)])
33
(:import [java.io BufferedReader InputStreamReader]))
44

5-
(defn make-process [p] (.. Runtime getRuntime (exec (str p))))
6-
75
(require 'clojure.contrib.test-is)
86
(defmacro re-test [test-sym]
97
`(do
108
(require :reload-all '~test-sym)
119
(clojure.contrib.test-is/run-tests '~test-sym)))
1210

13-
(defn exec [cmdline]
14-
(let [r (BufferedReader.
15-
(InputStreamReader.
16-
(.getInputStream (make-process cmdline))))]
17-
(dorun (map println (line-seq r)))))
18-
1911
(defn classloader-seq
2012
([] (classloader-seq (clojure.lang.RT/baseLoader)))
2113
([cl]

lancet/snippets.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@
55
(defn set-property! [inst prop value]
66
(let [pd (property-descriptor inst prop)]
77
(throw-if (nil? pd) (str "No such property " prop))
8-
(.invoke (. pd getWriteMethod) inst (into-array [value])))) ; <label id="sequences.lancet.value"/>
8+
(.invoke (.getWriteMethod pd) inst (into-array [value])))) ; <label id="sequences.lancet.value"/>
99
; END: set-property!
1010

lancet/step_1_repl.clj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
(ns lancet.step-1-repl
2-
(:use clojure.contrib.except))
1+
(ns lancet.step-1-repl)
32

43
; START: ant-project
54
(def
@@ -25,6 +24,7 @@
2524
; END: instantiate-task
2625

2726
; START: safe-instantiate-task
27+
(use '[clojure.contrib.except :only (throw-if)])
2828
(defn safe-instantiate-task [project name]
2929
(let [task (.createTask project name)]
3030
(throw-if (nil? task)

lancet/step_2_complete.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
(defn set-property! [inst prop value]
2525
(let [pd (property-descriptor inst prop)]
2626
(throw-if (nil? pd) (str "No such property " prop))
27-
(.invoke (. pd getWriteMethod) inst (into-array [value]))))
27+
(.invoke (.getWriteMethod pd) inst (into-array [value]))))
2828

2929
(defn set-properties! [inst prop-map]
3030
(doseq [[k v] prop-map] (set-property! inst (name k) v)))

lancet/step_2_repl.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
(defn set-property! [inst prop value]
2828
(let [pd (property-descriptor inst prop)] ; <label id="sequences.lancet.let"/>
2929
(throw-if (nil? pd) (str "No such property " prop)) ; <label id="sequences.lancet.throw-if"/>
30-
(.invoke (. pd getWriteMethod) inst (into-array [value])))) ; <label id="sequences.lancet.into-array"/>
30+
(.invoke (.getWriteMethod pd) inst (into-array [value])))) ; <label id="sequences.lancet.into-array"/>
3131
; END: set-property!
3232

3333
; START: set-properties!

lancet/step_4_complete.clj

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@
33
lancet.step-2-complete lancet.step-3-complete))
44

55
(defmacro has-run? [f]
6-
`((:has-run (meta (var ~f)))))
6+
`((:has-run-fn (meta (var ~f)))))
77

88
(defmacro reset [f]
99
`((:reset-fn (meta (var ~f)))))
1010

1111
(defmacro deftarget [sym doc & forms]
12-
(let [has-run (gensym "hr-") reset-fn (gensym "rf-")]
13-
`(let [[~has-run ~reset-fn once-fn#] (runonce (fn [] ~@forms))]
14-
(def ~(with-meta sym {:doc doc :has-run has-run :reset-fn reset-fn})
12+
(let [has-run-fn (gensym "hr-") reset-fn (gensym "rf-")]
13+
`(let [[~has-run-fn ~reset-fn once-fn#] (runonce (fn [] ~@forms))]
14+
(def ~(with-meta sym {:doc doc :has-run-fn has-run-fn :reset-fn reset-fn})
1515
once-fn#))))
1616

1717
(defmacro define-ant-task [clj-name ant-name]
@@ -20,14 +20,11 @@
2020
(.execute task#)
2121
task#)))
2222

23-
(defn task-names [] (map symbol (seq (.. ant-project getTaskDefinitions keySet))))
23+
(defn task-names [] (map symbol (sort (.. ant-project getTaskDefinitions keySet))))
2424

2525
(defn safe-ant-name [n]
2626
(if (ns-resolve 'clojure.core n) (symbol (str "ant-" n)) n))
2727

28-
(defmacro define-all-ant-tasks []
29-
`(do ~@(map (fn [n] `(define-ant-task ~n ~n)) (task-names))))
30-
3128
(defmacro define-all-ant-tasks []
3229
`(do ~@(map (fn [n] `(define-ant-task ~(safe-ant-name n) ~n)) (task-names))))
3330

lancet/step_4_repl.clj

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33

44
; START: has-run-fn
55
(defn has-run? [v]
6-
((:has-run (meta v))))
6+
((:has-run-fn (meta v))))
77
; END: has-run-fn
88

99
(def has-run-fn has-run?)
1010

1111
; START: has-run-macro
1212
(defmacro has-run? [f]
13-
`((:has-run (meta (var ~f)))))
13+
`((:has-run-fn (meta (var ~f)))))
1414
; END: has-run-macro
1515

1616
; START: reset
@@ -20,9 +20,11 @@
2020

2121
; START: deftarget
2222
(defmacro deftarget [sym doc & forms]
23-
(let [has-run (gensym "hr-") reset-fn (gensym "rf-")]
24-
`(let [[~has-run ~reset-fn once-fn#] (runonce (fn [] ~@forms))]
25-
(def ~(with-meta sym {:doc doc :has-run has-run :reset-fn reset-fn})
23+
(let [has-run-fn (gensym "hr-") reset-fn (gensym "rf-")]
24+
`(let [[~has-run-fn ~reset-fn once-fn#] (runonce (fn [] ~@forms))]
25+
(def ~(with-meta
26+
sym
27+
{:doc doc :has-run-fn has-run-fn :reset-fn reset-fn})
2628
once-fn#))))
2729
; END: deftarget
2830

@@ -36,7 +38,7 @@
3638

3739
; START: task-names
3840
(defn task-names []
39-
(map symbol (seq (.. ant-project getTaskDefinitions keySet))))
41+
(map symbol (sort (.. ant-project getTaskDefinitions keySet))))
4042
; END: task-names
4143

4244
; START: safe-ant-name

0 commit comments

Comments
 (0)