On Wed, Oct 30, 2013 at 12:25 PM, Charles MARTIN
<cmartin@xxxxxxxxxxxxxxx> wrote:
Well, I try to build tools for my team of rpg programmers. [...]
I want to build tools that allows them to do more stuff with less code. (better code, less bugs, better reading)
That could sound insane, but I even considered building a new language with a better syntax I could compile in rpgle or in a module.
Not insane. Not to me, anyway. Not to folks who use *very*
high-level languages. It is a *routine occurrence* to use Lisp, Ruby,
Python, or Perl (or other "academic" languages that might be even less
well-known in RPG circles) to write interpreters for domain-specific
languages.
To an extent, we all do this ourselves when we write any program,
module, or procedure that gets called by something else. At a very
computer-science-theoretical (i.e. mathematical) level, pretty much
all computer code is just API for something else.
So, to amplify what you and Buck mentioned regarding service programs,
I would totally take the approach of "wrapping" a nice Java data
structure in an RPG-accessible interface. I have no idea how to do
this, but it's probably more doable with Java than with anything else.
They could learn a new language. This means a lot of time learning,
which is good, but cost a lot.
Another language is still an option.
For what it's worth, I learned Python on my own, just by reading the
tutorial in the official documentation. I don't have any formal
training in it. Yeah, there are a few mind-blowing things in Python,
but only because it will blow your mind how much easier it is in
Python than in RPG. Unlike Lisp, Ruby, or Perl, Python's syntax is
specifically designed not to be too weird to "conventional"
programmers (Fortran, C, Pascal, RPG, Basic, etc.). There are also
some genuinely conceptually advanced things in Python, but you don't
have to learn or use them to be productive in Python.
John
As an Amazon Associate we earn from qualifying purchases.