I don’t have much practical experience with CLJS+Node myself, but the intro on 
the ClojureScript wiki has been helpful with the couple experiments I’ve tried: 
https://github.com/clojure/clojurescript/wiki/Quick-Start . Really, though, it 
comes down to the fact that ClojureScript compiles down to JS, and you can just 
hand those over to Node to be run. Sorry I can’t be of more help…  

Cheers,

Josh


On Sunday, January 26, 2014 at 17:59, Julio Barros wrote:

> Hi Josh
>  
> Do you know of a tutorial or sample project that shows you how to do that and 
> what to watch out for?
>  
> Julio
>  
>  
> > On Jan 24, 2014, at 11:14 PM, Joshua Ballanco <jball...@gmail.com 
> > (mailto:jball...@gmail.com)> wrote:
> >  
> > I just wanted to point out that if you’re looking to write small background 
> > processes that are more shell-script-y than server-y, you might consider 
> > CLJS + Node.js. That way you can still leverage Clojure without the need to 
> > spin up an entire JVM just for a quick cron task.  
> >  
> > Cheers,
> >  
> > Josh
> >  
> >  
> > > On Saturday, January 25, 2014 at 7:40, Jarrod Swart wrote:
> > >  
> > > I appreciate your outlook, and yes I have definitely discussed the pros 
> > > of Clojure. They are apprehensive in the event they have to outsource 
> > > development work, and I don't blame them. I'm just going to be a lot 
> > > happier and more productive in Clojure.
> > >  
> > > Thanks again!
> > >  
> > >  
> > >  
> > > > On Saturday, January 25, 2014 12:25:51 AM UTC-5, Mikera wrote:
> > > > Be careful about "weaselling in" Clojure - If I was your client and you 
> > > > did that without consulting me, I'd be pretty annoyed (possibly to the 
> > > > extent of not working with you again). Better to be upfront about the 
> > > > good reasons for using Clojure (concurrency support, awesome libraries, 
> > > > productivity etc.)
> > > >  
> > > > On the server architecture side: I think it's preferable to package 
> > > > things together into a big JVM instance. Reasons:
> > > > - It's relatively easy to make some lightweight compojure routes to 
> > > > bundle different APIs / micro-apps together in one app server
> > > > - It will make deployment much simpler: you can often get away with 
> > > > something as simple as: java -jar myserver.jar
> > > > - You'll accumulate less duplication / technical debt if you keep 
> > > > everything in sync (library versions, shared utility code etc.)
> > > > - A single large JVM instance will have a lot less overhead compared to 
> > > > multiple small JVMs
> > > > - JVM applications are better suited in general to long-running 
> > > > instances rather than small scripts
> > > >  
> > > > I'd consider breaking this into multiple instances only if there was a 
> > > > good reason, e.g.
> > > > - Need for process isolation for security / robustness reasons
> > > > - Need to have different lifecycles for different application servers.
> > > >  
> > > >  
> > > > Basically you can think of it this way:
> > > > - cron jobs => process coordination within the server (perhaps 
> > > > core.async, or other scheduling tools)
> > > > - python scripts / micro-apps => separate Compojure routes / APIs 
> > > > within the server
> > > > - hacking at the command line => hacking with the REPL  
> > > >  
> > > >  
> > > > > On Saturday, 25 January 2014 12:58:03 UTC+8, Jarrod Swart wrote:
> > > > > I have a general question about application architecture as it 
> > > > > relates to deploying to the server.  
> > > > >  
> > > > > Most of my previous development work involved python/php/ruby so we 
> > > > > typically had:
> > > > >  
> > > > > 1. One massive framework / application complection nightmare
> > > > > 2. Background scripts run by crons
> > > > >  
> > > > > At present I am working on an application for a client, and I am 
> > > > > trying to weasel in Clojure where I can. I will likely have to make 
> > > > > the Clojure aspects a black box.
> > > > >  
> > > > > If I were doing this in another language I would simply write the 
> > > > > smaller pieces of functionality as python scripts, plop them on the 
> > > > > server and then set the crons.
> > > > >  
> > > > > How do I do this with Clojure? If I package each micro-app as an 
> > > > > uberjar that is a lot of JVM, likely eating at the resources of the 
> > > > > poor (see: crappy) VPSs this project will likely run on.
> > > > >  
> > > > > Thoughts?
> > > > >  
> > > > > How do you structure web Clojure apps beyond: put the whole thing in 
> > > > > a servlet\uberjar?  
> > >  
> > > --  
> > > --  
> > > 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 
> > > (mailto: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 
> > > (mailto: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 
> > > (mailto:clojure+unsubscr...@googlegroups.com).
> > > For more options, visit https://groups.google.com/groups/opt_out.
> >  
> >  
> >  
> >  
> >  
> > --  
> > --  
> > 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 
> > (mailto: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 
> > (mailto: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 
> > (mailto:clojure+unsubscr...@googlegroups.com).
> > For more options, visit https://groups.google.com/groups/opt_out.
>  
>  
>  
> --  
> --  
> 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 
> (mailto: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 
> (mailto: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 
> (mailto:clojure+unsubscr...@googlegroups.com).
> For more options, visit https://groups.google.com/groups/opt_out.



-- 
-- 
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/groups/opt_out.

Reply via email to