Tcl ICE Library , AKA TIL, by Emmanuel Frecon, is a set of Tcl-only libraries and utilities of general nature. It facilitates development, deployment and surveillance of Tcl distributed apps, suppresses discrepancies between Unix and windows with regards to administration and deployment, and demonstrates network-aware simple component design.


You may have been thinking of Threaded Interpretive Languages, meaning Forth and its relatives, which have nothing to do with this library.


current version
old license


The code has now been moved (once again) to github . The code gets some updates from time to time, so it is highly recommended to head to the latest location. (The library was previously hosted as part of a bigger project on Google Code , but has moved as Google Code is closing down)


EF 2016-04-06: As stated above, new location. Now again as a separate library to avoid confusion.

EF 2012-07-03: Note that the TIL has a new home. I have migrated all the code to be part of a bigger project on Google code . You can check out the code using the following command. The command will give bring up the latest version, which contains a number of bug fixes and additions, specially within the web server.

Discussion: Inclusion in Tcllib

schlenk: Some parts of it look really useful.

AK: And would have looked very good in Tcllib. But no submissions were made.

SEH: Perhaps the TCT ought to consider a policy of inviting submissions rather than just waiting for a possibly clueless developer to figure out that the option to contribute to Tcllib is available and then how to do it.

Lars H: ??? As far as I know the TCT has no connection with Tcllib (except possibly that some people are involved in both), so there is no reason to ask the TCT for policies regarding Tcllib.

LV: Agreed - the policy should be just do it - if you have routines that are likely to be of use to tcl programmers, and the code is pure-tcl (though it can make optional use of critcl and other extensions), then pop over to sf.net and submit a feature request. And if there's something you'd like to see, email the author and ask them to submit it.

And if there's something in the feature request queue that you really want, consider posting a note to the tcllib mailing list. It might be that someone has just not noticed the author's submission.

LV: This would not be the first time someone with a related library contributed it to Tcllib. However, are the licenses compatible?

GWLESTER 2013-03-05: The project home page now states that it is under the New BSD license -- so it should be 100% compatible with TclLib.

AK: TIL uses Academic Free License v2.1. And I have no idea if that is compatible with BSD or not. Or even if it is recognized as a proper OSS license.

schlenk: As far as i have read the license I'm not sure what it really means, its BSD with an advertising clause, but there is one clause in the license which looks GPL'ish..., but only for original work not for derived works..., kind of strange, but as always INAL. Good reading about it here: http://www.oreilly.com/catalog/osfreesoft/book/ch02.pdf

Lars H: Licensing HOWTO , by Eric Steven Raymond, describes AFL as the modern (2002) equivalent of BSD (in terms of aims, not necessarily in terms of legal interpretation). Since the guy who wrote it is president of the OSI, it at least seems safe to conclude that it is an opensource license. The book linked to by schlenk above does however point out some odd passages in the AFL... Perhaps it is necessary to start comparing versions of that license.

SEH: This combined with The Simple Development Library may add up to one of the most sophisticated development toolsets currently available for scripting/coding anywhere. If only they could get some more visibility, it might be a great boost for Tcl.

LV: Best way to get visibility is for the libraries to get used in some awesome applications that demonstrate how useful the libraries are.

SEH: Regrettably most Tcl developers know that there's not much relation between the awesomeness of a tool and its visibility, since Tcl itself is an awesome tool, and it's severely under-visible in the software world.

escargo: There's a diagram Ruby on Rails and J2EE: Is there room for both? , Aaron Rustad, a comparison of Ruby on Rails and J2EE. It made me wonder what might be comparable in the Tcl world. According to Java/Smalltalk Web Framework Comparison , by Bill Clementson, When it comes to web applications frameworks you have some extreme differences in size between different frameworks. Some of that is due to how easy introspection is for some languages compared to others. I would like to know how Tcl would stand up compared to these others. It's too bad that the Wafer project disappeared, except for what's in the Wayback Machine and on Wayback Machine%|%Sourceforge .

EF (TIL developer): I thought that I ought to write a little bit more both on the "non-inclusion" in the tcllib and on the license issue. The reason for a separate package is mostly internal politics (see the FAQ ). When it comes to licensing, I picked the AFL because I thought that it was the modern successor of the BSD license.

EF I have made a new release of the TIL available, there are not many changes. However, it is now covered by the new BSD license, which is more in line with the remaining of the community.