Updated 2015-12-04 14:46:05 by APN

Igloo is a project to build a Snit-like layer on top of TclOO. The goal is to provide all of Snit's convenience in the context of TclOO, rather than to provide a drop-in TclOO-based replacement for Snit. In particular, while I intend the syntax (e.g., for delegation) to be similar to that of Snit, I do not intend to slavishly follow Snit syntax. Rather, what I'm looking for is a TclOO-based package that is so pleasant to use that I'll gladly leave Snit behind.


The current version of Igloo can be found at GitHub. Feedback is welcome.


Nothing about Igloo (including the name) is graven in stone at this time.


Some years ago I began a similar effort that never really got off the ground. Since then I've spent a considerable amount of time using TclOO alongside of Snit, and have a better notion of what's desirable and what's doable. The remaining text in this section is from my initial "iGloo" efforts.

iGloo is a project investigate the implications of building Snit's Not Incr Tcl on top of TIP #257: Object Orientation for Tcl. At present it's less a software product than a series of blog posts [1] about the issues I run into and how I solve them. I may make bits of code available as well; if so, they'll be found at [2]. Note, though, that any code I make public is subject to change without notice. -- WHD

Here are the blog posts in sequence:

A note on the name: A couple of years ago, when Snit was beginning to catch on, there was a time when I seriously thought about changing its name. "iGloo" is my favorite of the names I came up; you can pronounce it "ig-loo" or, alternatively, "I Glue". I pronounce it the first way, but I mean the second. -- WHD

Status: 02/03/2010 [3]

"The "iGloo" project is pretty much defunct. At this point, TclOO lacks two things that Snit needs: hierarchical methods (methods with subcommands, like the text widget's tag command), and direct support for configure/cget options. Of the two, hierarchical methods are the more critical...but Donal's been working on that"...

"Ultimately, I expect that TclOO will mature to the point that Snit is unnecessary, or Snit 3 will be built on TclOO. Unfortunately, as I said in another post, I really need support for hierarchical methods, and it's not there in TclOO yet"...

quoted from WHD (Oct 23 2009)

APN 2015-12-04 Based on the github link above, I believe Igloo is no longer defunct but being actively pursued.


RLH I am glad you stuck with Snit! ; )

WHD Would just plain "Gloo" (punning on both "Glue" and "OO") be better?

RLH It doesn't screem at me like iGloo does. Snit is better though.