Hi, One thing that is missing from the OCaml top level loop is line editing features. I used to use a wrapper program called "ledit" that added readline support, but I never seem to have it installed on my machine when I need it, and moreover, I have started to get used to the more flexible line editing of zsh. After some poking around, I found that it's fairly straightforward to wrap any REPL with a zsh script and get zsh line editing capabilities, which includes multi-line support (e.g., so you can fix a typo you made three lines back). I'm attaching the script I hacked together, in case it is useful to anyone else. It works great for me, but it was not written to be generic and robust, so YMMV. You must use ctrl-D to exit cleanly -- I didn't bother adding support for "#quit". I'm sure someone could make many improvements to it if they had more patience for zsh scripting than I do. - Aaron