Just wanted to jump in here and say that Thomas is correct. Plugging into
the CLJS compiler is probably not the right place to start. The CLJS
compiler is built for speed and as such is somewhat less modular than the
tools.analyzer/tools.emitter projects. So start there if you're looking to
build a tool or a new compiler backend. The resulting compiler may not be
as fast as a one or two pass compiler (like CLJS) but it's easier to reason
about in my experience.



On Tue, Feb 23, 2016 at 6:29 AM, Frank Castellucci <frankiec...@gmail.com>
wrote:

> Would not we want to "plug in" to the Clojure compiler?
>
> Feels weird to plug-in to ClojureScript to generate, say, python code.
>
>
> On Monday, February 22, 2016 at 6:52:43 PM UTC-5, Antonin Hildebrand wrote:
>>
>> I like the idea.
>>
>> I was thinking about a similar project. The goal would be to design and
>> implement user-configurable, pluggable system for "jacking" into
>> ClojureScript compilation pipeline as discussed here[1].
>>
>> The first dog-fooding application could be instrumentation middleware for
>> collecting code-coverage information. I believe this could be implemented
>> by rewriting forms between reader and analyzer. Or instrumenting AST output
>> from analyzer before it gets passed to emit-phase.
>>
>> just my 2cents,
>> Antonin
>>
>> [1]
>> http://blog.fogus.me/2012/04/25/the-clojurescript-compilation-pipeline/
>>
>>
>> On Sunday, February 21, 2016 at 9:20:18 AM UTC+1, Edward Knyshov wrote:
>>>
>>>
>>>
>>> *Pluggable back-ends architecture for ClojureScript compilerBrief
>>> explanation:* There are a lot of ClojureScript script compiler forks
>>> exist to provide different compilation targets other than js. Most of them
>>> are currently stuck because of rapid ClojureScript development and
>>> difficulties with keeping fork in sync with upstream. We could consider
>>> refactoring ClojureScript to provide plugable backends architecture,
>>> specifically to allow users replace code generation stage of compiler and
>>> implement js generator as one of such backends.
>>>
>>> *Expected results: *ClojureScript compiler is refactored to allow
>>> further active development of plenty other backends to bootstrap Clojure in
>>> such environments as c/c++, llvm, python, emacs lisp, lua, etc. Ability to
>>> use clojure mostly everywhere.
>>>
>>> *Knowledge:* ClojureScript, Clojure, JavaScript
>>>
>>> Need to know, what do you think guys.
>>>
>> --
> 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
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>



-- 
“One of the main causes of the fall of the Roman Empire was that–lacking
zero–they had no way to indicate successful termination of their C
programs.”
(Robert Firth)

-- 
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
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to