Hi, On Mon, 24 May 2021 15:52:30 +0300 Aydar Zarifullin <aydar...@gmail.com> wrote:
> Hello all, I wrote a very basic binding to libexpect, I haven't tested > it thoroughly but in simple cases, it works as it should I hope it > will be useful to someone. > > Repository > https://github.com/iZarif/ckn-expect > Documentation > https://wiki.call-cc.org/eggref/5/expect Thanks for your contribution. I skimmed through the code and documentation and made some notes: - The documentation is missing a link to the source repository. - It would be nice if the documentation mentioned the required dependencies (tcl and sh). For what is worth, I could install the egg on Debian by installing the tcl-dev and tcl-expect-dev packages and setting `CSC_OPTIONS="-I/usr/include/tcl"' - Commands given to `call-with-process-io' go through the shell. I think the documentation should mention that, as it might be a security issue if callers don't properly quote the given arguments. - `tcl-create-interp' gets executed at module import time. Not sure if this is a good practice. - In `call-with-process-io', files are not closed if `proc' raises an error. Either the implementation should handle that or the documentation should mention that behavior. - Would the body of `(unless interp ...)' in `tcl-create-interp` [0] ever be executed? [0] https://github.com/iZarif/ckn-expect/blob/4ad76ea807131232d7acb3a7e9075b3014d639c8/expect.scm#L41 All the best. Mario -- http://parenteses.org/mario