Re: [U2] Advantage of indirect call in BASIC
If you encounter this, it is probably a Prime INFORMATION (PI) legacy code. As this was a commonly used convention in natively developed PI applications (rather than PICK-ported apps). As globally catalog'd object was a typical naming convention for "production" object in PI. Plus as mentioned by others it was also primarily for performance reasons. Some of those performance reasons still exist. If you don't resolve the subroutine name in your BASIC code, then the VOC file has to be referenced to find out the "true" catalog name. If you define and call a variable - if by-passing the VOC calling entirely. Of course there were many non-native applications running on PI from the PICK world that never took any advantage of this and many other PI features. Legacy PICK code tends to be account catalog centric (ie., *MYACCT*MYOBJECT). So typically doesn't use this convention, we use this convention to define test / non-production object code in the catalog space. Hence, we also use it to load/deignate different versions of the object code dynamically. Our account initialisation code defines "*CATALOGNAME" as the production code. When initialising on logon to the UV account, It then checks the local VOC for any different definitions in the local account - and asks the test user (not end-users) if they wish to local that object version. This allows versions of the code to be loaded for different users - for testing and pre-implementation purposes - on demand. For example, we run to run "*V1.1*SOME.PROGRAM" rather than "*SOME.PROGRAM". This is especially useful if you share your single UV environment with multiple accounts and versions of your software. This saves having change VOC entries too, but of course you can do that too. But then if you have some users that don't what or need to test that version - then how would you control/enforce that? Regards, David -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson Sent: Tuesday, 4 December 2012 11:39 AM To: u2-users@listserver.u2ug.org Subject: [U2] Advantage of indirect call in BASIC I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ** IMPORTANT MESSAGE * This e-mail message is intended only for the addressee(s) and contains information which may be confidential. If you are not the intended recipient please advise the sender by return email, do not use or disclose the contents, and delete the message and any attachments from your system. Unless specifically indicated, this email does not constitute formal advice or commitment by the sender or the Commonwealth Bank of Australia (ABN 48 123 123 124) or its subsidiaries. We can be contacted through our web site: commbank.com.au. If you no longer wish to receive commercial electronic messages from us, please reply to this e-mail by typing Unsubscribe in the subject line. ** ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
Primos, much like it's predecessor Multics implemented a ring protection model. Here's a fair explanation: http://en.wikipedia.org/wiki/Ring_(computer_security) Wjhonson wrote: Why do you call it "ring" jump in particular? What's the "ring" ? -Original Message- From: Wols Lists To: u2-users Sent: Tue, Dec 4, 2012 4:07 pm Subject: Re: [U2] Advantage of indirect call in BASIC On 04/12/12 17:03, Wjhonson wrote: Ring-jump ? Vas is das It's when the processor jumps between restricted user mode, and kernel can do anything mode. Cheers, Wol ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users -- Jeff Schasny - Denver, Co, USA jschasny at gmail dot com ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
In DataStage I have used the indirect all method to implement "late binding" (referred to in the OOP post) to create a "rules engine". The actual rules to be applied/tested could not be known until the data actually arrived. So the test routine itself was effectively little more than a dispatcher, determining which rule routine(s) to call, and calling them via the indirect call mechanism. It worked wonderfully well. ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
Ah, there we're getting in to PRIMOS architecture (and, by implication, that of most UNIX variants). Ring 0 was the innermost ring, effectively the kernel, where you had to be extremely privileged to do anything at all. Most users executed in Ring 3. Ring 1 consisted mostly of interludes to allow less-privileged users access to kernal functions. - Original Message - From: Wjhonson Sent: 12/05/12 11:09 AM To: u2-users@listserver.u2ug.org Subject: Re: [U2] Advantage of indirect call in BASIC Why do you call it "ring" jump in particular? What's the "ring" ? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
Why do you call it "ring" jump in particular? What's the "ring" ? -Original Message- From: Wols Lists To: u2-users Sent: Tue, Dec 4, 2012 4:07 pm Subject: Re: [U2] Advantage of indirect call in BASIC On 04/12/12 17:03, Wjhonson wrote: > Ring-jump ? > Vas is das > It's when the processor jumps between restricted user mode, and kernel can do anything mode. Cheers, Wol ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
On 04/12/12 17:03, Wjhonson wrote: > Ring-jump ? > Vas is das > It's when the processor jumps between restricted user mode, and kernel can do anything mode. Cheers, Wol ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
Ring-jump ? Vas is das -Original Message- From: Wols Lists To: u2-users Sent: Tue, Dec 4, 2012 8:37 am Subject: Re: [U2] Advantage of indirect call in BASIC On 04/12/12 16:06, Jeff Schasny wrote: > I'll second Allen Egerton's "left over from Prime Information" theory. I > distinctly remember being told that indirect subroutine calls were > measurably faster way back in my days at Prime. > >From my knowledge of Pr1me architecture (which isn't great) this was one of Pr1me's very strong points - the hardware/software subroutine call architecture was *extremely* fast. So much so that, clocktick for clocktick, it is probably STILL several times faster than the now-ubiquitous x86 architecture. Shame they haven't caught up :-( (I'm thinking particularly here of a ring-jump, but I think it was just blindingly fast regardless - linux goes to great efforts to avoid such jumps, Pr1mos didn't care...) Cheers, Wol ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
Of course "blindingly fast" on a 4 MIPS 9955 is what we might now call "quaintly tortoise like" and that's why we still find things like the all indirect subroutine calls in an attempt to squeeze any available drop of performance out of applications. Wols Lists wrote: >From my knowledge of Pr1me architecture (which isn't great) this was one of Pr1me's very strong points - the hardware/software subroutine call architecture was *extremely* fast. So much so that, clocktick for clocktick, it is probably STILL several times faster than the now-ubiquitous x86 architecture. Shame they haven't caught up :-( (I'm thinking particularly here of a ring-jump, but I think it was just blindingly fast regardless - linux goes to great efforts to avoid such jumps, Pr1mos didn't care...) Cheers, Wol ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users -- Jeff Schasny - Denver, Co, USA jschasny at gmail dot com ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
On 04/12/12 16:06, Jeff Schasny wrote: > I'll second Allen Egerton's "left over from Prime Information" theory. I > distinctly remember being told that indirect subroutine calls were > measurably faster way back in my days at Prime. > >From my knowledge of Pr1me architecture (which isn't great) this was one of Pr1me's very strong points - the hardware/software subroutine call architecture was *extremely* fast. So much so that, clocktick for clocktick, it is probably STILL several times faster than the now-ubiquitous x86 architecture. Shame they haven't caught up :-( (I'm thinking particularly here of a ring-jump, but I think it was just blindingly fast regardless - linux goes to great efforts to avoid such jumps, Pr1mos didn't care...) Cheers, Wol ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
I'll second Allen Egerton's "left over from Prime Information" theory. I distinctly remember being told that indirect subroutine calls were measurably faster way back in my days at Prime. Wjhonson wrote: I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users -- Jeff Schasny - Denver, Co, USA jschasny at gmail dot com ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
We use the indirect call method to allow a user to create, for instance, an ITEMPROC subroutine. The subroutine implements a defined interface and the name is provided in the command syntax, so we parse out the subroutine name and call it at run-time. There's no way at compile time that we can anticipate the names that a user might choose for their subroutines that implement our interface. So, providing an open API is a very real case where the CALL @ syntax is critical. -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Martin Phillips Sent: December-04-12 6:13 AM To: 'U2 Users List' Subject: Re: [U2] Advantage of indirect call in BASIC Hi, A direct call has to be looked up once in the catalogue system when it is first used. Subsequent calls will be fast because the link has been created. However, if the call is itself in a subroutine and that subroutine exits, it starts clean again on next call and hence may need to rebuild the link. I say "may need to" because there are various layers of caching that speed all this up. An indirect call starts out with a string variable. The first call will do the catalogue search, link the program, and replace the string with a variable that acts as a fast link to the subroutine. The link only needs to be rebuilt if the variable is overwritten or discarded. This means that putting the indirection variable in a common block that is only initialised once will do the catalogue search only once. Resetting the variable (local or common) before every call will require the search every time, though again caching may help. Long ago, I did some performance comparisons on UV when delivering an Internals course. I have lost the results but I seem to recall that it was well worth using links in common for subroutines that are called enormous numbers of times. Martin Phillips Ladybridge Systems Ltd 17b Coldstream Lane, Hardingstone, Northampton NN4 6DB, England +44 (0)1604-709200 -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of David A. Green Sent: 04 December 2012 14:01 To: 'U2 Users List' Subject: Re: [U2] Advantage of indirect call in BASIC Does anyone have any current benchmarks on this type of call? Several years ago when I tested it in UniData it was very slow call compared to using the name. David A. Green (480) 813-1725 DAG Consulting -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson Sent: Monday, December 03, 2012 5:39 PM To: u2-users@listserver.u2ug.org Subject: [U2] Advantage of indirect call in BASIC I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
Hi, A direct call has to be looked up once in the catalogue system when it is first used. Subsequent calls will be fast because the link has been created. However, if the call is itself in a subroutine and that subroutine exits, it starts clean again on next call and hence may need to rebuild the link. I say "may need to" because there are various layers of caching that speed all this up. An indirect call starts out with a string variable. The first call will do the catalogue search, link the program, and replace the string with a variable that acts as a fast link to the subroutine. The link only needs to be rebuilt if the variable is overwritten or discarded. This means that putting the indirection variable in a common block that is only initialised once will do the catalogue search only once. Resetting the variable (local or common) before every call will require the search every time, though again caching may help. Long ago, I did some performance comparisons on UV when delivering an Internals course. I have lost the results but I seem to recall that it was well worth using links in common for subroutines that are called enormous numbers of times. Martin Phillips Ladybridge Systems Ltd 17b Coldstream Lane, Hardingstone, Northampton NN4 6DB, England +44 (0)1604-709200 -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of David A. Green Sent: 04 December 2012 14:01 To: 'U2 Users List' Subject: Re: [U2] Advantage of indirect call in BASIC Does anyone have any current benchmarks on this type of call? Several years ago when I tested it in UniData it was very slow call compared to using the name. David A. Green (480) 813-1725 DAG Consulting -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson Sent: Monday, December 03, 2012 5:39 PM To: u2-users@listserver.u2ug.org Subject: [U2] Advantage of indirect call in BASIC I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
Does anyone have any current benchmarks on this type of call? Several years ago when I tested it in UniData it was very slow call compared to using the name. David A. Green (480) 813-1725 DAG Consulting -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson Sent: Monday, December 03, 2012 5:39 PM To: u2-users@listserver.u2ug.org Subject: [U2] Advantage of indirect call in BASIC I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
On 12/03/2012 10:11 PM, Ed Clark wrote: I could see a 4gl writing out this kind of code, or a menu system. When you use indirect calling, the name of the subroutine can contain odd characters that wouldn't normally be allowed--though on some platforms you can also quote the call, e.g.: CALL "my-sub**"(parms) Datatel (eg: Ellucian) does this in certain places allowing their clients the ability to plug in custom subroutines for various things like GPA calculations, repeat policies, etc. On Dec 3, 2012, at 7:38 PM, Wjhonson wrote: I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users -- Jeff Butera, PhD Associate Director for Applications and Web Services Information Technology Hampshire College 413-559-5556 ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
hi, These method is very usefull when you build software like a "lego", some pieces are polymorphic, the assignment of "source" depens of environment, params at runtime not only at compile time... the value of "soure" can be assigned from litteral, but also read from file or be the result of a text expression. sample : if you run a software on mutiple plateform, unix and windows, UV, UD, D3, ...; to adress OS and third part software, the final syntax is different but the "main()" can call "source" with no difference, you an createa a new variation of source() with no change on the main(). sample : send a e-mail : depending of OS, smpt, relaying, it can be 20 differents method/tools to send a mail but the elements of it (from,to,subjet,body,attachment) are always the same. With the indirect call, you can define wich is the "local" method to send a mail and never touch the main(). two pence. Manu Wjhonson a écrit : I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
On 04/12/12 00:38, Wjhonson wrote: > I've not encountered this is my career previously, but now I'm seeing a > system written almost entirely with the use of indirect calls in Universe > BASIC. > > That is > SOURCE = "*SOME.PROGRAM" > ... > CALL @SOURCE(INPUTS) > > Is there some advantage to the use of indirect calls that a system would be > written entirely in this fashion? > I've sometimes done this, can't remember why. BUT. This is *standard* OOP practice. If the guy was used to object orientated programming, then he would expect this, and if he was not using an OOP language (like BASIC), then he would have had to explicitly code it - just like he's done here! Cheers, Wol ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
On 04/12/12 04:57, Israel, John R. wrote: > As far as the number of arguments changing, I will often write a subroutine > with a few extra variables (FUTURE1, FUTURE2, FUTURE3) so that I do not need > to find all the existing programs that call it and recompile them. It makes > this sort of thing a piece of cake. The existing programs will likely not > need to populate the arguments other than initialized to null. > While I didn't know about it way back when, you can actually test a variable for "unassigned" so if you do that, you can just start your subroutine with "if future1 is unassigned then set to null" etc. Cheers, Wol > John Israel > > Sent from my iPhone > > On Dec 3, 2012, at 9:28 PM, "Kate Stanton" wrote: > >> I would hate to see that in our software, as it would be so hard to find >> where a subroutine is used. >> >> On the odd occasion we use this form (eg call depends on transaction type), >> we do the definition just above, so it can be found. >> >> In my experience, the number of parameters is more likely to change that >> the subroutine name. >> >> On 4 December 2012 13:38, Wjhonson wrote: >> >>> I've not encountered this is my career previously, but now I'm seeing a >>> system written almost entirely with the use of indirect calls in Universe >>> BASIC. >>> >>> That is >>> SOURCE = "*SOME.PROGRAM" >>> ... >>> CALL @SOURCE(INPUTS) >>> >>> Is there some advantage to the use of indirect calls that a system would >>> be written entirely in this fashion? >>> >>> ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
As far as the number of arguments changing, I will often write a subroutine with a few extra variables (FUTURE1, FUTURE2, FUTURE3) so that I do not need to find all the existing programs that call it and recompile them. It makes this sort of thing a piece of cake. The existing programs will likely not need to populate the arguments other than initialized to null. John Israel Sent from my iPhone On Dec 3, 2012, at 9:28 PM, "Kate Stanton" wrote: > I would hate to see that in our software, as it would be so hard to find > where a subroutine is used. > > On the odd occasion we use this form (eg call depends on transaction type), > we do the definition just above, so it can be found. > > In my experience, the number of parameters is more likely to change that > the subroutine name. > > On 4 December 2012 13:38, Wjhonson wrote: > >> I've not encountered this is my career previously, but now I'm seeing a >> system written almost entirely with the use of indirect calls in Universe >> BASIC. >> >> That is >> SOURCE = "*SOME.PROGRAM" >> ... >> CALL @SOURCE(INPUTS) >> >> Is there some advantage to the use of indirect calls that a system would >> be written entirely in this fashion? >> >> >> ___ >> U2-Users mailing list >> U2-Users@listserver.u2ug.org >> http://listserver.u2ug.org/mailman/listinfo/u2-users >> > > > > -- > Kate Stanton > Walstan Systems Ltd > 4 Kelmarna Ave, Herne Bay, Auckland 1011, New Zealand > Phone: + 64 9 360 5310 Mobile: + 64 21 400 486 > Email: k...@walstan.com > ___ > U2-Users mailing list > U2-Users@listserver.u2ug.org > http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
I could see a 4gl writing out this kind of code, or a menu system. When you use indirect calling, the name of the subroutine can contain odd characters that wouldn't normally be allowed--though on some platforms you can also quote the call, e.g.: CALL "my-sub**"(parms) On Dec 3, 2012, at 7:38 PM, Wjhonson wrote: > I've not encountered this is my career previously, but now I'm seeing a > system written almost entirely with the use of indirect calls in Universe > BASIC. > > That is > SOURCE = "*SOME.PROGRAM" > ... > CALL @SOURCE(INPUTS) > > Is there some advantage to the use of indirect calls that a system would be > written entirely in this fashion? > > > ___ > U2-Users mailing list > U2-Users@listserver.u2ug.org > http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
I would hate to see that in our software, as it would be so hard to find where a subroutine is used. On the odd occasion we use this form (eg call depends on transaction type), we do the definition just above, so it can be found. In my experience, the number of parameters is more likely to change that the subroutine name. On 4 December 2012 13:38, Wjhonson wrote: > I've not encountered this is my career previously, but now I'm seeing a > system written almost entirely with the use of indirect calls in Universe > BASIC. > > That is > SOURCE = "*SOME.PROGRAM" > ... > CALL @SOURCE(INPUTS) > > Is there some advantage to the use of indirect calls that a system would > be written entirely in this fashion? > > > ___ > U2-Users mailing list > U2-Users@listserver.u2ug.org > http://listserver.u2ug.org/mailman/listinfo/u2-users > -- Kate Stanton Walstan Systems Ltd 4 Kelmarna Ave, Herne Bay, Auckland 1011, New Zealand Phone: + 64 9 360 5310 Mobile: + 64 21 400 486 Email: k...@walstan.com ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
I've used it to dynamically create the subroutine name to call, based on criteria, also you pass a name from one program to another, then call that subroutine from that program. George George Gallen Senior Programmer/Analyst Accounting/Data Division ggal...@wyanokegroup.com ph:856.848.9005 Ext 220 The Wyanoke Group http://www.wyanokegroup.com From: u2-users-boun...@listserver.u2ug.org [u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson [wjhon...@aol.com] Sent: Monday, December 03, 2012 7:38 PM To: u2-users@listserver.u2ug.org Subject: [U2] Advantage of indirect call in BASIC I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
On 12/3/2012 7:38 PM, Wjhonson wrote: > I've not encountered this is my career previously, but now I'm seeing a > system written almost entirely with the use of indirect calls in Universe > BASIC. > > That is > SOURCE = "*SOME.PROGRAM" > ... > CALL @SOURCE(INPUTS) > > Is there some advantage to the use of indirect calls that a system would be > written entirely in this fashion? In Prime Information, the reference would be resolved the first time that the routine was called, and it would be cached. Thereafter, calls to the routine would be faster. The other reason would be to allow varying programs to be assigned to the @var reference. -- Allen Egerton; aeger...@pobox.com ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
I've worked on a system that uses this approach. A bunch of variables are defined in the startup program called by the LOGIN paragraph, and stored in named common. The idea behind it was to centralize in the event that the called program ever needed to be changed. Larry Hiscock Western Computer Services > Maybe some plan to change SOUREC at some key point w/o having to change it > in multiple places? > > Looks like an idea that wasn't fully thought out, but that is just my 2 > cents worth. Maybe someone has some pearls of wisdom on this. > > > JRI > > -Original Message- > From: u2-users-boun...@listserver.u2ug.org > [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson > Sent: Monday, December 03, 2012 7:39 PM > To: u2-users@listserver.u2ug.org > Subject: [U2] Advantage of indirect call in BASIC > > I've not encountered this is my career previously, but now I'm seeing a > system written almost entirely with the use of indirect calls in Universe > BASIC. > > That is > SOURCE = "*SOME.PROGRAM" > ... > CALL @SOURCE(INPUTS) > > Is there some advantage to the use of indirect calls that a system would > be written entirely in this fashion? > > > ___ > U2-Users mailing list > U2-Users@listserver.u2ug.org > http://listserver.u2ug.org/mailman/listinfo/u2-users > ___ > U2-Users mailing list > U2-Users@listserver.u2ug.org > http://listserver.u2ug.org/mailman/listinfo/u2-users > ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Advantage of indirect call in BASIC
Maybe some plan to change SOUREC at some key point w/o having to change it in multiple places? Looks like an idea that wasn't fully thought out, but that is just my 2 cents worth. Maybe someone has some pearls of wisdom on this. JRI -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson Sent: Monday, December 03, 2012 7:39 PM To: u2-users@listserver.u2ug.org Subject: [U2] Advantage of indirect call in BASIC I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] Advantage of indirect call in BASIC
I've not encountered this is my career previously, but now I'm seeing a system written almost entirely with the use of indirect calls in Universe BASIC. That is SOURCE = "*SOME.PROGRAM" ... CALL @SOURCE(INPUTS) Is there some advantage to the use of indirect calls that a system would be written entirely in this fashion? ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users