Thanks. This is very helpful. I successfully built an example Clojure 
service on GAE last week working 
from http://flowa.fi/blog/2014/04/25/clojure-gae-howto.html?lang=en . 
Looking forward to reading through your examples.

Cheers,
Nicholas

On Sunday, August 30, 2015 at 4:49:43 AM UTC+10, Gregg Reynolds wrote:
>
> Hi list,
>
> If you have any interest in Clojure on Google App Engine you might want to 
> take a look at migae <https://github.com/migae/migae>.  Currently it just 
> contains several basic demos showing how to structure Clojure apps on GAE, 
> running from raw java interop, to ring, to compojure, to compojure-api.  
> Dynamic code reloading makes rapid development possible.  Not quite a true 
> repl, but almost as good for servlet development at least.
>
> The technique is straightforward and surprisingly simple, but has not (to 
> my knowledge) been explained or demoed before.  (A web search for "clojure 
> on app engine" turns up surprisingly few recent results.)  It turns out to 
> be very easy to have multiple servlets, filters and a quasi-repl using 
> basic techniques (and some minor hackery) rather than a specialized 
> library.  It's not at all like appengine-magic.  AE-magic is fine, but it's 
> a little long in the tooth, and more important, Google's switch to a 
> gradle-based build system renders much of AE-magic's logic unnecessary.  
> Also, I wanted the service libs to be independently usable.
>
> I'd appreciate any feedback, especially on my explanation of how it works 
> - why dynamic loading works even though everything is aot-compiled.  I'm 
> not entirely sure I understand how Clojure's loading mechanism dovetails 
> with the servlet/jvm loading mechanism, so I made an educated guess.  Also, 
> I've tried to make the README relatively basic so those not familiar with 
> servlet programming can grok it.
>
> As for GAE service libraries, that'll take a while, and it's probably too 
> much for me alone, so any who wants to help out is welcome.  I've got what 
> I think is a promising approach to the Datastore API but will describe that 
> in another message.
>
> Thanks,
>
> Gregg
>

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