view src/rlm/light_base.clj @ 0:78a630e650d2

initial import
author Robert McIntyre <rlm@mit.edu>
date Tue, 18 Oct 2011 00:57:08 -0700
parents
children c7df1ea6fd71
line wrap: on
line source
1 (ns rlm.light-base
2 {:author "Robert McIntyre"}
3 (:refer-clojure :only [])
4 (:require [rlm [ns-rlm]]))
8 ;;We start with absolutely nothing and build from there
9 (rlm.ns-rlm/ns-clear) ;; all we have is [def if ns in-ns].
12 (clojure.core/use
13 :reload
14 '[clojure
15 [core
16 :only
17 [
18 ;; object stuff
19 extend-type
22 *command-line-args* *err* *out* *warn-on-reflection* val name read-line
23 ;;REPL
24 find-doc doc print-doc print-namespace-doc
25 ;;Regexes
26 re-pattern re-matcher re-groups re-seq re-matches re-find
27 ;; Unsorted
28 meta type with-meta vary-meta defmacro str let binding with-bindings bound-fn bound-fn* eval
29 time macroexpand-1 macroexpand destructure comment test rand rand-int subs hash
30 definline alter-var-root format printf defonce refer-clojure gen-class load letfn
31 gen-interface definterface reify munge defrecord deftype extenders defprotocol
32 extend extend-protocol slurp clojure-version char assert read
33 ;; Printing
34 print-method print-dup newline flush print println prn with-in-str with-out-str
35 print-str println-str *print-length* *print-level* print-ctor primitives-classnames
36 ;;Agents
37 agent send send-off release-pending-sends
38 add-watch remove-watch agent-error restart-agent set-error-handler! error-handler
39 set-error-mode! error-mode shutdown-agents
40 ;;Ref
41 ref deref
42 ;;Atom
43 atom swap! compare-and-set! reset! set-validator! get-validator alter-meta!
44 reset-meta! commute alter ref-set ref-history-count ref-min-history ref-max-history
45 ensure sync dosync
46 ;;MultiMethods
47 defmulti defmethod remove-all-methods remove-method prefer-method
48 methods get-method prefers
49 ;;Numerics
50 inc dec rem quot rationalize mod numerator denominator
51 ;;Bits
52 bit-and bit-or bit-xor bit-and-not bit-clear bit-set
53 bit-flip bit-test bit-shift-left bit-shift-right
54 ;; Logic
55 not =
56 ;; Creation
57 symbol gensym keyword int declare num long float double short byte boolean
58 bigint bigdec transient persistent! assoc!
59 ;; Lists
60 list list* rest next cons first second last butlast
61 ;; Maps
62 hash-map sorted-map sorted-map-by find select-keys keys vals
63 merge merge-with zipmap create-struct defstruct struct-map struct get-in
64 assoc-in update-in map-indexed key
65 ;; Sets
66 set sorted-set sorted-set-by disj split-at split-with
67 ;; Vectors
68 vector vec subvec vector-of
69 ;; Arrays
70 to-array into-array alength aclone aget aset aset-int aset-long
71 aset-boolean aset-float aset-double aset-short aset-long aset-byte aset-char
72 aset-int make-array to-array-2d amap areduce boolean-array byte-array char-array
73 short-array double-array object-array int-array long-array booleans chars
74 shorts floats ints doubles longs partition-all
75 ;; Seqs
76 lazy-seq nth rseq reverse concat peek pop sequence every? not-every? some
77 not-any? take take-while drop drop-last take-last drop-while cycle repeat
78 replicate iterate range line-seq sort sort-by partition doseq dorun doall
79 take-nth interleave lazy-cat tree-seq file-seq xml-seq distinct
80 replace subseq rsubseq interpose seque not-empty flatten group-by count
81 partition-by frequencies shuffle
82 ;; Functions
83 fn defn defn- apply complement constantly identity comp juxt partial repeatedly
84 trampoline memoize pmap pcalls pvalues fnil
85 ;; List Comprehensions
86 reduce reductions map mapcat filter remove keep keep-indexed for
87 ;; Predicates
88 instance? seq? char? string? map? vector? nil?
89 false? true? symbol? keyword? delay? future? future-done?
90 even? odd? contains? number? integer? ratio? decimal? reversible?
91 float? rational? special-symbol? var? class? bound? thread-bound? counted?
92 distinct? empty? coll? list? set? ifn? fn? associative? sequential? sorted?
93 extends? satisfies? future-cancelled?
94 comparator
95 ;; Comparason
96 compare not= identical? ==
97 ;; Control Flow
98 when when-not cond delay force if-not and or locking -> ->> while case
99 if-let when-let dotimes await await-for with-open doto loop condp future-call
100 future future-cancel promise deliver
101 ;;Namespaces
102 create-ns find-ns remove-ns all-ns the-ns ns-name ns-map ns-unmap ns-publics
103 ns-imports ns-interns refer ns-refers alias ns-aliases ns-unalias ns-resolve
104 resolve ns require use loaded-libs compile intern namespace-munge
105 ;; Java
106 .. import class enumeration-seq
107 ;;Objects
108 bases make-hierarchy supers isa? parents ancestors descendants derive underive
109 ;; Symbols
110 *ns* *1 *2 *3 *e *compile-path*
111 ;; Proxies
112 get-proxy-class construct-proxy init-proxy update-proxy proxy-mappings proxy
113 proxy-super bean
114 ;; Vars
115 var-get
117 ]]]
120 '[rlm
121 [function-utils :only [mix defmix runonce]]
122 [rlm-commands :only [undef ns-reset ns-nuke reload keymap-clojure keymap-normal rlm]]
123 [ns-rlm :only [ns-clear ns-clone ls]]
124 [play-all :only [play-all-music]]
125 [shell-inspect :only [command-line?]]
126 [shell-write :only [sw]]
127 [classpath-utils :only [classpath add-to-classpath]]
128 [dreams :only [megadef megaundef silence]]
129 [map-utils :only [map-keys map-vals filter-keys filter-vals]]
130 [decorators :only [preserve-meta]]
131 [visualize :only [visual]]
132 [identify :only [identify]]
133 [push :only [push-gen push]]
134 ]
135 '[coderloop
136 [utils :only [read-integer read-big-integer read-integers trans-print digits]]
137 [export-files :only [export-archive]]]
139 '[sunil
140 [curry :only [decorate curry defn-decorated]]]
142 '[clojure.contrib
143 [import-static :only [import-static]]
144 [combinatorics :only [cartesian-product subsets selections
145 permutations lex-permutations combinations]]
146 [duck-streams :only [file-str read-lines]]
147 [str-utils :only [re-split re-gsub str-join]]
148 [seq :only [separate indexed rotations find-first positions]]
149 [math :only [expt round gcd lcm floor ceil]]
150 [repl-utils :only [show expression-info]]
151 [def :only [defn-memo defvar defmacro-]]
154 ]
156 '[clojure.contrib.generic
157 [arithmetic :only [+ - / *]]
158 [collection :only [assoc conj dissoc get empty into seq]]
159 [comparison :only [pos? neg? zero? > < <= >= max min]]
160 [math-functions :only
161 [sqr approx= conjugate sgn acos asin atan atan2
162 cos exp log pow rint sin tan]]
163 [functor :only [fmap]]]
165 '[matchure :only [fn-match defn-match if-match when-match cond-match]]
168 ;; '[letd :only [with-separator display-local-bindings letd]]
170 '[clojure
171 [repl :only [source]]]
173 '[clojure.java
174 [javadoc :only [javadoc add-local-javadoc]]]
176 )
178 ;;java stuff
180 (import '[java.lang ProcessBuilder Enum SuppressWarnings Throwable
181 InterruptedException Thread$UncaughtExceptionHandler RuntimeException
182 Thread$State ArrayIndexOutOfBoundsException IllegalAccessError Process
183 SecurityException InstantiationException ThreadGroup System
184 EnumConstantNotPresentException OutOfMemoryError Double Package
185 ExceptionInInitializerError RuntimePermission UnknownError
186 IncompatibleClassChangeError
187 ArithmeticException StackTraceElement NoSuchFieldError InternalError Thread
188 SecurityManager Cloneable NegativeArraySizeException StringBuilder Appendable
189 Byte Math Exception IllegalAccessException ClassNotFoundException
190 UnsatisfiedLinkError
191 IllegalArgumentException AssertionError Short StrictMath ClassCircularityError
192 NoSuchFieldException Comparable Readable UnsupportedClassVersionError
193 IllegalThreadStateException Iterable Object VirtualMachineError
194 InheritableThreadLocal
195 ThreadLocal ClassLoader CloneNotSupportedException TypeNotPresentException
196 Void
197 Character NoClassDefFoundError IllegalStateException LinkageError Boolean
198 String
199 InstantiationError Float Runnable IndexOutOfBoundsException ClassFormatError
200 NullPointerException NoSuchMethodError ClassCastException Class
201 StringIndexOutOfBoundsException Override ThreadDeath CharSequence Number
202 IllegalMonitorStateException Error NumberFormatException VerifyError
203 StringBuffer
204 NoSuchMethodException Long ArrayStoreException UnsupportedOperationException
205 Integer
206 Deprecated StackOverflowError AbstractMethodError Runtime]
207 '[java.math BigDecimal BigInteger]
208 'java.util.concurrent.Callable
209 'clojure.lang.Compiler
210 )
212 ;; jme3 stuff
214 (set! clojure.core/*print-length* 20)
216 (clojure.java.javadoc/add-local-javadoc "/home/r/mobius/temp-clj/javadoc")
219 (clojure.java.javadoc/add-local-javadoc "/home/r/roBin/jdk6-docs/docs/api")
220 (clojure.java.javadoc/add-local-javadoc
221 "/home/r/roBin/lpsolve-doc/lpsolve.sourceforge.net/5.5/Java/docs/api")
224 (defmethod / [java.lang.Number java.lang.Number]
225 [x y] (clojure.core// x y))
227 (defmethod - [java.lang.Number java.lang.Number]
228 [x y] (clojure.core/- x y))
230 (import-static java.lang.Math PI E)