Hi Alan,

Don't be deterred - it's a great question... Some people are just having a
separate conversation in the one thread ;)

I think there is a threshold in your domain, which gives a different answer
on each side.

The easy side is for something RaspberryPi or Arduino-sized (or bigger),
where you can - as Chris' wonderful talk demonstrates - simply run a big
fat JVM on your hardware. This might be a bit wasteful, but Moore's Law has
given us this and we can happily concentrate on the domain (improving life
for your chickens) and ignore the hardware.

It's likely you're really asking about the hard side of that boundary,
where I guess most of us big-iron software people have little expertise. On
this side, you're talking about development in a language which assumes a
VM, but you've to execute in a world without it. You've two main choices:
a) compile all the way down to metal or b) mimic the VM very thinly.

For a) the Clojure to Gambit Scheme to C route is not insane. All compilers
use lots of intermediate representations (DSLs) and compile from one to the
next in stages. It's likely that this exact pathway is not optimal, so
perhaps we'll need a better one for real embedded Clojure.

For b) something like Nim might be a fit. It looks to me like combining
Clojurescript's Cljs-in-Cljs (or similar in Elixir's) design with an
"emitter" for Nim (and using Nim mutable data structures instead of Java's)
might work.

You could consider b) as a) in Nim's clothing, by the way.

On the other hand, there is huge effort going into the Javascript engines
for embedded systems. Plain Clojurescript could be used here. In terms of
how much effort *we* have to put in, this route might be the one.

By the way, the Erlang people have projects [1, 2] to dig up their ancient,
tiny BEAM designs for use in embedded systems and the new massively
multicore chips like Parallela. It's not Clojure, but Elixir is a
love-child of Clojure and Erlang which might be worth looking at.

Regards,

Fergal

[1] http://www.erlang-embedded.com/about/
[2] https://www.youtube.com/watch?v=tCg1LakJF3g

On Sat, May 2, 2015 at 7:43 AM, Kimmo Koskinen <kimmo.m.koski...@gmail.com>
wrote:

> Hi,
>
> Wanted to mention two more languages, that might be interesting:
>
> Hy: http://docs.hylang.org/en/latest/ (Lisp that targets Python's AST,
> has Clojure flavoured syntax)
> newLISP: http://www.newlisp.org/ (at least FFI seems simple:
> http://www.newlisp.org/newlisp_manual.html#import)
>
> - Kimmo
>
> --
> 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.
>



-- 

Fergal Byrne, Brenter IT

http://inbits.com - Better Living through Thoughtful Technology
http://ie.linkedin.com/in/fergbyrne/ - https://github.com/fergalbyrne

Founder of Clortex: HTM in Clojure -
https://github.com/nupic-community/clortex

Author, Real Machine Intelligence with Clortex and NuPIC
Read for free or buy the book at https://leanpub.com/realsmartmachines

Speaking on Clortex and HTM/CLA at euroClojure Krakow, June 2014:
http://euroclojure.com/2014/
and at LambdaJam Chicago, July 2014: http://www.lambdajam.com

e:fergalbyrnedub...@gmail.com t:+353 83 4214179
Join the quest for Machine Intelligence at http://numenta.org
Formerly of Adnet edi...@adnet.ie http://www.adnet.ie

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