Mobile Game Applications Need Scripting Too 92
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."
Disagree (Score:3, Insightful)
So, while you(and the main article) make some interesting points, I think that it's a bit too early to talk about scripting
Speed & Efficiency (Score:5, Insightful)
I don't know if it's strictly a hardware issue or what, but I know that I certainly have written off mobile apps for at least the near future until I can get a phone in my hands that can actually run things well.
Re:Speed & Efficiency (Score:3, Interesting)
my nokia 3650 runs things just fine
including a gameboy emulator
Re:Speed & Efficiency (Score:1, Interesting)
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.
The Gameboy emulator is written in C, not Java (Score:1)
http://www.wildpalm.co.uk/GoBoy/GoBoy7650_12_src. z ip [wildpalm.co.uk]
It looks to me like it's written in C, not Java. So how does that support your argument that Java on cell phones isn't slow?
Since you're such a big Java fan, why don't you port the Gameboy emulator to Java, and find out first hand how fast it runs and how much memory it requires? Please report back -- it will be very interesting to know how much bigger and slower the Gameboy emu
Correction: C and Assembler Code (Score:2)
Now what are you talking about how the Gameboy emulator written in C and Assembler proves that Java runs fast on cell phones?
-Don
Re:Speed & Efficiency (Score:2)
What I think would be cool is to get higher transfer speeds on wireless devices. Once that is done, I can see endless applications.
Re:Speed & Efficiency (Score:3, Insightful)
news ticker doesn't need blazing speed to be usable and neither does blogging tools.
that being said it is possible to make, for example, an xpilot clone on 3650/7650 that runs ~20fps prettu easily(in other words dig dug and most other 80's classics can be cloned pretty well). however when writing it can be a try-and-miss effort on finding out which approach is the fastest, whether the vendors own ui is faster or not and if there are any _really_strange_ bugs(and finding ou
BeanShell - Embeddable, Java compatible scripting (Score:5, Interesting)
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.
Re:Pointless layers of emulation (Score:3, Informative)
People used to complain that Java was too slow for all sorts of applications... Have you noticed that they have been very quiet for the past few years? It's all about getting a good VM wedged into the device.
BeanShell is not the fastest implementation possible, but it does internally compile and perform many optimizations. It should be fast enough for a lot of applic
Re:BeanShell - Embeddable, Java compatible scripti (Score:2)
BeanShell... pure Java Java source interpreter
So, it's not only slow as molasses in Antartica, it's actually even slower? Giving you 3,4,5 nice abstraction layers on a platform (the article is about cell phones) that is slow in pure assembler? Gotta check that out.
Re:BeanShell - Embeddable, Java compatible scripti (Score:3, Interesting)
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
Re:BeanShell - Embeddable, Java compatible scripti (Score:1, Offtopic)
So, it's not only slow as molasses in Antartica, it's actually even slower?
Where do you get off saying this? Java hasn't been slow in ages. Repeating what others have told you is not the same as basing your opinions on fact.
Re:BeanShell - Embeddable, Java compatible scripti (Score:2)
I am a programmer, and maintainer, of a large Swing application (used by many hundreds) in Sweden. We had to go to extreme measures to bring the app even remotely up to speed (2001). Never allocate a frame before you have to, pool Swing objects, and so forth.
Even so, our program was VERY slow compared to the VB predecessor. We nearly lost the contract.
1.2
BeanShell in Emacs ... or Erlang for wireless (Score:3, Interesting)
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,
Re:BeanShell in Emacs ... or Erlang for wireless (Score:2)
Re:BeanShell in Emacs ... or Erlang for wireless (Score:1)
You could not fit either beanshell (at a masive 150k) or Lua (at a could-fit-it-in-a-highend-phone 50k).
Re:BeanShell in Emacs ... or Erlang for wireless (Score:2)
Re:BeanShell in Emacs ... or Erlang for wireless (Score:2)
Re:BeanShell in Emacs ... or Erlang for wireless (Score:2, Informative)
Does it have JIT? (Score:2)
But I doubt most cellphones have a JIT...
All applications need scripting... (Score:5, Insightful)
The first trick is to define a language that expresses the highest level of abstraction you can, thus giving your developers the most powerful modeling tool they can get. The second trick is to do this economically. Hehe.
My team does just about everything with scripting, using XML languages as the scripting language and a code generator (GSL) as the metaengine. It's a good combination that lets us hit any level of abstraction we need to. Using XML is a bit clunky, but it gives us a single syntax (and single parser) for all our scripting languages. GSL... well, that's another story. Let's just say it does this kind of thing wonderfully.
GSL? (Score:2)
Re:GSL? (Score:2)
Just say: "No!" to XML! (Re:GSL?) (Score:2)
I totally disagree. The resulting "scripts" are just as unreadable as plain code, while taking millions times longer to execute.
If you need a scripting language -- pick an existing one. TCL is _the_ scripting language. Python is close, but has a messy C API. Perl? Well, may be, although I tend to think of it as a "write-only" language (you can't read it)...
But -- for the sake of us all -- don't invent a new wheel, and certainly d
Re:GSL? (Score:2)
Yes, it's clunky, but it works exceedingly well if you have the tools to handle it. GSL is the "generator scripting language", a tool made by iMatix and distributed as part of their RealiBase [imatix.com] package, a rather large and eclectic collection of OSS tools.
Personally I find GSL extraordinary, but totally outside the scope of this discussion. I simply can't
One more thing (Score:2)
All applications need scripting.... (Score:5, Informative)
This is one of the areas where I feel Windows fell down on the job - while COM allows all applications to make their functionality available to scripting languages, Windows does not provide a default scripting language that is universally available. Yes, Visual Basic will script things, but it is not a default part of a standard Windows install.
DOS had scripting of a sort (batch files), and people used that feature. However, DOS could not script every application, and batch files were missing key elements needed to make them anything more than linear sequences of commands. (Yes, batch files did have IF, GOTO, and so on, but try looping over a set of files, or taking the output of one file and using it on the command line of another file).
Unix has many scripting languages available to it (Perl, Python, TCL, in addition to bash, tch, et. al.), and at least one of them will usually be installed by default on a modern system. They can script command line apps like nobody's business, but unfortunately the more modern GUI apps provide much less scriptablity. CORBA and Kparts might help this if they were more commonly available. This is an area Unix-like environments (including MacOS) need to really improve in.
Granted, J. Random User may not want to get his hands dirty writing scripts, but think about it - if you, the person JRU turns to for help, could KNOW that scripts were available, how much better you could help the poor guy out.
Re:All applications need scripting.... (Score:5, Insightful)
Right.
That's a separate issue though. Unix needs a universally accepted binary component protocol. We need one badly.
Traditionally we've always used libraries to share functionality amongst seperate programs. But libraries make it difficult to make decisions at runtime, and discovery of shared libraries at runtime is primative at best ( LD_LIBRARY_PATH, etc. ). Most component archs/protocols offer a registry for finding exported interfaces, ie. functionality, at runtime. The application just needs to know the version of the interface it requires. eg. the application asks 'I need SpellChecker Interface v 0.5, does anyone provide that?' A KDE module may respond, a Java module may respond or a GNOME module may respond.
I believe GNOME with bonobo, KDE with kparts, and JCP with Java's Corba/RMI need to get together and work out a baseline common binary component standard. That's wishful thinking, granted, but doing so would do the linux community a world of good.
Re:All applications need scripting.... (Score:5, Informative)
Windows can be scripted with Jscript or VBScript using WSH (Windows scripting host). Jscript is very, very similar to javascript (I think that javascript may actually be a subset of jscript), which is universally available.
As far as being "a part of the standard Windows install," I suspect it depends upon your version of Windows. I know it comes with W2k, and doesn't with Windows 98, but I can't speak for the rest.
Still, I'm not sure that this is a good thing. Windows doesn't insulate itself against scripting attacks very well at all by running parts as different users. So anyone with WSH installed could be in for a world of hurt if a bad script comes along in viral form.
Re:All applications need scripting.... (Score:2)
Re:All applications need scripting.... (Score:2)
It's not done frequently, though.
Correction on BATs capability. (Score:1)
Ah, good ole batch files. Yes, they can do the first task you mention just fine (albeit extremely mundane compared to shell scripting).
To work with a set of files, try something similar to this in a batch file:
@ECHO OFF
FOR %%f IN (*.txt) DO TYPE %%f
There are work-arounds for using the output of a program to another command line in a bat
Re:All applications need scripting.... (Score:3, Informative)
This is an area Unix-like environments (including MacOS) need to really improve in.
Actually, I'd like to make the argument that Mac OS X has a perfectly good scripting environment for its GUI apps - AppleScript.
Yes, apps do need to support AppleScript on an individual basis. All AppleScript apps can speak between each other. And with Apple's recent addition of the AppleScript Studio, the script itself can have a GUI interface as well.
The thing that is difficult about adding a scripting language to
There's windows script host (Score:3, Insightful)
Re:Scripting on a Pentium I class hardware? (Score:1)
Of the few ( XForge, Xen ) 3D engines out there, they're being written in ARM ( for those phones which are based on such ) assembly.
Mobile Phones ( perhaps Wireless Internet connected PDA's ) are nowhere near powered enough to handle the majority of the aspirations most J2ME game developers would "LIKE" to place upon
didnt even scratch the surface (Score:1, Redundant)
and he didnt even mention them
obviously this article was to push developers to use j2me!
also xml is great for translating between different mobile devices
What does he mean by "wireless"? (Score:2)
I mean, I'm sitting here typing this on my Mac Powerbook G4, which has no wires attached at all, and is getting to the Net via the Airport up
Re:What does he mean by "wireless"? (Score:1)
/Mikael
Re:What does he mean by "wireless"? (Score:1)
scripted interfaces (Score:3, Insightful)
like taking a picture and uploading it to your web page and then bringing up a form for you to enter a caption.. or to run an executable to turn your voice mail into a text summary.. the possibilities are endless.
i'm sick of hard-coded phone interfaces built for a particular type of user who is most often Not Me.
Hum... (Score:2)
Re:Hum... (Score:2)
Re:scripted interfaces (Score:2)
this is useless for the thing you're looking for, but you can do that in symbian(there's at least some apps like that for series60 phones).
-
Is it just me.... (Score:1)
then... (Score:1)
Makin' money selling lisences to crappy games (Score:2)
It boggles the mind at what kind of scams will be born out of this one, and what kind of privacy issues will come into the scene; Buisnessmen need their cellphones, but, they spend hours
lame (Score:2)
People have been using scripting on small devices forever. Perhaps people still remember Microsoft Basic running on the Apple II, a 48kbyte, 8bit machine? Forth and Basic have been two of the most popular interpreted languages. And, in fact, scripts often reduce size and memory usage of programs.
Oh, and in other
Re:lame (Score:2)
Yes, they need scripting - but that's not all (Score:5, Insightful)
Re: (Score:2)
You mean like... (Score:2)
What's wrong with java? (Score:2)
And anyway, isn't the line between "Scripting" and "Compiled code" kind of getting blurred. I mean Perl is far more verbose then plain C. Scheme and Lisp (which are designed to be interpreted textually) are more difficult for more people then Java.
To me "scripting" these days basically means a lang
Re:What's wrong with java? (Score:1)
He really after extensability, which is a side production of well designed OO app, and the use of game created SPIs.
Re:What's wrong with java? (Score:2)
You're right about the line between "scripting" and "general purpose" languages being blurred.
Heh (Score:2)
Re:Heh (Score:2)
No.. no! (Score:2)
Mmmmm future..
A scripting language isnt Perl (Score:1)
I believe he was talking about domain specific scripting language doing high level abstraction stuff. That's not the same thing as having the full script compiler (text interpreter) and a general purpose language on the phone. That probably refers to using stuff where a few script inst