DEFINE procname text

Defines a procedure with name procname and definition text. If there is already a procedure with the same name, the new definition replaces the old one. The text input must be a list whose members are lists. The first member is a list of inputs; it looks like a TO line without the word TO, without the procedure name, and without the colons before input names. In other words, the members of this first sublist are words for the names of required inputs and lists for the names of optional or rest inputs. The remaining sublists of the text input make up the body of the procedure, with one sublist for each instruction line of the body. (There is no END line in the text input.)

It is an error to redefine a primitive procedure unless the variable REDEFP has the value TRUE.

DEFINE "abc [[a b] [PRINT :a] [PRINT :b]]
abc "Hello "Bye
Bye Logo