<URL: https://rt.cpan.org/Ticket/Display.html?id=125472 >
Hi,
I am trying to understand the content of the code disposal patches. So far I
cannot fully make it out but I think it would be more efficient than the
previous one. There are something I'd like to discuss:
1) The new version put document of originally internal function
create_tcl_sub() as a new API. IMHO programmers should always use the form
"$interp->call(...,WRITABLE=>$sub)" if they want code disposal to be handled
automatically; otherwise, they could just apply original API CreateCommnd() -
DeleteCommand() pair to handle code creation and disposal manually. Providing
another create_tcl_sub() - _code_dispose() pair looks duplicating and
confusing. Besides, user may find it difficult to provide DESCRNAME arg value.
2) The newest POD in github HEAD mentioned
$interp->call('fileevent','sock9827430','writable');
won't dispose the sub created from
$interp->call('fileevent','sock9827430', 'writable'=>sub{...});
is it still true? Or only 'set' command behaves in this way?
3) The POD mentioned two functions _code_destroy() and destroy_ref() which
cannot be found in Tcl.pm. I guess you mean _code_dispose() and delete_ref().
IMO we just need to have delete_ref() in POD. Disclosing both of them might be
confusing too.
Thanks,
SJ