Previous: Recursion, Up: Macro features


7.2.1.3 Protecting macros against redefinition

Normally an Fweb macro can be redefined at will. The example

     @m PI 3.14159
     @m PI (-3)

is permissible, but probably not a good idea. If you want to ensure that a crucial macro definition is never redefined inadvertently, say ‘@m!’, as in

     @m! PI 3.14159

That is called protecting the macro.

Fweb's built-in functions and macros (beginning with ‘$’) are protected by default; see Protection. To override that protection, use the command-line options ‘-Tb’ (-Tb; for built-in functions) or ‘-Tm’ (-Tm; for macros).