Uploaded image for project: 'Buildr (Retired)'
  1. Buildr (Retired)
  2. BUILDR-259

Support for the Clojure AOT Compiler

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Minor
    • Resolution: Won't Fix
    • 1.4
    • Wish List
    • Compilers

    Description

      Clojure is a JVM-hosted Lisp which strongly emphasizes interop with Java. As with most Lisps, Clojure is designed to run primarily as an interpreter. However, it is possible to use the Clojure ahead-of-time compiler to produce .class files which can then be separated from the original source.

      I think it would be very nice if Buildr had some support for Clojure as a buildable language. At the moment, any Clojure-using projects have to resort to things like storing the .clj scripts in the src/main/resources directory, etc. This works, but it's ugly and it doesn't mesh well with AOT compilation. A better solution is to allow the storage of scripts in the src/main/clojure directory. These scripts would then be compiled by default to target/classes. It should also be possible to specify a finite set of libraries to compile, in which case the remaining (uncompiled) scripts should be copied to the appropriate sub-directory of target/classes.

      An essentially-functional implementation of this feature is available at git://github.com/djspiewak/buildr.git / clojure. The / master branch also contains support for the clojure shell in context with this new language support. Specs and documentation are presently absent, but could easily be added.

      Attachments

        1. clojure-buildr-21967485.patch
          28 kB
          Chris Dean

        Activity

          People

            toulmean Antoine Toulme
            djspiewak Daniel Spiewak
            Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: