Is it possible to have a custom function defined in newLisp that accepts a variable number of arguments?
For example, could I have the "doThis" function accept an integer named "number1" and a string named "text" or just two integers, "number1" and "number2"? How would I do this? Can you do it by just specifying all parameters in the define statement for the function, and then if the values are not used they are passed as nil?
Thanks,
The Sunburned Surveyor
Yes,
... and you can also go the other way around: specifiying more parameters than specified in the function definition. Those then would be shown by the function (args), which will return a list of all parameters passed but not defined.
Lutz
Ps: read the manual for all of this
You are able to, like Lutz said, define a function without arguments. This, I suppose, would be usefull if you were dynamically creating functions where the number of arguments could be any amount. By using (args), you could get everything.
newLISP v.8.6.0 on OSX, execute 'newlisp -h' for more info.
> (define (myfunc) (println (args)))
(lambda () (println (args)))
> (myfunc "one" "two" "three")
("one" "two" "three")
("one" "two" "three")
>