Passing parameters by reference

Bob Sneidar bobs at twft.com
Tue Mar 13 11:37:28 EDT 2012


That is what passing an element to an array amounts to was my point. 

Bob


On Mar 12, 2012, at 5:39 PM, Pete wrote:

> I'm not sure whose post you're responding to Bob.  Where do you see
> something that amounts to a statement being passed as a referenced
> parameter?
> Pete
> 
> On Mon, Mar 12, 2012 at 3:04 PM, Bob Sneidar <bobs at twft.com> wrote:
> 
>> Just weighing in here, that would be a bit confusing. Passing by reference
>> means that the command or function has access to the variable passed to it.
>> By passing what amounts to a statement, there is nothing for LC to
>> manipulate on the other end. Statements have to have some place to put the
>> results. In this case, there is no place for LC to put the statement when
>> passed by reference.
>> 
>> Even a reference to an element of an array is a statement of sorts. That
>> the command is in essence the characters for key delimiters [] doesn't
>> change that. The array that is an element in a multidimensional array is
>> not itself a container. The array is the container. To work with it you
>> have to put it into it's own container then pass the new array by reference.
>> 
>> I hope that makes sense. At least it does to me. :-)
>> 
>> Bob
>> 
>> 
>> On Mar 10, 2012, at 11:53 AM, Dar Scott wrote:
>> 
>>> Thanks for the tip, Dick, on using the list of keys.  One can think of
>> arrays as nested or multidimensional.
>>> 
>>> On Mar 10, 2012, at 1:06 AM, Dick Kriesel wrote:
>>>> I agree it'd be good if LC could accept any array reference for
>> invoking a handler that specifies pass-by-reference.
>>> 
>>> Though is is probably more work, one might also consider chunks in
>> pass-by-reference.
>>> 
>>> Maybe any thing the subtract command can take.
>>> 
>>> However, this might be a problem:
>>> 
>>> doSomethingToTheseTwo char 1 to 2 of it, char 2 to 3 of it
>>> 
>>> command doSomethingToTheseTwo @a, @b
>>>      put "butter" into a
>>>      put "cheese" into b
>>>      put empty into a
>>> end doSomethingToTheseTwo
>>> 
>>> That might also have a problem with this call:
>>> 
>>> doSomethingToTheseTwo x, x["t"]
>>> 
>>> I immagine LiveCode folks can come up with a semantics that makes sense
>> for weird cases.
>>> 
>>> The subtract command does not have the the problem because it modifies
>> only one thing.
>>> 
>>> Dar
>>> 
>>> 
>>> _______________________________________________
>>> use-livecode mailing list
>>> use-livecode at lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your
>> subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
>> 
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your
>> subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
>> 
> 
> 
> -- 
> Pete
> Molly's Revenge <http://www.mollysrevenge.com>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode





More information about the use-livecode mailing list