From what little I know about Object programming, you should be able to put your method in it's own file and share it using the PUBLIC keyword and use the ::REQUIRES directive in both programs to tell the ooRexx interpreter where it is. Consult the ooRexx docs and examples. For the second problem, why not just pass the directory names and then simply reaccess the directories when you get control back?
What OS and what version of THE are you using?
It's not fair to directly compare old 32K/64K mainframe systems, where we worked directly with Assembler and managed our own memory, with a modern pc that uses some variant of C and depends on garbage collection to help manage memory. I vividly recall writing 4K diagnostic segments for TP equipment (2701 RPQ's) as my first 'test the waters' programming assignment. Just the design phase back then was dramatically different than what a pc programmer would do now with C.
I would guess that RV=1 tells you that the scroll succeeded. Wouldn't you want to know that, just in case your calculations were wrong? Les On 6/12/2018 3:06 AM, Norbert wrote: Hello world, I hope for an answer for my question: What can I do to avoid the return value 1 from the scroll method of a list view control? In my application, there is a list view control with several hundred data lines. One function of the application is to locate on a certain data line automatically depending on some other...
The problem is not with running ooRexx on the VM mainframe, since that will probably never happen except under a Linux cpu. The problem, as you have discovered, is that the VM programmer moving to a pc running ooRexx under the impression that the statement from the About ooRexx page: Upwardly compatible with classic Rexx means that his code will run unchanged under ooRexx. Yours is just one of many surprises awaiting such a novice.
This is just one of the many incompatibilities between ooRexx and Classic Rexx on the VM mainframe, where Rexx was invented. The behavior of: a= is different, and there are others as well. Note that Rexx on VM also has not been upgraded to the ANSI standard, to the best of my knowledge.
I'm quite sure that if ooRexx attempted to share a RXQUEUE between userids that zOS would raise a security exception!
say windows_version('oorexx') should give you what you're expecting.
To get to the Properties: Right click on the desktop shortcut or the THE logo at the top left of the THE window. Properties is at the bottom of the list. Select it and then select Options. The checkbox for: Use legacy console is at the bottom. Make sure it is checked. Note that in W10 the Properties are no longer attached to the .exe file on the disk, as they were in previous versions of Windows! Les
Double check that THE's Properties>Options still has Use Legacy Console checked. Les On 3/6/2018 9:43 PM, Kenneth Robinette wrote: It should be noted that I am using the same exact version of THE in normal windows without a problem. It's only when I access that software via sshd, it must detect I am in console mode so the thec.exe gets accessed instead of theg.exe (both are started via the.exe). Would not both be using the same Windows arrow key logic? That would imply the problem is in thec.exe....
The binaries for THE are unique for each interpreter, so be careful which one you download and are using.
I'd be happy to play with it on Windows10 with THE 3.3b3 but there's no commentary or design notes to understand the intent of the code. Also, a pdf isn't executable.
If you can get a fixed IP address from your provider and have a pc that you've retired but will do the job, you could host it yourself. I've enjoyed you web site in the past. It would be a shame to lose it. Les On 1/12/2018 12:38 PM, Swifty wrote: For the last 10 years or so I've been running a website (http://www.swiftys.org.uk/) on a server hosted by VirtualNames UK, When I first approached them, and asked about REXX, their technical support (one person) agreed to host my server and REXX on their...
I have mixed feelings about this idea. It might make it easier to develop a profile, but it could wind up letting you shoot yourself in the foot later.
I find them right after the SOS commands and they're in the Index for both 3.3b3 and RC4
I'd suggest that you revert to 3.3b3. It seems to be the most stable release for Windows.
It would be nice if they didn't put the shortcut link on THE's disk too! Les On 1/6/2018 5:44 PM, Bob Langill wrote: I had the same problem. THE version 3.2 was running fine on WIN 10 until the recent upgrade. I found a fix: I opened the properties for THE's console session. Checked "Use legacy console". Unchecked everything else except "Input mode" When I restarted THE, it ran normally, including my keyboard mappings. I hope Microsoft will continue to support the legacy console for some time. Not...
This question was raised recently by someone else. The answer is NO. On 12/10/2017 12:07 AM, Ztruker wrote: As the subject says, is ther any way let others use a Rexx program I wrote without them needing to install ooRexx? Create a distributable that they can run directly that somehow contains all that is needed to execute? Just wondering. Thanks, Rich K. Any way let others use a Rexx program I wrote without them needing to install ooRexx Sent from sourceforge.net because you indicated interest in...
WOW! The tenacity of you guys figuring this out is absolutely amazing!! Should some restriction/guidance be included in the documentation?
Extend the functionality of SysTextScreenSize function
Ditto on CMS, where Rexx was developed. Ignoring BFS and SFS, CMS Rexx will simply search the accessed disks in mode ketter alphabetical order, applying its defined algorithim for naming conventions. This is why the system disks are usually at mode letters S and Y and a 'Tools' disk is earlier in the search order. If you're a Developer, as I was, you simply develop your test version on your 'A' disk and use it. THE uses a similar technique by letting you define a 'Macro Path' that lists the search...
Ken, Please provide the details here, especially the version of THE and the W10 update history at Settings>Update & security>update history, as well as your hardware and interpreter.
See bug #960
It's a mixed blessing(?) that we live with. Note that in your case if a user of another OS using Regina (with the usual ft of .rexx) had sent you some sample code and you had put it in the same folder some years ago, your code would have found it. You might be surprised by the result, but it might be of help!
Alfredo, Isn't this like trying to distribute Windows code to a Linux user? Why would you distribute code to a user who couldn't run it?
Time(E) certainly behaves differently than what is documented. This simple THE macro: call time 'R' say result b=0 do i=1 to 10000 b=i+1 End say time('E') exit yields: 0 0.003000 I'd guess that your simple Say Time('E') is actually 'correct', since the definition reuires a Reset. Also, I checked the Object Rexx Beta draft and the current doc was directly copied from that OS/2 manual which, in turn, reworded it from the VM Ref of the same timeframe. I'm in favor of documenting the actual behavior,...
I suggest the documentation simply reflect reality. As a guess, the 'trailing zeroes' part was probably derived from the VM Ref, where the original statement about Elapsed was copied down to the Reset section (at least in my copy). I'd have to check my Draft of Object Rexx to see what the wordsmiths wrote for the pc, and it's tucked away upstairs!
Shouldn't you OPEN both files first and check the Result? I suspect that the first 'call lineout' should be a 'call linein' I've always been advised to test that all I/O succeeds. Isn't it better/clearer to explicitly CLOSE the files and check that it worked? Oh, but it's your code for your private use, right? So as they say in VM land: "Your rifle, your foot!"
I can't directly contribute an answer, but from monitoring the ooRexx project I can pass on some observations that might help: 1-Be carefull about code that might try to Open to many files at once. If ooRexx runs out of 'file handles', the resulting error is hard to debug. 2- As a general rule, when resolving any kind of Include you must protect yourself against 'looping includes'. It only takes one keystricking error by someone to create this kind of problem! The Classic solution is something like:...
Perhaps, but remember that on VM your have a Virtual CPU and your userid is assigned a fixed amount of virtual R/W dasd space on some number of devices. Ignoring Shared File System resources and the Byte File System, you typically get a 191 and 193 disk of some size, which you Access as 'A' and 'C'. A file is identified by a Filename, Filetype and Filemode. For example: PROFILE EXEC A or maybe MYTOOL ASSEMBLE C and CMS defaults to all UPPER CASE for the Fname & Ftype if you are interacting with the...
I can't compare VM to other mainframe data management, but very briefly and relying soley on my memory: VM allocates 'data blocks' of a fixed size (512, 1024, 2048 or 4096 bytes. I don't think the old 800 byte blocks are used anymore.) There are two types of 'file blocks' Fixed and Variable that are pointed to by a chain (if necessary) of File Pointer Blocks. There are pointers to the FPB's that allow VM to 'insert' a new block if necessary, but if a file block has room for an added record, then...
No matter how you do it. a program or a series of Windows commands, you still have to write the header line to a new file and then copy and append the whole original file to the newly created header file. Unlike native mainframe files, native pc files do not have a pre-defined structure. They are just a stream of bits with arbitrary strings within them that define their structure.
Something else to consider: Can a phrase be split across two lines? Can a word be hyphenated across a linend? Les On 8/8/2017 11:46 AM, Per Olov Jonsson wrote: Dear Erich, Thanks for the hints, I will re-run later with the latest ooRexx version (a Zillion Tnx to Rony for making an installer for MAC!) but unfortunately I have a plane to catch, I will come back to you when I am back on the planet. The newNeedles are indeed identical length to needles ( "an einen zug anschluss haben“ is replaced with...
You might consider doing a Google search: find and replace program I got a fair number of hits and some that were free. Les On 8/8/2017 7:13 AM, Per Olov Jonsson wrote: Dear all, I need to replace „needle“ with „newNeedle“ in a huge file (5 million lines) and I need to check all lines for a large number of needles (some 500 000). The file contains some 100 million words and the needles are short phrases of 2-5 words. From tests I can see that the replacement only takes place for 1-2% of the...
If Gil can get confused, then I submit that some correction should be done. It might be as simple as saying "... the API ..."
Oops! I misinterpreted the meaning of "reverse". The item order is swapped, instead of the whole string being reverse(). It's pretty simple to change my code to swap the order of the items.
--The following has not been tested, since I don't have a set --of data. Performance should be measured against any other --technique with a large set of data. --The Classic solution would use a "Content Addressable Array", --like this: parse value 0 0 with b.0 c.0 a. in_a?.=0 / Initialize the flag array / --Read in the A data do whatever -- read Adata call populate_A Adata End --Read in the B data do whatever -- read Bdata call populate_B Bdata End do i=1 to c.0 say c.i End exit Populate_A: procedure...
Apologies that I missed the bad quoting :-( I specifically said that splitjoin should be assigned to a function key! You've proven that playing with the ENTER key is tricky :-) Best advice: Don't do it! When you muck it up, you have to use a different editor to fix it. If you'd like my smart_enter.the to play with, click on my name and send me a private email with your email address to send it to.
When you invoke THE are you using -p to point at your theprofile ? I've never tried using a .kex filetype. That would require a SET COMPAT command, issued from a .the macro, if I understand the docs. Maybe using -p to invoke theprofile.kex would work, but I've never tried it. The profile is, in my experience, one of the hardest things to debug and redefining the ENTER key can be very tricky! I've done it and presented the results at the 2012 Rexx Symposium: http://www.rexxla.org/events/2012/presentations/LesK/RexxSymp2012_LesK_Transforming_THE_publish.html...
Walter: Don't forget tthat you can use Gil's orxver.bat to create a backup of your current version that it can restore in place of 5.0.0 while saving it too!
This is what lets you intercept a built-in function and still use it by putting it in quotes.
Have you tried the current release (4.2.0)?
Interesting info, Chip. My exposure to teletypes ended when I got out of the USAF...
But some of those aren't 'locked in'. For example C-D, which I use to launch ndirs.the....
Sorry, but it's still broken in 3.3b3.
I believe that's a known problem, fixed in a later release. I have Windows 10 now...
Is there any possible side-effect to existing programs if the search order is ch...
Wouldn't it be better to fix ::REQUIRES to ignore the circular reference and issue...
I've just seen a piece of code that uses this in Regina and it's a great improvement...
I don't see the conflict that you imagine might occur at some time in the future....
Curios: Are their other variants with the quotes moved around that don't trigger...
I would think that our charter would require us to fix the original bug, unless we...
Test confirmed.
Perhaps you should open a problem with the KVM folks?
~reverse() vs. ~reverse is a fine example of melding Classic and Object Rexx so either...
I didn't imply that *existing* code or test cases would have to change, but obviously...
I agree with Jon, with more weight given to syntax consistency. Plus, saving one...
Provide a way to allow the Classic Rexx 'extra characters' in varnames
What about 'ReX', 'reX' etc., since Linux allows mixed case to be respected?
Where is .rexxinfo documented? I can't find it in the 4.2 docs.
One has to wonder why they weren't included to begin with? Btw: All the settings...
So, what was the bug?
It would be interesting to know exactly what the bug was. Does the fix also take...
I think it would be a good idea to post it to the developer list! My exposure to...
I vote for consistency in both the error codes and the function to interpret them...
what happens if the file is closed and then read? If the read stops at the last character...
Under what circumstances would this feature be necessary?
If it's non-damaging, and it must not be if it can be shared READ, then the Linux...
I would argue that hashbang is part of the source and should be properly reported...
Those 'random return codes' can be important! Please read the Ref, as I suggested...
You should read the Ref section for rxwinexec so you can more precisely explain exactly...
I use SysFileTree in some of my code and it's in the list, so I was concerened.
I would think that this change might have wide implications for existing code. If...
Going back to the original proposal, I don't see any confusion in combineing the...
That's clever! Can the end marker start with :: ?
What if the help panel data was an example of how to create and use a ::data directive?...
I'm confused. The RexxUtil section of the Ref doesn't include anything about RxMath,...
One would have to presume that the /usr/local node as root would place additional...
It would be interesting to know what version of ooRexx and Windows you were running...
Trace R does not show Result
Exactly what release of THE did you install? Are you running thec.exe or theg.exe?...
So it's 5.0 that has the problem! Just 64 bit?
Strange! I reduced it to its simplest form and it works just fine for 32 bit 4.2.0...
The Ref seems perfectly precise to me. Note however that not all SIGNAL ON conditions...
You might have to play with it, but my attached y.the should at least let you access...
All those that you mention are in the list produced by your code. Is there some Object...
Thanks very much for the explanation! Us old VM mainframers sometimes don't "get"...
I have to question why you think you no longer have to worry about whether the file...
That sounds correct to me, especially in light of some recent changes. Unless documented...
Mark is out of country with limited internet access.
Is there an accompaning 'prefix' or 'prepend' method, just for completeness?
What about 'no horses' ? Wouldn't "plural" be a more intuitive name?
Although Ricks suggestion to use ".context~variables" is fine for the Object programmer,...
This would make my 'wrapper', dumpvars(), a lot easier to bulletproof. I wholeheartedly...
sort_dumpvars.rex attached
As suggested in bug 1318, I think it would be better to maintain compatibility with...
Rony: By a 'new switch' do you mean a new option for SysFileTree? Perhaps 'G' for...
I notice that some of the numbers are longer than the default Numeric Digits.
The example above would break existing code, since it inserts WhoCalledMe before...
With RC4 I get: 10 *-* 'msg' select.1() select.2() Error 43 running C:\MyTHEstuff\testt.the...