From: Donal K. F. <don...@ma...> - 2008-07-14 09:45:00
|
Miguel Sofer wrote: > TIP #322: PUBLISH THE NRE API [...] > NRE (for Non-Recursive Engine) is a trampoline implementation for > command evaluation and bytecode execution that massively reduce Tcl's > footprint on the C stack. It is conceptually related to stackless > python. > > NRE is fully backwards compatible with script and C extensions and has > already been committed to HEAD. Extensions that use the normal Tcl API > run properly but cannot take advantage of the non-recursivity. > > This TIP proposes to publish a small API for extension writers that > will allow them to exploit the new possibilities. a) Great stuff! b) The type TclNR_PostProc and any associated types needs to be documented. For example, the use of four ClientData arguments in TclNR_AddCallback is unusual, especially when (I know through looking at the source that) the callback type passes a pointer to an array of ClientData variables... c) Should the API functions and types be Tcl_NR* and not TclNR_*? Donal. |