Tables and arrays (and classes/instances) are always references.
(Though strings are internally references too, they _resolve_ any changes so referencing is ineffective at the surface)
Hence, use tables or arrays for indirection:
Code:
function foo(param1,param2)
{
param[0]="Hello world" ;
param2.test<-"Hello world" ;
}
local text=["Hello"] ;
local text2={ test="Hello" ; }
print (text) ; //prints "Hello"
print (text2) ; //prints "Hello"
foo(text,text2) ;
print(text[0]) ; //prints "Hello world"
prin (text2.test) ; //prints "Hello world"