Jon Paris - AS/400 AD Market Support - wrote:

>we showed a "Technology Preview" of a version of VisualAge
>for RPG which generated Java bytecode.  This provides the ability for an
>application written with VARPG to be deployed over the web and made
>to any user with a browser (i.e. it would run on Apple Mac, Network
>AIX, Win 95, Win NT, etc.)


I think this tool would be invaluable for migration of existing VARPG
applications to the Java environment. I assume you would be able to plug the
resulting Java Beans into your IDE such as VisualAge for Java, (this would
obviously be important for integration with newly developed applications).

However, for brand new applications. I would not be too keen on starting
with VARPG with the aim of deploying to various platforms via 'generated'
Java byte code for two main reasons:-
a) Using VARPG, which, although Event Driven is not Object Oriented, could
tend towards a procedural bias in the resulting design. So the arcitecture
of the resulting code would more than likely mismatch with the essence of
good Java program design. One would end up with VB-like piece-meal and
fragmented solutions to complex heavy-duty enterprisewide application
requirements. (Sorry about the jargon, but you know what I mean...).
b) By not supplying the resulting Java source code, you would be locking the
programmer and IT into the RPG paradigm for ever after! At the recent
News/400 Java Decisions conference. I heard the comment that Visual Basic
and its associated design paradigm will become the 'SAA for the Internet'
(!)  Someone in another message in this thread likened the resulting Java
code from VARPG to the type of voluminous and unmaintainable code generated
by Synon. As a former developer at Synon, and Synon programmer, I would
absolutely agree that no one would want to have to maintain or enhance
Synon-generated RPG with no reference to the underlying Synon model which
generated that code. The differentiating point about Synon is that if you
have the Synon model - and some don't, poor souls: they're forever-after
dependent on the Vendor - you have a specification of the system's design
from which you can continue to generate the deployable code. With Synon you
are automatically producing 3GL code from a 4GL(or greater with Obsydian)
design model. The situation where you are faced with having to debug
potentially voluminous Java byte code generated by VARPG on a platform
different from the AS/400, and then having to return to the (3GL)  VARPG on
the AS/400 to make your changes would be inconvenent at best. Why not simply
start with Java source code, preferably generated from an object-oriented
and platform-independent design model?

>From my perspective, I  would like to see Toronto/Rochester concentrate on
developing tools to let IT departments reverse engineer existing RPG/IV and
DDS source code to Java source code, (since RPG/DDS is what most shops have
out there today). Of course the capability to drop the resulting Java Beans
onto any IDE's pallette would also be very important. Also, continue with
your focus on tight integration between the AS/400 Java Virtual machine and
ILE by supplying Java Native Interface calls to procedures in Service
Programs, and to Bound Programs, and vice versa from RPG to Java.

This is all IMHO.

Chris Jewell

| This is the Midrange System Mailing List!
| To submit a new message, send your mail to "".
| To unsubscribe from this list send email to
| Questions should be directed to the list owner/operator:

This thread ...

Return to Archive home page | Return to MIDRANGE.COM home page