Add reify.
Use the compile-file function to compile cljs.core in script/compile.
Remove core.js before compiling to force recompilation.
Don't create a var for the environment in script/repljs.
Update script/repljs.bat to use the new repl.
Catch syntax errors when reading input in the REPL.
Extend goog-dependencies* to match double-quoutes on first argument

When using a closure compiler generated goog/deps.clj, goog-dependencies* fails
to parse anything from the file.  This is due to the compiler writing the
dependencies using double quotes for the first argument to  addDepenendency.

Signed-off-by: Brenton Ashworth <bashwort@gmail.com>
use with :only support

Signed-off-by: Brenton Ashworth <bashwort@gmail.com>
Emit goog.require for 'used' namespaces. Refs #CLJS-65
Add support for :externs and :use-only-custom-externs options.

Signed-off-by: Brenton Ashworth <bashwort@gmail.com>
Added defrecord, with impls for all protocols. Includes positional and map factory fns. Created new emit method for :defrecord* and using that instead of deftype* for checking arguments.length for handling __meta and __extmap. Includes initial tests. Refs #CLJS-53

Signed-off-by: Tom Hickey <thickey@gmail.com>
Fix typo.
Simplify load-externs function.
Updated record printing to match output from Clojure.
Merge branch 'externs'
Remove :else from if expression in namespace function.
bind *ns* to the current namespace before reading. Fixes #CLJS-74
Calling watches after the value change and returning the new value.  Modified the validator fail to throw js/Error instead of string.  Finally, modified docs to be more Cljs relevant.
* src/clj/cljs/core.clj: fix satisfies

Signed-off-by: fogus <mefogus@gmail.com>
use-macros with :only support