clementine 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. data/.gitignore +1 -0
  2. data/Gemfile +4 -2
  3. data/LICENSE.txt +22 -0
  4. data/README.md +11 -6
  5. data/Rakefile +22 -0
  6. data/clementine.gemspec +2 -1
  7. data/ext/clojure-clojurescript-bef56a7/.gitignore +13 -0
  8. data/ext/clojure-clojurescript-bef56a7/Clojurescript.iml +12 -0
  9. data/ext/clojure-clojurescript-bef56a7/README.md +29 -0
  10. data/ext/clojure-clojurescript-bef56a7/benchmark/cljs/benchmark_runner.cljs +155 -0
  11. data/ext/clojure-clojurescript-bef56a7/bin/cljsc +21 -0
  12. data/ext/clojure-clojurescript-bef56a7/bin/cljsc.bat +18 -0
  13. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/bin/cljsc.clj +0 -0
  14. data/ext/clojure-clojurescript-bef56a7/devnotes/README.org +35 -0
  15. data/ext/clojure-clojurescript-bef56a7/devnotes/bcrepl.org +13 -0
  16. data/ext/clojure-clojurescript-bef56a7/devnotes/cljs.org +500 -0
  17. data/ext/clojure-clojurescript-bef56a7/devnotes/corelib.org +583 -0
  18. data/ext/clojure-clojurescript-bef56a7/devnotes/day1.org +203 -0
  19. data/ext/clojure-clojurescript-bef56a7/devnotes/day2.org +44 -0
  20. data/ext/clojure-clojurescript-bef56a7/devnotes/talk.org +126 -0
  21. data/ext/clojure-clojurescript-bef56a7/devnotes/testing +13 -0
  22. data/ext/clojure-clojurescript-bef56a7/devnotes/todo.org +121 -0
  23. data/ext/clojure-clojurescript-bef56a7/epl-v10.html +261 -0
  24. data/ext/clojure-clojurescript-bef56a7/pom.template.xml +88 -0
  25. data/ext/clojure-clojurescript-bef56a7/samples/dom/.gitignore +2 -0
  26. data/ext/clojure-clojurescript-bef56a7/samples/dom/src/dom/test.cljs +48 -0
  27. data/ext/clojure-clojurescript-bef56a7/samples/dom/test.html +30 -0
  28. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/.gitignore +2 -0
  29. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/README.md +53 -0
  30. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/externed-lib.js +7 -0
  31. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/externs.js +3 -0
  32. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/hello-extern.html +14 -0
  33. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/hello-js-dev.html +18 -0
  34. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/hello-js.html +17 -0
  35. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/my-external-lib.js +3 -0
  36. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/src/hello-js/core.cljs +9 -0
  37. data/ext/clojure-clojurescript-bef56a7/samples/hello-js/src/hello-js/extern-example.cljs +5 -0
  38. data/ext/clojure-clojurescript-bef56a7/samples/hello/.gitignore +2 -0
  39. data/ext/clojure-clojurescript-bef56a7/samples/hello/README.md +34 -0
  40. data/ext/clojure-clojurescript-bef56a7/samples/hello/hello-dev.html +18 -0
  41. data/ext/clojure-clojurescript-bef56a7/samples/hello/hello.html +13 -0
  42. data/ext/clojure-clojurescript-bef56a7/samples/hello/src/hello/core.cljs +8 -0
  43. data/ext/clojure-clojurescript-bef56a7/samples/hello/src/hello/foo/bar.cljs +4 -0
  44. data/ext/clojure-clojurescript-bef56a7/samples/nodehello.cljs +18 -0
  45. data/ext/clojure-clojurescript-bef56a7/samples/nodels.cljs +17 -0
  46. data/ext/clojure-clojurescript-bef56a7/samples/repl/.gitignore +2 -0
  47. data/ext/clojure-clojurescript-bef56a7/samples/repl/README.md +101 -0
  48. data/ext/clojure-clojurescript-bef56a7/samples/repl/index.html +27 -0
  49. data/ext/clojure-clojurescript-bef56a7/samples/repl/src/repl/test.cljs +73 -0
  50. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/.gitignore +2 -0
  51. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/README.md +42 -0
  52. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/index-advanced.html +80 -0
  53. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/index.html +88 -0
  54. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/reset.css +48 -0
  55. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/src/twitterbuzz/anneal.cljs +66 -0
  56. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/src/twitterbuzz/core.cljs +307 -0
  57. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/src/twitterbuzz/dom-helpers.cljs +95 -0
  58. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/src/twitterbuzz/layout.cljs +100 -0
  59. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/src/twitterbuzz/leaderboard.cljs +40 -0
  60. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/src/twitterbuzz/radial.cljs +91 -0
  61. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/src/twitterbuzz/showgraph.cljs +121 -0
  62. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/src/twitterbuzz/timeline.cljs +39 -0
  63. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/style.css +301 -0
  64. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/test_data.txt +1 -0
  65. data/ext/clojure-clojurescript-bef56a7/samples/twitterbuzz/tweet_maps.txt +1 -0
  66. data/ext/clojure-clojurescript-bef56a7/script/benchmark +30 -0
  67. data/ext/clojure-clojurescript-bef56a7/script/bootstrap +70 -0
  68. data/ext/clojure-clojurescript-bef56a7/script/browser-repl +16 -0
  69. data/ext/clojure-clojurescript-bef56a7/script/build +59 -0
  70. data/ext/clojure-clojurescript-bef56a7/script/clean +5 -0
  71. data/ext/clojure-clojurescript-bef56a7/script/closure-library-release/google-closure-library-third-party.pom.template +59 -0
  72. data/ext/clojure-clojurescript-bef56a7/script/closure-library-release/google-closure-library.pom.template +54 -0
  73. data/ext/clojure-clojurescript-bef56a7/script/closure-library-release/make-closure-library-jars.sh +87 -0
  74. data/ext/clojure-clojurescript-bef56a7/script/compile +41 -0
  75. data/ext/clojure-clojurescript-bef56a7/script/repl +13 -0
  76. data/ext/clojure-clojurescript-bef56a7/script/repl.bat +13 -0
  77. data/ext/clojure-clojurescript-bef56a7/script/repljs +15 -0
  78. data/ext/clojure-clojurescript-bef56a7/script/repljs.bat +14 -0
  79. data/ext/clojure-clojurescript-bef56a7/script/test +38 -0
  80. data/ext/clojure-clojurescript-bef56a7/script/test-compile +30 -0
  81. data/ext/clojure-clojurescript-bef56a7/src/clj/cljs/analyzer.clj +975 -0
  82. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/clj/cljs/closure.clj +173 -73
  83. data/ext/clojure-clojurescript-bef56a7/src/clj/cljs/compiler.clj +1081 -0
  84. data/ext/clojure-clojurescript-bef56a7/src/clj/cljs/core.clj +1158 -0
  85. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/clj/cljs/repl.clj +51 -25
  86. data/ext/clojure-clojurescript-bef56a7/src/clj/cljs/repl/browser.clj +258 -0
  87. data/ext/clojure-clojurescript-bef56a7/src/clj/cljs/repl/reflect.clj +75 -0
  88. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/clj/cljs/repl/rhino.clj +6 -5
  89. data/ext/clojure-clojurescript-bef56a7/src/clj/cljs/repl/server.clj +173 -0
  90. data/ext/clojure-clojurescript-bef56a7/src/clj/cljs/tagged_literals.clj +30 -0
  91. data/ext/clojure-clojurescript-bef56a7/src/cljs/cljs/core.cljs +7197 -0
  92. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/cljs/nodejs.cljs +1 -1
  93. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/cljs/nodejs_externs.js +0 -0
  94. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/cljs/nodejscli.cljs +1 -1
  95. data/ext/clojure-clojurescript-bef56a7/src/cljs/cljs/reader.cljs +551 -0
  96. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/clojure/browser/dom.cljs +59 -13
  97. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/clojure/browser/event.cljs +0 -0
  98. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/clojure/browser/net.cljs +8 -7
  99. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/clojure/browser/repl.cljs +2 -2
  100. data/ext/clojure-clojurescript-bef56a7/src/cljs/clojure/core/reducers.cljs +298 -0
  101. data/ext/clojure-clojurescript-bef56a7/src/cljs/clojure/data.cljs +162 -0
  102. data/ext/clojure-clojurescript-bef56a7/src/cljs/clojure/reflect.cljs +48 -0
  103. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/clojure/set.cljs +0 -0
  104. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/clojure/string.cljs +4 -10
  105. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/clojure/walk.cljs +0 -0
  106. data/{vendor/assets → ext/clojure-clojurescript-bef56a7}/src/cljs/clojure/zip.cljs +0 -0
  107. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/binding_test.cljs +7 -0
  108. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/binding_test_other_ns.cljs +3 -0
  109. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/core_test.cljs +1678 -0
  110. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/import_test.cljs +11 -0
  111. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/import_test/foo.cljs +5 -0
  112. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/letfn_test.cljs +19 -0
  113. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/macro_test.cljs +6 -0
  114. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/macro_test/macros.clj +5 -0
  115. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/ns_test.cljs +14 -0
  116. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/ns_test/bar.cljs +3 -0
  117. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/ns_test/foo.cljs +7 -0
  118. data/ext/clojure-clojurescript-bef56a7/test/cljs/cljs/reader_test.cljs +124 -0
  119. data/ext/clojure-clojurescript-bef56a7/test/cljs/clojure/data_test.cljs +22 -0
  120. data/ext/clojure-clojurescript-bef56a7/test/cljs/clojure/string_test.cljs +97 -0
  121. data/ext/clojure-clojurescript-bef56a7/test/cljs/foo/ns_shadow_test.cljs +9 -0
  122. data/ext/clojure-clojurescript-bef56a7/test/cljs/test_runner.cljs +26 -0
  123. data/lib/clementine.rb +3 -24
  124. data/lib/clementine/clojurescript_engine.rb +9 -48
  125. data/lib/clementine/clojurescript_engine/base.rb +15 -0
  126. data/lib/clementine/clojurescript_engine/jruby.rb +46 -0
  127. data/lib/clementine/{clojurescript_engine_mri.rb → clojurescript_engine/mri.rb} +17 -10
  128. data/lib/clementine/version.rb +1 -1
  129. data/test/clojurescript_engine_test.rb +36 -14
  130. metadata +177 -83
  131. data/vendor/assets/lib/clojure.jar +0 -0
  132. data/vendor/assets/lib/compiler.jar +0 -0
  133. data/vendor/assets/lib/goog.jar +0 -0
  134. data/vendor/assets/lib/js.jar +0 -0
  135. data/vendor/assets/src/clj/cljs/compiler.clj +0 -1341
  136. data/vendor/assets/src/clj/cljs/core.clj +0 -702
  137. data/vendor/assets/src/clj/cljs/repl/browser.clj +0 -341
  138. data/vendor/assets/src/cljs/cljs/core.cljs +0 -3330
  139. data/vendor/assets/src/cljs/cljs/reader.cljs +0 -360
@@ -0,0 +1,583 @@
1
+ * DONE *
2
+ * *'
3
+ * DONE *1
4
+ * DONE *2
5
+ * DONE *3
6
+ * *agent*
7
+ * *allow-unresolved-vars*
8
+ * *assert*
9
+ * *clojure-version*
10
+ * *command-line-args*
11
+ * *compile-files*
12
+ * *compile-path*
13
+ * TODO *e
14
+ * *err*
15
+ * *file*
16
+ * *flush-on-newline*
17
+ * *fn-loader*
18
+ * *in*
19
+ * *math-context*
20
+ * *ns*
21
+ * *out*
22
+ * *print-dup*
23
+ * *print-length*
24
+ * *print-level*
25
+ * *print-meta*
26
+ * *print-readably*
27
+ * *read-eval*
28
+ * *source-path*
29
+ * TODO *unchecked-math*
30
+ does what?
31
+ * *use-context-classloader*
32
+ * *verbose-defrecords*
33
+ * *warn-on-reflection*
34
+ * DONE +
35
+ * +'
36
+ * DONE -
37
+ * -'
38
+ * DONE ->
39
+ * DONE ->>
40
+ * ->ArrayChunk
41
+ * ->Vec
42
+ * ->VecNode
43
+ * ->VecSeq
44
+ * -cache-protocol-fn
45
+ * -reset-methods
46
+ * DONE ..
47
+ * DONE /
48
+ * DONE <
49
+ * DONE <=
50
+ * DONE =
51
+ * DONE ==
52
+ * DONE >
53
+ * DONE >=
54
+ * EMPTY-NODE
55
+ * accessor
56
+ * DONE aclone
57
+ * add-classpath
58
+ * add-watch
59
+ * agent
60
+ * agent-error
61
+ * agent-errors
62
+ * DONE aget
63
+ * DONE alength
64
+ * TODO alias
65
+ * all-ns
66
+ * alter
67
+ * DONE alter-meta!
68
+ * alter-var-root
69
+ * DONE amap
70
+ * DONE ancestors
71
+ * DONE and
72
+ * DONE apply
73
+ * DONE areduce
74
+ * DONE array-map
75
+ * DONE aset
76
+ * aset-boolean
77
+ * aset-byte
78
+ * aset-char
79
+ * aset-double
80
+ * aset-float
81
+ * aset-int
82
+ * aset-long
83
+ * aset-short
84
+ * DONE assert
85
+ * DONE assoc
86
+ * DONE assoc!
87
+ * DONE assoc-in
88
+ * DONE associative?
89
+ * DONE atom
90
+ * await
91
+ * await-for
92
+ * await1
93
+ * bases
94
+ * bean
95
+ * bigdec
96
+ * TODO bigint
97
+ * biginteger
98
+ * DONE binding
99
+ * DONE bit-and
100
+ * DONE bit-and-not
101
+ * DONE bit-clear
102
+ * DONE bit-flip
103
+ * DONE bit-not
104
+ * DONE bit-or
105
+ * DONE bit-set
106
+ * DONE bit-shift-left
107
+ * DONE bit-shift-right
108
+ * DONE bit-test
109
+ * DONE bit-xor
110
+ * DONE boolean
111
+ * boolean-array
112
+ * booleans
113
+ * bound-fn
114
+ * bound-fn*
115
+ * bound?
116
+ * DONE butlast
117
+ * TODO byte
118
+ * byte-array
119
+ * bytes
120
+ * DONE case
121
+ * cast
122
+ * char
123
+ * char-array
124
+ * char-escape-string
125
+ * char-name-string
126
+ * char?
127
+ * chars
128
+ * chunk
129
+ * chunk-append
130
+ * chunk-buffer
131
+ * chunk-cons
132
+ * chunk-first
133
+ * chunk-next
134
+ * chunk-rest
135
+ * chunked-seq?
136
+ * class
137
+ * class?
138
+ * clear-agent-errors
139
+ * clojure-version
140
+ * DONE coll?
141
+ * DONE comment
142
+ * commute
143
+ * DONE comp
144
+ * TODO comparator
145
+ * DONE compare
146
+ * DONE compare-and-set!
147
+ * compile
148
+ * DONE complement
149
+ * DONE concat
150
+ * DONE cond
151
+ * DONE condp
152
+ * DONE conj
153
+ * DONE conj!
154
+ * DONE cons
155
+ * DONE constantly
156
+ * construct-proxy
157
+ * DONE contains?
158
+ * DONE count
159
+ * DONE counted?
160
+ * create-ns
161
+ * create-struct
162
+ * DONE cycle
163
+ * DONE dec
164
+ * dec'
165
+ * decimal?
166
+ * DONE declare
167
+ * definline
168
+ * definterface
169
+ * DONE defmacro
170
+ * DONE defmethod
171
+ * DONE defmulti
172
+ * DONE defn
173
+ * DONE defn-
174
+ * defonce
175
+ * DONE defprotocol
176
+ * DONE defrecord
177
+ * defstruct
178
+ * DONE deftype
179
+ * DONE delay
180
+ * DONE delay?
181
+ * deliver
182
+ * TODO denominator
183
+ * DONE deref
184
+ * DONE derive
185
+ * DONE descendants
186
+ * DONE destructure
187
+ For macros only, uses clojure.core version
188
+ * DONE disj
189
+ * DONE disj!
190
+ * DONE dissoc
191
+ * DONE dissoc!
192
+ * DONE distinct
193
+ * DONE distinct?
194
+ * DONE doall
195
+ * DONE dorun
196
+ * DONE doseq
197
+ * dosync
198
+ * DONE dotimes
199
+ * DONE doto
200
+ * TODO double
201
+ * DONE double-array
202
+ * TODO doubles
203
+ * DONE drop
204
+ * DONE drop-last
205
+ * DONE drop-while
206
+ * DONE empty
207
+ * DONE empty?
208
+ * ensure
209
+ * enumeration-seq
210
+ * error-handler
211
+ * error-mode
212
+ * eval
213
+ * DONE even?
214
+ * DONE every-pred
215
+ * DONE every?
216
+ * TODO extend
217
+ maybe not?
218
+ * DONE extend-protocol
219
+ macro currently expands into extend call
220
+ * DONE extend-type
221
+ * extenders
222
+ * extends?
223
+ * DONE false?
224
+ * DONE ffirst
225
+ * file-seq
226
+ * DONE filter
227
+ * DONE find
228
+ * TODO find-keyword
229
+ * find-ns
230
+ * find-protocol-impl
231
+ * find-protocol-method
232
+ * find-var
233
+ * DONE first
234
+ * DONE flatten
235
+ * float
236
+ * float-array
237
+ * float?
238
+ * floats
239
+ * flush
240
+ * DONE fn
241
+ * DONE fn?
242
+ * DONE fnext
243
+ * DONE fnil
244
+ * DONE for
245
+ * DONE force
246
+ * format
247
+ * DONE frequencies
248
+ * future
249
+ * future-call
250
+ * future-cancel
251
+ * future-cancelled?
252
+ * future-done?
253
+ * future?
254
+ * gen-class
255
+ * gen-interface
256
+ * DONE gensym
257
+ * DONE get
258
+ * DONE get-in
259
+ * DONE get-method
260
+ * get-proxy-class
261
+ * get-thread-bindings
262
+ * DONE get-validator
263
+ * DONE group-by
264
+ * DONE hash
265
+ * DONE hash-combine
266
+ * DONE hash-map
267
+ * TODO hash-set
268
+ * DONE identical?
269
+ * DONE identity
270
+ * DONE if-let
271
+ * DONE if-not
272
+ * DONE ifn?
273
+ * import
274
+ * DONE in-ns
275
+ * DONE inc
276
+ * inc'
277
+ * init-proxy
278
+ * DONE instance?
279
+ does what?
280
+ * DONE int
281
+ * int-array
282
+ * DONE integer?
283
+ * DONE interleave
284
+ * intern
285
+ * DONE interpose
286
+ * DONE into
287
+ * DONE into-array
288
+ * ints
289
+ * io!
290
+ * DONE isa?
291
+ does what?
292
+ * DONE iterate
293
+ * iterator-seq
294
+ * DONE juxt
295
+ * DONE keep
296
+ * DONE keep-indexed
297
+ * DONE key
298
+ * DONE keys
299
+ * DONE keyword
300
+ * DONE keyword?
301
+ * DONE last
302
+ * TODO lazy-cat
303
+ * DONE lazy-seq
304
+ * DONE let
305
+ * DONE letfn
306
+ ** TODO needs compiler letfn*
307
+ * line-seq
308
+ * DONE list
309
+ * DONE list*
310
+ * DONE list?
311
+ * load
312
+ * DONE load-file
313
+ * load-reader
314
+ * load-string
315
+ * loaded-libs
316
+ * locking
317
+ * DONE long
318
+ * DONE long-array
319
+ * TODO longs
320
+ * DONE loop
321
+ * macroexpand
322
+ * macroexpand-1
323
+ * DONE make-array
324
+ * DONE make-hierarchy
325
+ * DONE map
326
+ * DONE map-indexed
327
+ * DONE map?
328
+ * DONE mapcat
329
+ * DONE max
330
+ * DONE max-key
331
+ * memfn
332
+ * DONE memoize
333
+ * DONE merge
334
+ * DONE merge-with
335
+ * DONE meta
336
+ * method-sig
337
+ * DONE methods
338
+ * DONE min
339
+ * DONE min-key
340
+ * DONE mod
341
+ * munge
342
+ * DONE name
343
+ * DONE namespace
344
+ * namespace-munge
345
+ * DONE neg?
346
+ * newline
347
+ * DONE next
348
+ * DONE nfirst
349
+ * DONE nil?
350
+ * DONE nnext
351
+ * DONE not
352
+ * DONE not-any?
353
+ * DONE not-empty
354
+ * DONE not-every?
355
+ * DONE not=
356
+ * DONE ns
357
+ * ns-aliases
358
+ * ns-imports
359
+ * ns-interns
360
+ * ns-map
361
+ * ns-name
362
+ * ns-publics
363
+ * ns-refers
364
+ * ns-resolve
365
+ * ns-unalias
366
+ * ns-unmap
367
+ * DONE nth
368
+ * DONE nthnext
369
+ * TODO num
370
+ * DONE number?
371
+ * TODO numerator
372
+ * DONE object-array
373
+ * DONE odd?
374
+ * DONE or
375
+ * DONE parents
376
+ * DONE partial
377
+ * DONE partition
378
+ * DONE partition-all
379
+ * DONE partition-by
380
+ * pcalls
381
+ * DONE peek
382
+ * DONE persistent!
383
+ * pmap
384
+ * DONE pop
385
+ * DONE pop!
386
+ * pop-thread-bindings
387
+ * DONE pos?
388
+ * DONE pr
389
+ dunno about printing
390
+ * DONE pr-str
391
+ * DONE prefer-method
392
+ * DONE prefers
393
+ * primitives-classnames
394
+ * DONE print
395
+ * print-ctor
396
+ * TODO print-dup
397
+ * TODO print-method
398
+ * TODO print-simple
399
+ * DONE print-str
400
+ * printf
401
+ * DONE println
402
+ * DONE println-str
403
+ * DONE prn
404
+ * DONE prn-str
405
+ * promise
406
+ * proxy
407
+ * proxy-call-with-super
408
+ * proxy-mappings
409
+ * proxy-name
410
+ * proxy-super
411
+ * push-thread-bindings
412
+ * pvalues
413
+ * DONE quot
414
+ * DONE rand
415
+ * DONE rand-int
416
+ * DONE rand-nth
417
+ * DONE range
418
+ * TODO ratio?
419
+ * TODO rational?
420
+ * TODO rationalize
421
+ * DONE re-find
422
+ dunno about regex
423
+ * re-groups
424
+ * re-matcher
425
+ * DONE re-matches
426
+ * DONE re-pattern
427
+ * DONE re-seq
428
+ * read
429
+ * read-line
430
+ * read-string
431
+ * DONE realized?
432
+ * DONE reduce
433
+ * DONE reductions
434
+ * ref
435
+ * ref-history-count
436
+ * ref-max-history
437
+ * ref-min-history
438
+ * ref-set
439
+ * refer
440
+ * refer-clojure
441
+ * DONE reify
442
+ * TODO specify - make a particular object extend a protocol
443
+ * release-pending-sends
444
+ * DONE rem
445
+ * DONE remove
446
+ * DONE remove-all-methods
447
+ * DONE remove-method
448
+ * remove-ns
449
+ * remove-watch
450
+ * DONE repeat
451
+ * DONE repeatedly
452
+ * DONE replace
453
+ * DONE replicate
454
+ * TODO require
455
+ ticket #8
456
+ * DONE reset!
457
+ * reset-meta!
458
+ * resolve
459
+ * DONE rest
460
+ * restart-agent
461
+ * resultset-seq
462
+ * DONE reverse
463
+ * DONE reversible?
464
+ * DONE rseq
465
+ * DONE rsubseq
466
+ * DONE satisfies?
467
+ as macro
468
+ * DONE second
469
+ * DONE select-keys
470
+ * send
471
+ * send-off
472
+ * DONE seq
473
+ * DONE seq?
474
+ * seque
475
+ * TODO sequence
476
+ * DONE sequential?
477
+ * DONE set
478
+ * set-error-handler!
479
+ * set-error-mode!
480
+ * set-validator!
481
+ * DONE set?
482
+ * short
483
+ * short-array
484
+ * shorts
485
+ * TODO shuffle
486
+ * shutdown-agents
487
+ * slurp
488
+ * DONE some
489
+ * DONE some-fn
490
+ * DONE sort
491
+ * DONE sort-by
492
+ * TODO sorted-map
493
+ * TODO sorted-map-by
494
+ * TODO sorted-set
495
+ * TODO sorted-set-by
496
+ * TODO sorted?
497
+ * TODO special-symbol?
498
+ * spit
499
+ * DONE split-at
500
+ * DONE split-with
501
+ * DONE str
502
+ * DONE string?
503
+ * struct
504
+ * struct-map
505
+ * DONE subs
506
+ * TODO subseq
507
+ * DONE subvec
508
+ * TODO supers
509
+ * DONE swap!
510
+ * DONE symbol
511
+ * DONE symbol?
512
+ * sync
513
+ * DONE take
514
+ * DONE take-last
515
+ * DONE take-nth
516
+ * DONE take-while
517
+ * test
518
+ * the-ns
519
+ * thread-bound?
520
+ * DONE time
521
+ * DONE to-array
522
+ * DONE to-array-2d
523
+ * DONE trampoline
524
+ * DONE transient
525
+ * DONE tree-seq
526
+ * DONE true?
527
+ * DONE type - returns JS constructor
528
+ * TODO unchecked-add
529
+ * TODO unchecked-add-int
530
+ * TODO unchecked-byte
531
+ * TODO unchecked-char
532
+ * TODO unchecked-dec
533
+ * TODO unchecked-dec-int
534
+ * TODO unchecked-divide-int
535
+ * TODO unchecked-double
536
+ * TODO unchecked-float
537
+ * TODO unchecked-inc
538
+ * TODO unchecked-inc-int
539
+ * TODO unchecked-int
540
+ * TODO unchecked-long
541
+ * TODO unchecked-multiply
542
+ * TODO unchecked-multiply-int
543
+ * TODO unchecked-negate
544
+ * TODO unchecked-negate-int
545
+ * TODO unchecked-remainder-int
546
+ * TODO unchecked-short
547
+ * TODO unchecked-subtract
548
+ * TODO unchecked-subtract-int
549
+ * DONE underive
550
+ * unquote
551
+ * unquote-splicing
552
+ * DONE update-in
553
+ * update-proxy
554
+ * use
555
+ * DONE val
556
+ * DONE vals
557
+ * var-get
558
+ * var-set
559
+ * var?
560
+ * DONE vary-meta
561
+ * DONE vec
562
+ * DONE vector
563
+ * vector-of
564
+ * DONE vector?
565
+ * DONE when
566
+ * DONE when-first
567
+ * DONE when-let
568
+ * DONE when-not
569
+ * DONE while
570
+ * with-bindings
571
+ * with-bindings*
572
+ * with-in-str
573
+ * with-loading-context
574
+ * TODO with-local-vars
575
+ * DONE with-meta
576
+ * with-open
577
+ * with-out-str
578
+ * with-precision
579
+ * with-redefs
580
+ * with-redefs-fn
581
+ * TODO xml-seq
582
+ * DONE zero?
583
+ * DONE zipmap