April 14, 2003

What is OPL? An Introduction

Many people are familiar with OPL, some from the Psion PDAs, others from the organisers from which the language orignated. These people both know what OPL is and what it does. Now with the movement of OPL to the new breed of Symbian devices, especially smartphones, a new group of users to learn to program and use OPL applications. This short article is to outline what OPL is for, the benefits of using it and how it can help you create apps for a smartphone.

OPL in it's natural form is a BASIC based high level language that enables simple instruction based programming. This high level code is then compiled into a byte-code in a simlar manner to Java, this byte code is then interpreted by the runtime environment to give instructions to the device in a manner it understands. The obvious downside to this method is that the developed applications cannot be expected to be as fast as a C based application, but a speed similar to Java is achievable. Being BASIC based it's easy to confuse OPL with an interpreted language where the code is essentialy compiled and run on the fly, unfortunately this leads to speed problems making applications unworkable on smaller limited spec devices.

Currently smartphone development requires either knowledge of C/C++, Java 2ME or the more restricted Java Midlet software. Each of these languages, dispite being powerful are unfortunately not well lent to amateur programmers and require a reasonable amount of competence at programming. Another downside to C++ is the expense of the programming suites required to develop for the devices, and a drawback for both is that you can't develop direct on the device that the software is aimed for. OPL on the other hand uses simple instructions and a straightforward layout that beginners can understand without much effort, all the tools required to develop for it are free, and best of all you can create your software in-situ on the device and test live, so you could even work on software while communting on the train to work.

Don't be confused and think that OPL is just a beginner's language. OPL is perfectly suited to coding most styles of applications, it bombs out in most of the same situations where Java does because of it's lack of speed, but for simplistic games and non-power-hungry applications it is totally competant. OPL's advantage here is that applications can be developed speedily and on-the-fly as it were, without requiring to spend longer sitting down at a separate pc in order to develop an application. A downside with smartphones is limited input, but short applications should be able to be written on the device, and if not there is always the ability to write the code on a PC in an emulator or hopefully soon in a native Windows application.

As it stands some jiggery pokey may be required to get OPL going on all Symbian devices with the same features and abilities it has gained on the 9210, but the team here is looking forward for when the time comes that someone with a Symbian Smartphone can sit coding apps in OPL that they can send to their mates to fiddle with on the train on the way to work/school/whatever. A hobbyists language it's almost destined to remain but hobbyists tend to have the more "off the wall" ideas on applications and the guts to write them, and these are currently lacking in the Symbian sphere.

Posted by Switchblade at April 14, 2003 12:10 PM
Comments
Post a comment