> On 12 Jun 2023, at 11:12, Hans Hagen via ntg-context <ntg-context@ntg.nl> 
> wrote:
> 
> On 6/12/2023 10:57 AM, Hans van der Meer via ntg-context wrote:
>> The manual LMTX-primitives on page 21 tells me:
>>      You can explicitly freeze an unfrozen macro.
>>      ...
>>      A redefinition will now give: You can't redefine a frozen macro.
>> But is this true? The following code seems to contradict this:
>> \def\HOME{myhome}
>> \writestatus{1}{\meaning\HOME}
>> \letfrozen\HOME
>> \writestatus{2}{\meaning\HOME}
>> \def\HOME{other home}
>> \writestatus{3}{\meaning\HOME}
>> 
>> Is this mechanism broken? It looks so useful to prevent accidental 
>> redefinition!
> 
> here i run with
> 
> \enabledirectives[overloadmode=error]
> 
> (you can do that in cont-sys.mkxl)
> 
> \enabledirectives[overloadmode=warning]
> Hans
> 

Pity. Now I get on loading the tex file:
"csname overload > fatal error, protection level 4, control sequence 'nbsp', 
properties 'immutable', file 't-hvdm-text.tex', line 63

while I had hoped that frozen would give me something like:
illegal attempt to redefine \HOME

Byproduct (not unwanted) the above illegal redefinition to be solved :-)

May I ask why obviously the frozen-mechanism seems (yet?) unimplemented?

dr. Hans van der Meer

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

maillist : ntg-context@ntg.nl / https://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : https://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : https://contextgarden.net
___________________________________________________________________________________

Reply via email to