Though IBM's Python 3.6 for PASE is a significantly better language
overall than iSeriesPython 2.7, there are still some aspects of
iSeriesPython that I like better.
One of them is that when an exception occurs in an iSeriesPython
program, it registers as a WRKACTJOB-visible error. The error itself
isn't particularly informative; it's just "application error" and then
you have to dig further. Or maybe the job ends automatically but
abnormally. In any event, you get *some* kind of system-level
indication that something went wrong.
I've been using Python 3.6 for PASE, and all the jobs end "normally",
no matter what. It's been difficult for me to get into the habit of
always verifying every single job by looking at the spooled output.
Even if I do eventually get to the point that it's a habit, it's still
pretty damn annoying and productivity-sapping.
So, one brainstorming challenge for myself and anyone else who is
inclined to think about this is: Can we build a Python calling system
that detects Python exceptions and causes MSGW?
I would be remiss if I didn't point out that Richard Schoen's "Python
on i" library does at least make it easy for Python output to go to
the job log. He deserves credit for what is the current "Cadillac of
Python wrappers". But if the job ends normally, how do I know to check
the job log? It's essentially the same issue I have now, just that my
output goes to spooled files named QPRINT instead of to the job log.
Now, I haven't really dissected Richard's library. Perhaps it could be
adapted so that output to stderr triggers an error message or abnormal