modern Tcl and correct quoting

Jordan K. Hubbard jkh at
Sun Jun 23 17:12:40 PDT 2013

On Jun 12, 2013, at 9:39 PM, Poor Yorick <org.macosforge.lists.macports-dev at> wrote:

> I've mastered some of the deepest darkest corners of bash syntax (got some
> creds in ABS), and it's one of my ongoing regrets.  If only I could get those
> years back and put them into Tcl instead!  Bash never became fun, but coding in
> Tcl only gets more satisfying.

I don't say much on this list, but I just wanted to jump up and applaud when I read that. :-)

I've gotten a lot of ribbing from other Apple engineers over the years for my unstinting support of Tcl, it being widely assumed that Landon chose it for MacPorts almost entirely at my instigation since I was the boss, but this is untrue - we actually tried everything from XML to Javascript in some of the early prototypes.  There's just something about Tcl's fundamental simplicity in syntax and easy hybridization with C code that makes it still as relevant today as it was 20 years ago, and that's why we chose it for MacPorts.

I'll admit that Tcl is not as fundamentally object-oriented as Ruby, and it took awhile for the Tcl community to really sort that out even after [incr tcl] became stable, which is a shame, but the TclOO bits in 8.6 are pretty good so I think that's in the past.  I would encourage the project to adopt all the new features of 8.6 in a major cleanup of the MacPorts framework someday, and for the older OS X releases there's always the option of distributing a stand-alone installer which also bootstraps a newer Tcl environment into place.

MacPorts has always installed its own bits, even when there are "parallel" system bits available, and for really good reasons which are already spelled out in the FAQ.  Why not do so for Tcl itself?   Even the folks who build from source could be catered to with a little makefile shim which checked the system version of tcl and boostrapped a new Tcl into place before doing anything else.

- Jordan

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the macports-dev mailing list