Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>I just read Steve Yegge's <a href="http://steve-yegge.blogspot.com/2008/10/programmers-view-of-universe-part-1.html" rel="nofollow noreferrer">The Universal Design Pattern</a>. The article is on much broader topic than just embedded scripting in Java application, but since the author writes a Java application that allows scripting (using Jython), there are insightful points I found interesting.</p> <blockquote> <p>And JavaScript is one of the two best scripting languages on the planet, in the most correct sense of the term "scripting language": namely, languages that were designed specifically to be embedded in larger host systems and then used to manipulate or "script" objects in the host system. This is what JavaScript was designed to do. It's reasonably small with some optional extensions, it has a reasonably tight informal specification, and it has a carefully crafted interface for surfacing host-system objects transparently in JavaScript.</p> <p>In contrast, Perl, Python and Ruby are huge sprawls, all trying (like C++ and Java) to be the best language for every task. The only other mainstream language out there that competes with JavaScript for scripting arbitrary host systems is Lua, famous for being the scripting language of choice for the game industry.</p> </blockquote> <p>I agree with him on narrowing down to JavaScript and Lua. </p> <blockquote> <p>Without the examples handy, all I can do is say that using JavaScript/Rhino (or Lua, once it became available on the JVM) might have made my life easier.</p> </blockquote> <p>I personally prefer JavaScript on Java platform. The population of the user base is larger. As Yegge puts it, it is "the world's most misunderstood programming language," but the amount of resource available on the language is a plus. <a href="http://www.mozilla.org/rhino/" rel="nofollow noreferrer">Rhino</a> seems to a matured beast.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload