Paul,

I'm quite impressed with what you and Timothy have done. I'm taking a third 
look at Pixie and cljs-terra. Is there any chance that cljs-terra could run 
on generic lua instead of terra/luajit?

The main problem I'm having is that anything that isn't interpreted (or 
that generates C/C++ I can cross-compile) is generally not going to support 
all of the processors in our various hardware products. My use case is 
functionality that is in common code so it needs to support the lesser 
brethren in our product lines. Two of our products have a modern SOC 
(Freescale P1022) which has some support in LLVM.

The faster javascript engines (V8) do not support anything beyond x86/ARM. 
I've been following Andrew Low's port of V8 to PPC but given the many kinds 
of PPC, from PS3s to AIX boxen, most are 64bit and so I can't tell if all 
of our procs are supported. The github page has the 32-bit build failing 
ATM. There is recent progress as indicated by this issue:

https://github.com/andrewlow/v8ppc/issues/119

I may be able to live with an interpreter since this portion of the code 
operates at human time scales and is not performance critical. Duktape 
(single file javascript engine written in C) is looking especially 
interesting as ClojureScript should "just work". Also, simplicity 
(especially fewer build/runtime dependencies) is more important than 
performance.

Obviously it would be great to have a JVM so I'm curious to hear more about 
your custom JRE, how you cross-compiled it, etc. Do you have any links to 
share? Unfortunately, this is only of personal interest as the group in 
charge of our custom platform support/bsp (and available libraries) is 
dead-set against anything JVM related, sad but true. I pick my battles 
carefully these days.

Thanks for your feedback - it is very helpful to see what others are doing.

Take care.

Alan


On Tuesday, May 5, 2015 at 7:27:52 AM UTC-7, Paul deGrandis wrote:
>
> I'm just going to echo a few things -
>
> Timothy and I have talked at length about Clojure-like languages on other 
> platforms.  His ideas and general approach have led to some very promising 
> work (Pixie), and I can personally vouch for RPython as a platform.  My 
> ideas led me to Terra ( http://terralang.org ) - which supports 
> LLVM-based compilation (AOT and JIT), dynamic typing/programming via LuaJit 
> integration, macros and AST manipulation, etc.  Based on this and some 
> needs I was trying to fill, I produced cljs-terra ( 
> https://github.com/ohpauleez/cljs-terra ).  The trade-off is the that 
> library support is a mix of Lua and C libs all intertwined.
>
> There is also the option of ClojureScript on top of Node.js (which I 
> recently used for an IoT system) - which has an ecosystem of libraries.
>
> All of that aside, I still tend to do my low-level work in C and C++14, 
> with some Lua and Terra occasionally.  I also recently used Oracle's 
> Embedded JVM with great success (producing a custom JRE for exactly what I 
> needed).
>
> Cheers,
> Paul
>
>

-- 
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