Am 19.04.10 19:08, schrieb Vyatcheslav Yatskovsky:
Concerning \define... The answer is too witty for me, so I will leave the wiki page untouched.

What's the problem with my answer, i described differences between \def and \define
and the most important one is point one, i'll show it to you in two examples

1. \def

\starttext
\def\hans{hans}
\def\hans{taco}
\hans
\stoptext

the output of this example is 'taco' because the second \def statement overides the first

2. \define

\starttext
\define\hans{hans}
\define\hans{taco}
\stoptext

the output now is 'hans' because \define checks whether a command with the name \hans is already defined, if this isn't true \hans is created with the content 'hans' while in the second \define \hans is already available and nothing happens but you get
a warning on the terminal

system          : command \hans is already defined


to summary this you can say \def is for developers and \define for users but this won't work in all cases because \define can't create commands with optional arguments :(

Wolfgang

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to