I started this project many years ago, and later abandoned it. Fortunately the project found another gentle and capable father that developed it for years and put it into a useful niche: embedded systems. However Jim Tcl is still, for me, a milestone of my programming life. It was the first time that, inspired by the Tcl internals, I started to realize how to write clean C code using better abstractions. It's awesome to see the project still alive, thank you Steve.
> Jim is supported. If you need commercial software, contact the original author at 'antirez@gmail.com' or the current maintainer at 'steveb@workware.net.au'.
Because I thought it was not a good idea to script Redis using an opinionated language as Tcl. Lua is a lot more "algol like", more understandable to the casual script writer.
EDIT: However there is an even more important thing that resembles Tcl in Redis: the commands you send to the server to alter the data set are very similar to Tcl commands.
Did sandboxing factor into the equation? My understanding is lua scripts in redis aren't sandboxed, other than the (possibly?) restricted api. But one could limit heap with a custom allocator for example, and cpu cycles with a hook, if desired.
I find it somewhat amusing (but understandable) that you thought Tcl was too complicated for "script programmers", but fine as the standard interface to get anything done with (raw) redis ;)
It's a shame, Redis could've become the storage back-end for the next AOL server! ;)
Well, I suppose it probably is used with aolserver anyway.
Yep it was the original JO code base, but I think that when I read it (it was already Tcl 8) a lot of other people had rewritten major parts, but the standard and quality were set I guess, and also the core team was composed of people that knew how to write code. About the new book: ordered it via Amazon, but Amazon Italy for some time now for small things use the local postal service, that always fails, so it returned back... to Amazon. I'll have to purchase it again.
I remember packaging and developing for the Tcl interpreter within Tivo boxes and set top boxes a while ago. The footprint was small back then, 10k is amazing. Great work.
I heard many times about tcl or tcl/tk. Never paid attention until today. I really liked the language but looks like kind of dead to me. Last tclkit version is 8 years old. I tried to compile a tcl/tk application to an executable file and most of the websites explaining the process pointed to broken links (other docs, executables, etc).
It's still used in applications that just work and boringly continue to do so. Like the SQLite test suite or MacPorts or Expect. Eurocontrol also uses it for air traffic control.
Tcl/Tk doesn't have the cachet that newer programming languages do, but it certainly still works and is a pretty neat language, and now would be a great time to have a Tcl renaissance.
25 comments
[ 9.1 ms ] story [ 45.2 ms ] threadDo you get many support emails, still?
EDIT: However there is an even more important thing that resembles Tcl in Redis: the commands you send to the server to alter the data set are very similar to Tcl commands.
if you are technical enough to write scripts for redis, you are not casual
But I wouldn't have written with such a dismissive tone to a living software god :-)
Anyway, Lua was a fine choice!
Safe Interpreters[0] and resource constraints[1] come to mind.
[0] https://wiki.tcl.tk/4204
[1] https://www.tcl.tk/man/tcl/TclCmd/interp.htm#M47
It's a shame, Redis could've become the storage back-end for the next AOL server! ;)
Well, I suppose it probably is used with aolserver anyway.
For those confused by this comment, see:
http://philip.greenspun.com/panda/
And/or:
https://openacs.org/
NaviServer appears to be the "new" aolserver:
http://wiki.tcl.tk/2090
While aolserver still exists, I'm maintainence mode: http://aolserver.github.io/
[1] https://www.amazon.com/Philosophy-Software-Design-John-Ouste...
If so, they should have named it George Tcl. Jim is known for another whiskey.
Is tcl/tk still alive?
https://wiki.tcl.tk/37389
https://git-scm.com/docs/git-gui and http://repo.or.cz/git-gui.git/tree/gitgui-0.21.0:/lib
https://git-scm.com/docs/gitk