Este año se cumplieron veinticinco años de la aparición del As400/iSeries/System i o cualquier otro nombre que se propongan agregarle. De su robustez y excelente diseño dan testimonio dos artículos recientes: uno dedicado a recordar sus primeros ensayos y nacimiento, y otro evaluando el estado actual del RPG como lenguaje moderno.
El primero, escrito por
Mel Beckman, recuerda su inicio como programador, participando en beta tests del equipo en una empresa cercana a Rochester. Sólo rescato dos párrafos:
Despite the plethora of early bugs, we
RPG programmers quickly began to see their frequency decreasing as the
S/38 OS, called CPF (Control Program Facility) stabilized. S/38’s
single-level store, object-oriented architecture, and integrated
database really did seem to make programs more reliable, heading off the
most common coding gaffs and preventing wholesale machine crashes. As
the S/38 matured, it gained a reputation for solid reliability in the
finance and healthcare industries, which are still strong markets for
the system’s descendent, today’s IBM i. Throughout the S/38’s evolution
to AS/400, iSeries, and ultimately Power hardware architectures, IBM has
been able to preserve customer’s investment in business logic and data
storage.
I had no idea then just how powerful the S/38’s innovations would
turn out to be. They enabled IBM, and its many customers, to transport
an immense amount of binary code and data into the future – not just
twenty-five years, but thirty years, with very few disruptions. IBM
promised, with both the S/38 and the IBM i, to protect users’ business
investment in applications, processes, and logic.
In the intervening decades, many other
systems have come and gone, dragging their user populations into
oblivion with them. Only IBM i has preserved a continuous architectural
path that is still going strong today. In 2013 it’s clear that IBM alone
kept it’s promise.
El
segundo artículo es un editorial del IBM System Magazine, escrito a propósito de las celebraciones de los 25 años del equipo (sistema operativo + recursos + hardware), puntualiza el estado actual del RPG, que de ninguna manera es ya lo que inicialmente fue (generador de reportes):
In
reading today’s anniversary chapter, Susan learned something new—although Jon
claims he knew it long ago. When RPG IV was introduced, the name “RPG” was
officially declared to be no longer an acronym—or, more correctly as Scott
Klement pointed out recently, an initialism. For those who didn’t realize this,
to be an acronym, apparently it must be pronounceable as a word, such as NATO.
If it is simply spelt out, as RPG is, it’s technically an initialism.
While
the letters RPG may not officially stand for anything any more, RPG, the language,
means a great deal to many thousands of programmers around the world and the
users of their rock-solid, efficient, modern business applications.
In
many ways it’s a good thing that RPG no longer stands for “Report Program Generator”
because it has been many, many years since RPG’s primary function was
reporting. It has evolved radically over the years.
If
the picture that comes to your mind when you think of RPG is of columnar logic
with multiple conditioning indicators and nary a hint of SQL, it’s time to wake
up, Sleeping Beauty—you’ve missed a lot in the last 25 years. IBM i’s modern
RPG IV is barely recognizable as a relative of the AS/400’s original RPG/400.
Today’s
RPG logic is written in free format. It also utilizes libraries of homegrown,
open-source and third-party functions in addition to RPG’s own library of more
than 70 BIFs (built-in-functions). As a result, what would have been dozens of
lines of indicator-laden, columnar “old-style” RPG are replaced by simple,
powerful expressions. And RPG’s data
access has “grown up” too. Support for a huge variety of native data types and
a deeper level of integration with SQL than is seen in almost any other
language makes RPG a natural partner for IBM i’s integrated DB2 database.
Still
think that RPG = Green Screen? Think again. Many shops are running interactive
Web and mobile applications with logic powered by RPG. Or if you prefer, RPG
code can easily provide the business logic underpinnings of Web services,
stored procedures and other services to applications written in PHP, Java, Python,
Ruby, .NET, etc.
Inevitably
there are things that RPG doesn’t understand natively and that IBM cannot add
to the language in a meaningful timeframe. The pace of change in today’s IT
world is just too fast. That’s why Open Access was recently added to the
language. It allows for the development of drivers to add new functionality
while maintaining RPG’s powerful data marshaling capabilities. For example, you
can write a driver to call a currency conversion Web service from RPG, allowing
any RPG program to treat access to real-time currency conversion data as if it
were a huge database in the sky. Simply set the key values for the currencies
involved and issue a CHAIN operation. The conversion rate is returned as if it
were being retrieved from a database column.
Como los autores dicen, mientras hemos visto pasar y desaparece equipos, lenguajes y arquitecturas, el diseño conceptual del AS400 sigue vigente y en primera línea. Centenares de miles de instalaciones lo demuestran. Quizá aún a pesar de algún directivo de la propia IBM, que a veces parece dudar de su producto.
No hay comentarios.:
Publicar un comentario