----- Forwarded message from eleftherios stavridis <es@xxxxxxxxxxxxxxxxxx> -----
Envelope-to: scgmille@localhost
Delivery-date: Sun, 04 Jan 2004 08:13:20 -0600
From: eleftherios stavridis <es@xxxxxxxxxxxxxxxxxx>
To: scgmille@xxxxxxxxxxxxxxxxxx
Cc: scgmille@xxxxxxxxxxxxxxxxxxxxx
Subject: ref: SISC for J2ME
Hi Scott,
I assume that you are aware of the Java 2 Micro Edition (J2ME)
platform[1], aimed at devices with limited memory and processing power
such as mobile phones & PDAs. I am wondering whether it would be feasible
to implement something like SISC for this platform (namely, for CLDC
1.0[2]/CLDC 2.0[3] & MIDP 1.0[4]/MIDP 2.0[5] class of devices) in such a
way that complete applications can be developed in Scheme rather than in
Java.
The current practice in developing J2ME applications is a cross-platform
one. The application programmer develops the application on a desktop
computer and then transfers the (pre-verified) bytecode to the device via
infrared/bluetooth/OTA (over the air provisioning). To avoid this long and
tedious development cycle, device emulators exist (for example, as part of
Sun's J2ME Wireless Toolkit[6][7]) so that programmers can compile and
test their code on a virtual device.
Taking that as a starting point, I think that -given the right approach-
there is a lot to be gained in producing a Scheme interpreter/J2ME
compatible bytecode compiler for the J2ME platform:
(a) Developing device-independent applications for millions of mobile
devices using the benefits of Scheme. Nearly all mobile device
manufacturers (including Nokia, Motorola & Sony Ericsson) support
J2ME in all their new handsets. This gives a very concrete market
to Scheme programmers.
(b) If an on-device Scheme interpreter is available, then on-device
development is possible. This might not sound practical but one
can always connect a full-size bluetooth keyboard to the device
and mobile phone screens offer 65k colors and are much larger
these days (Nokia 6600[8] as an example). More novel approaches
are also possible, such as using T9 predicatble text. Furthermore,
this approach has already been demonstrated by Mobile Basic[9].
(c) Run-time Extensible and "scriptable" applications [10].
I will avoid to get into implementation details (such as the lack of
java.lang.reflection) as I am only trying to put things in perspective
for you. I would really like to hear your views on the matter, given
your experience with SISC and last, to express my will to contribute
a couple of devices for development purposes and $2000 USD upon (loosely)
agreed deliverables (given that the code will be GPLed).
Cordially,
-es
---
[1] Java 2 Platform, Micro Edition (J2ME). http://java.sun.com/j2me/
[2] JSR-000030 J2ME Connected, Limited Device Configuration.
http://jcp.org/aboutJava/communityprocess/final/jsr030/index.html
[3] JSR-000139 Connected Limited Device Configuration 1.1.
http://jcp.org/aboutJava/communityprocess/final/jsr139/index.html
[4] JSR-000037 Mobile Information Device Profile (MIDP).
http://jcp.org/aboutJava/communityprocess/final/jsr037/index.html
[5] JSR-000118 Mobile Information Device Profile 2.0.
http://jcp.org/aboutJava/communityprocess/final/jsr118/index.html
[6] Sun J2ME Wireless Toolkit. http://java.sun.com/products/j2mewtoolkit/
[7] Sun Wireless Development Tutorial Part I.
http://developers.sun.com/techtopics/mobility/midp/articles/wtoolkit/
[8] Nokia 6600 technical specifications.
http://www.forum.nokia.com/main/1,6566,015_291,00.html
[9] Mobile Basic programming language. http://www.mobilebasic.com/
[10] IBM developerworks. "Mobile applications need scripting too!".
http://www-106.ibm.com/developerworks/wireless/library/
wi-elite16.html?ca=dgr-lnxw01WirelessScripts
----- End forwarded message -----
--
pgprMR2f6Jxor.pgp
Description: PGP signature
|