\input texinfo.tex
@setfilename nx-tcl.info
@settitle Notes on NX-Tcl

@copying
Copyright (C) 2018 -- Matthew R. Wette.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.  A
copy of the license is included with the distribution as @file{COPYING.DOC}.
@end copying

@headings off
@everyfooting @| @thispage @|

@node Top
@top Notes on NX-Tcl
@format
Matt Wette
September 2018
@end format

@heading Notes

You can't redefine commands that would usually not be redefined.
That includes @code{proc}, @code{while}, @code{if}, etc.

In Tcl all values are strings.  However, some functions may return 
numbers or lists, so Tcl eventually wants those as strings.  Tcl
is lazy with respect to converting to string.  In some cases this
makes code more effecient and robust.

@subsubheading Dynamic Stack
Keep a dynamic ``stack'' variable, add a commands to save proc-local
variable in the environment. and push a frame as each proc is called.
We need one call to save to d-stack and another to ref from the
d-stack.  This would be added as a fluid to the top-level env.
@example
downvar local-name
upvar [level] stack-name local-name
@end example
Error message: ``no such upvar''@*
I think we should ignore the level.

@bye
@c --- last line ---
