Slashdot Mirror


Mobile Game Applications Need Scripting Too

An anonymous reader writes "Mobile game developer Tom Park believes that scripting for wireless devices is important for proficiency sake. And with the need to scale mobile applications across so many different platforms, proficiency is everything. Read his thoughts on scripting, as well as his ideas on wireless application development's future."

5 of 92 comments (clear)

  1. BeanShell - Embeddable, Java compatible scripting by patniemeyer · · Score: 5, Interesting

    It is interesting that this article appears this morning, because I have just now posted the first beta of BeanShell version 2.0.

    For those of you who don't know: BeanShell is a light weight, LGPL, pure Java Java source interpreter with a minimal footprint of less than 150K (and getting smaller). In addition to interpreting standard Java code, BeanShell extends Java into the scripting domain in a natural way by allowing loose types, method closures, commands, and other obvious scripting language features. And because BeanShell runs in the same VM with your app, you can freely pass "live" objects into scripts and back.

    BeanShell is already widely distributed with Emacs, Weblogic app server, Sun's NetBeans/Forte, and many other commercial apps and non-commercial apps.

    With version 2.0 BeanShell adds (bugs withstanding) full Java compatibility and the ability to script true Java classes. Scripted classes appear to outside Java code and by introspection as ordinary classes but are fully dynamic and may include arbitrary scripts in their bodies, methods and constructors.

    Please check out www.beanshell.org for more and check back for updates on 2.0 in the near future.

    Thanks,
    Pat Niemeyer
    Author of Learning Java, O'Reilly & Associates and the BeanShell Java scripting language.

  2. Re:Speed & Efficiency by Zebbers · · Score: 2, Interesting

    what are you talking about

    my nokia 3650 runs things just fine
    including a gameboy emulator

  3. Re:BeanShell - Embeddable, Java compatible scripti by patniemeyer · · Score: 3, Interesting

    BeanShell is a general Java scripting and extension language. It just happens to be small enough to be useful in some embedded applications.

    If it's too slow for a particular application then just compile that code. That's the beauty of a Java *compatible* scripting language... see?

    Pat Niemeyer

  4. Re:Speed & Efficiency by UfoZ · · Score: 1, Interesting

    Well, the gameboy emulator runs natively on the phone, and doesn't rely on the Java VM. You can get the Symbian SDK for free from Nokia and make your own apps in C++.

    I've tried a few Series 30-40 Java games and my only gripes would be horrible startup/shutdown times. It kind of destroys the "spontaneous" nature of the game when it takes 20-30 seconds to load.

  5. BeanShell in Emacs ... or Erlang for wireless by axxackall · · Score: 2, Interesting
    BeanShell is already widely distributed with Emacs

    In my life I've downowded and installed hundreds (if not thousands) of Emacs distributions for at least a dozen of platforms. And I had never had a chance to find BeanShell there. Where do hide it? Or is it possible that you have just mistaken Emacs with vi? How dare you! Oh, by the way, what is the model of the wireless phone that has Emacs in it - I want that phone now!

    On a serious note, Java is specially designed to be not scripted - statically typed, eager evaluation, run-time only after a compiler. Every attempt to bring scriptability to Java is making it even slower and even requiring more memory. I've tried BeanShell, Jacl, Jython, Kawa - none of them are good for mobile aplications. All by exactly the same reason: Java itself is the worst case of scenario for embedded applications. Of cource due to its resource requirements.

    What's wrong to use scripting language directly, without Java? If you are addicted to imperative semantic (let's say you worked too long with C/C++, and Java and "program" for you is a sequence of commands) then use Python: compact, fast (enough for scripting, at least much faster than any scripting exte4nsion for Java), OOP, widely distributed (not with Emacs, but with many operating systems... just kidding). If you don't have such "imperative" addiction then try Erlang: that langauge has been specially designed for being used in mobile (at first in wireless, but now it's not limited to) applications, it's compact (more compact than JVME), fast (faster than JVME, often as fast as C++), high-level scripting (aka functional-logical) language for disctributed and mobile applications. IMHO ideal choice.

    --

    Less is more !