On 26 Feb 2014, at 11:46 pm, Rob Platt <momentum...@gmail.com> wrote:

> Hello,
> 
> Ambitiously, I proposed a js build script engine for gradle here:
> 
> http://forums.gradle.org/gradle/topics/lets_make_a_javascript_nashorn_build_script_engine_for_gradle
> 
> Given this is a complex task, I figured it might be best to discuss details 
> on this mailing list.
> 
> I've seen a previous proposal about adding a build script engine for a 
> different language 
> (http://forums.gradle.org/gradle/topics/new_script_engine_for_gradle). I 
> don't know if that went anywhere, but the proposals are quite similar. The 
> main difference is that I'm not concerned about dependencies on groovy 
> runtime jars. The focus is on the developer's experience. However, I consider 
> the wrapper part of that experience (because its committed with projects). 
> So, I would aim to make scripts in the wrapper Nashorn-based, using shell 
> extensions as appropriate. "Turtles all the way down" as it were.
> 
> Typical use cases:
>  * pure-javascript JVM projects which need to run up embedded servlet 
> containers and databases
>  * managing jar dependencies in javascript JVM projects
>  * managing large or complex projects that have both java and javascript 
> developers - different teams and languages, one build system
> 
> Typical stories:
> As a gradle user I can:
>  * start or clone projects with a nashorn-enabled gradle wrapper
>  * run the wrapper as a jjs shell script using on unix
>  * run the wrapper on windows with jjs, even without the .bat file
>  * include gradle build scripts in javascript
>  * include gradle build scripts in coffeescript
>  * mix groovy and js/coffeescript build scripts in the same project
>  * use gradle plugins from non-groovy build scripts
> As a gradle plugin developer I can:
>  * provide DSLs for additional JSR-223 scripting languages, reusing the 
> Nashorn-enabled wrapper
> 
> I'm happy to make pull requests for changes needed to gradle/gradle to make 
> this happen. What's the next step? :-)


The next step would be for you to put together a specification of what you’d 
like to do, and we can go from there.

Just be aware that at this stage, I would only be interested in providing some 
way to author build scripts in JavaScript. The other stuff I would consider 
provisional based on whether this turns out to be a practical approach or not.


--
Adam Murdoch
Gradle Co-founder
http://www.gradle.org
VP of Engineering, Gradleware Inc. - Gradle Training, Support, Consulting
http://www.gradleware.com



Reply via email to