This is great. A .NET zipscript. I've been sort of curious about the performance of C# for events. Obviously TCL is not fast, but it has the benefit of an already running interpreter which means that for trivial things it's fast enough, but on something more complex like the archiver it's quite slow (though speed isn't really necessary there).
I haven't spent much time on ioFTPD lately, let alone got to playing with a new C# library, but I did want to point out that I think I've thought up a way to expand on the module idea and allow for user-defined modules to be called the same way TCL/EXEC would be called now. This would enable a relatively simple shim dll who could kick the args to a persistent event-driven application which would eliminate the overhead involved in things like C# which have a prohibitive startup cost. I've wanted something like this way back before I even released v6.0 because I thought the regular EXEC overhead was too high for trivial things but abandoned the idea when things were good enough and TCL scripts were the most common.
The only reason I mention this now is because if you find C# too slow for some things there is a way around that.
|