On Jun 25, 8:31 am, BerlinBrown <berlin.br...@gmail.com> wrote:
> What are the differences between clojure code which is:
>
> 1. Compiled
> 2. Clojure code that is interpreted (that just sits in the classpath)
> 3. Clojure code that loads from a jar file
> 4. Clojure code that gets load with the 'load' function.

There is no difference at run-time.  Clojure code is always compiled
before it is run.

When people talk about "compiled" Clojure code, they usually mean
ahead-of-time (AOT) compiled.  That just means you run the Clojure
compiler on your .clj source files "ahead-of-time," and save the
resulting .class files.  If you don't AOT-compile your code, it just
gets compiled on-the-fly when you load it.

So AOT-compilation makes the code slightly faster to *load* when your
application starts, because it doesn't have to compile the code on the
fly.  But Clojure compiler is very fast, so the difference is barely
noticeable.

The location the code came from (file, JAR, typed at the REPL) makes
no difference.

-Stuart Sierra
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to