Ahankhah Posted April 24, 2011 Share Posted April 24, 2011 Hello everyone, does anyone knows a way to define a function in AutoLISP with arbitrary arguments, same as ARX? Quote Link to comment Share on other sites More sharing options...
Lee Mac Posted April 24, 2011 Share Posted April 24, 2011 Do you mean 'optional' arguments? For LISP, the answer is no, the number of arguments in the function definition must be supplied when calling the function - such arguments may be nil however: (defun example ( arg1 arg2 arg3 ) (print arg1) (print arg2) (print arg3) (princ) ) (example "ABC" 123 nil) Quote Link to comment Share on other sites More sharing options...
Ahankhah Posted April 24, 2011 Author Share Posted April 24, 2011 Thanks Lee once again:). Quote Link to comment Share on other sites More sharing options...
Ahankhah Posted April 24, 2011 Author Share Posted April 24, 2011 Do you mean 'optional' arguments? Thank you Lee for correcting my writing. I learn from you more than programming:D. Quote Link to comment Share on other sites More sharing options...
JohnM Posted April 24, 2011 Share Posted April 24, 2011 You can pass an unknown number of arguments in a list then have the function parse the list; (defun example (aug1) (foreach item aug1 (print item) );_foreach (princ) );_defun ;;;Calling the function (example ‘( “Hello” “Aloha” “Hola” “Ciao” “Guten Tag[color=black][font=Arial]”[/font][/color])) Quote Link to comment Share on other sites More sharing options...
Ahankhah Posted April 24, 2011 Author Share Posted April 24, 2011 JohnM, what you posted is fine to conquer the limitation of AutoLISP. Thank you very much. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.