From: <hp...@we...> - 2022-06-02 00:16:07
|
Hello René! Am 01.06.2022 um 19:04 schrieb René Jansen: >> [...] > In NetRexx, for user interfaces you mostly choose from the Java world, so Swing, AWT, SWT or JavaFx come to mind. The plan (my plan at least) is to stay with ooRexx and replace only OS/2 Pipelines by those of NetRexx. All what you list from Java world is new to me. >> It is the first time I "tele-collaborate" for programming. So I >> have no clue what works best, one is master with the ideas and the >> other the typist? Should we work top-down or simplest cases first, >> the impossible later? Or do we an endless >> question-and-answer-ping-pong? >> > I am a proponent of the model of sending something that works and then letting the other person go on with it. I am not afraid of endless q&a ping pong either. I would like to try the modern two-persons-in-an-edit session sometimes, but my days are not that plannable. I'm fine with your proposal to send what works for you and I'll try if it also works for me. That might result in some q&a. I'd like to restrain from same-time edit sessions, I am a hobbyist and thus there is no "pressure to success". >> My first question would be, the "glue" code to get access to >> pipelines is now >> >>> call RxFuncAdd 'RxPipe', 'RXPIPE', 'RXPIPE' > > In NetRexx there is no RxFuncAdd. You need to compile a class that uses pipes with the pipc compiler. There should be an alias or .bat file for that. Q: I do stay with ooRexx, or not? I'm not going to migrate the complete program to NetRexx, only the pipes are replaced? Just to be sure. > Example: [...] I took your example to a file, named it 'fstxmp.nrx' and had to learn, that is not possible, 'class stemtest' requires the file to be 'stemtest.nrx' Now nrc stemtest.nrx shows: > java -cp ";;C:\prgm\NetRexx\lib\NetRexxF.jar;." -Dnrx.compiler=ecj org.netrexx.p > rocess.NetRexxC stemtest.nrx > NetRexx portable processor 4.03-GA build 260-20220503-1730 > Copyright (c) RexxLA, 2011,2022. All rights reserved. > Parts Copyright (c) IBM Corporation, 1995,2008. > Program stemtest.nrx > 17 +++ pipe (stempipe debug 0 ) stem a | prefix literal {a} | console | stem > b > +++ ^ > +++ Error: Unexpected character found in source: '{' (hexadecimal encoding: > 007B) > Compilation of 'stemtest.nrx' failed [one error] What me wonders is the hex encoding '007B'x instead of simply '7B'x -- is that the cause of this error? > Since NetRexx 4.03 (that is about a month) you can also just use address and receive output in a stem: > > out ='' > address pipe with output stem out > “ | split | reverse | cons" > do i=1 to out[0] > say out[i] > end Filed this one as 'omexar.nrx' and applied 'nrc omexar.nrx', result: > Compilation of 'omexar.nrx' successful [one warning] It was the variable i ... > Warning: Wrong syntax for DO; retrying as a LOOP instruction BTW, there is no need any more to have within the first ten lines a comment? IIRC, this was used on VM/CMS to distinguish a REXX from EXEC2. > This works from the normal NetRexx compiler, which most people alias to nrc. I did it not intentionally, but it seems the installation done it for me. At least I may use nrc as a command. >> Does NetRexx need something similar? >> >> The first pipeline is to varload (or varset) the INI file: >> >>> fn = left(fid, lastpos('.', fid)) || 'ini' >>> call RxPipe '< "' || fn || '"!nlocate 1 /*/!varset' Hmm... -- do I not understand what this following three tests are. And how I have to implement them. > ➜ test git:(master) ✗ cat varset.nrx > vars ='' > address pipe with output stem vars > "< vars.ini | nlocate 1 /*/ | cons" > do i=1 to vars[0] > say vars[i] > end > > ➜ test git:(master) ✗ cat vars.ini > aap = 1 > noot = 2 > * mies = 3 > wim = 4 > > ➜ test git:(master) ✗ nrc -exec varset.nrx > NetRexx portable processor 4.04-alpha build 272-20220524-1803 > Copyright (c) RexxLA, 2011,2022. All rights reserved. > Parts Copyright (c) IBM Corporation, 1995,2008. > Program varset.nrx > ===== Exec: varset ===== > aap = 1 > noot = 2 > wim = 4 > Processing of 'varset.nrx' complete Could you pls explain what's my part now? > So that does more or less what you want already - the source redirect <, the nlocate works. If you want we can make a varset stage, I think we don’t have that at the moment but it cannot be too hard. Varset or varload not yet available? That's a nice way to set some defaults like: > * > *** VilMA.ini - set defaults to your gusto > * > * where to file VilMA lists > /VIMDR/C:\prgm\rexx\VilMA\ > * > * mostly used directory for controller state files > /CTLDR/C:\prgm\HP-Emulators\V41\ > * > * mostly used VIL file location > /VILDR/C:\prgm\HP-Emulators\VirtIL\ > * > * Port number increment > /DELTA/3 > * > * Initial VILMA list to use at every start > */ITLVL/VOID > /ITLVL/std.vilma > * > * File-ID of controllers list > /CTRLS/VILMA.Controllers > * > * File-ID of programs' caption > /TPCPT/typical.caption > * > * dialog position, pixels 'left top' from screen border > /DiaPos/321 23 > * trace execution > */pst.8/1 I assume you have access to "the Book", so I don't need to explain any details. BTW, triggered by your hint elsewhere about CLASSPATH I had a look to the QuickStart Guide and conducted once more the simplest tests -- and already the first failed: java -version Result: > Fehler: Hauptklasse ?version konnte nicht gefunden oder geladen werden It's so annoying, yesterday it worked. No clue how the dash translates to questionmark. Do I have to reinstall Java? So sad. Best, M. |