4 ms·
Wow, a blast from the past. I still have some expect tools I wrote long ago that I use and maintain to this day. Not so much new stuff since scripting languag
by danielweber 12y ago
Wow, a blast from the past. I still have some expect tools I wrote long ago that I use and maintain to this day. Not so much new stuff since scripting languages have gotten better at doing what expect does -- often calling their modules "expect" and using the exact same syntax.
I once wrote a webserver in Expect. No, it's not a good language for writing a webserver.
- davidw 12y agoTcl is a perfectly fine language for writing web servers with, actually. It was possible to do a nice, lightweight, evented web server years before Node.js showed up. AOLserver is also done with Tcl, and for a while in the 90ies, was one of the best systems for doing dynamic web sites.
- mcguire 12y agoMy understanding was that AOLserver was the NCSA (pre-Apache httpd) server, with TCL as an extension language, not that AOLserver was written in TCL. Weird.
- davidw 12y agoYes, it's a mixture of the two, which makes eminent sense if you consider the speed of computers 20 years ago. It's Tcl, by the way, not TCL.
- VBprogrammer 12y agoHaving spent time working on a million line Tcl codebase (for my sins) I can assure you that it is possible, but not in the least bit pleasant!
- davidw 12y agoThat I can see. But I can also see a lot of today's hip things, like Node.js, not being terribly fun either at that kind of size.
- mcguire 12y agoHey, if it was "Tool Command Language" when I first learned it, it's "TCL" now. :-) Then there was that weird period when all the other language's gui toolkits were based on Tk.
- tptacek 12y agoPairing with C is the whole point of Tcl; in its heyday, Tcl was known for having one of the easiest extension APIs of all the scripting languages. The idea of using a scripting language to knit C code together was one of Ousterhout's key goals. Also: no other scripting language with the possible exception of JS has evented I/O so fundamentally baked into the core of the language.
- bch 12y agoIIRC, AOLServer is also the inventor of database connection pooling.
- ZoFreX 12y agoAOLServer is mostly C, is it not? When you say it was one of the best systems for doing dynamic websites, would you use it on its own, or was it more popular to use OpenACS on top of it? (Which is what one of the codebases I still work on today does)
- peterwwillis 12y agoTcl shows up in all sorts of places, like Cisco IOS, or haptic feedback robotic surgery interfaces, or IRC bots. It's fast, it's small, it's robust, it's powerful. It's just not sexy.