[Coco] Sharing a value with the calling routine in Basic09

coco at jechar.ca coco at jechar.ca
Mon Aug 17 12:06:07 EDT 2020


Yes

On 2020-08-15 22:27, Jeff Teunissen wrote:
> It sounds like you're trying to call something in _another process_
> and get the value back out. Is that right?
> 
> On Sat, Aug 15, 2020 at 4:19 PM <coco at jechar.ca> wrote:
>> 
>> I don't think what you are saying is correct because
>> say my programs were called x and y
>> 
>> in x I set p=SOME-VALUE
>> then I print p and get
>> SOME-VALUE
>> then I call y passing p to y
>> then I  set p=some-OTHER-value
>> then I print p and get
>> some-OTHER-value
>> but when back in the calling program x
>> when I print p and get
>> SOME-VALUE
>> so basic09 did not remember what module y did.
>> 
>> 
>> 
>> On 2020-08-15 15:49, Wayne Campbell wrote:
>> > Pass by reference is the default. This means that just passing the
>> > variable
>> > name is enough. If you update that variable and the procedure you
>> > called
>> > the variable in the procedure that called it will reflect that change.
>> > To
>> > pass by value, you use the variable name plus zero in the parameter
>> > list.
>> >
>> > Example:
>> >
>> > RUN myProc(myVar+0)
>> >
>> > Passes myVar by it's value.
>> >
>> > RUN myProc(myVar)
>> >
>> > Passes myVar by reference.
>> >
>> >
>> > On Sat, Aug 15, 2020, 11:21 AM <coco at jechar.ca> wrote:
>> >
>> >>
>> >> On 2020-08-15 14:17, coco at jechar.ca wrote:
>> >> > Would like to know if there is a standard way to pass back the
>> >> > value from a called routine to the caller. Cannot use GOSUB the
>> >> > routines need to be separate modules although a merged module file
>> >> > could be created by OS9 afterwards to make sure that if one module
>> >> > is loaded the other is too.
>> >> >
>> >> > I have an Idea involving ADDR PEEK and POKE of course if I am wrong
>> >> > this could go very wrong.
>> >> >
>> >> > Charlie
>> >>
>> >> PS: I think what I am trying to do is called pass by reference
>> >> in C++
>> >>
>> >> --
>> >> Coco mailing list
>> >> Coco at maltedmedia.com
>> >> https://pairlist5.pair.net/mailman/listinfo/coco
>> >>
>> 
>> --
>> Coco mailing list
>> Coco at maltedmedia.com
>> https://pairlist5.pair.net/mailman/listinfo/coco


More information about the Coco mailing list