Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!aioe.org!.POSTED!not-for-mail From: Cthun Newsgroups: comp.lang.java.programmer Subject: Re: Fast JVM scripting language? Date: Fri, 29 Apr 2011 15:59:53 -0400 Organization: Ph'nglui mglw'nfah Cthulhu R'lyeh wgah'nagl fhtagn Lines: 22 Message-ID: References: NNTP-Posting-Host: O+Co+sy9KV+r6XlYCxZlEg.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Forte Agent 2.0/32.652 X-Notice: Filtered by postfilter v. 0.8.2 Xref: x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:3362 On 29/04/2011 4:29 AM, Qu0ll wrote: > In your experience, what is the best performing Java or other JVM > scripting language or library? It must be callable from Java and be able > to call Java methods in an efficient manner. > > Sure, I can read benchmarks but I am interested in real world experiences. Clojure can generate code every bit as fast as normal Java code, can call Java efficiently (if you use type hints), and can be called from Java (a Clojure function is an object implementing the IFn interface -- IFN foo = do-whatever-to-get-clojure-function; foo.invoke(arg1, arg2); Furthermore, Clojure has an "immediate-mode" for prototyping, development, and even CLI-style tool use, called a "repl", and has Pythonesque list comprehensions, map, filter, etc. for working with lists and sequences of various kinds. Very handy. The potential downside: it has a Lispy syntax -- prefix notation and parentheses around every function call. This can make math slightly annoying. http://clojure.org