From: Donald G P. <dg...@ni...> - 2008-04-30 14:58:42
|
[ Some of you have already seen this; posting to TCLCORE now for broader comments. ] Based on comments seen in the chat, email, and other Tcl development circles, I've seen folks express interest in tackling a number of issues related to the way Tcl and its packages get installed from the base source distribution. It seems to me the issues are interrelated, and there may be dependencies that force a particular order in addressing them. It also seems to me that the changes could be fairly disruptive, or at least require significant testing to keep their disruption under control, so it's better to get things moving in earlier alpha releases of Tcl 8.6 as opposed to dumping it all into 8.6b1. A sketch of the issues follow. These are vague descriptions. The precise specs and number and order of TIPs to achieve the whole are what I hope will arise out of this discussion. * Revising Tcl's install conventions so that multiple minor releases of Tcl really can coexist on a system ("the tcl.h / tclConfig.sh overwrite problem") * Revising Tcl's expectations to find packages under something like /usr/lib to look (first? instead?) under something like /usr/lib/tcl . ("the slow startup problem") * Solving the problem that on some platforms the location to install arch-independent packages and arch-dependent packages is the same, so that then other architectures working from the same filesystem either can't get to the arch-independent stuff, or incorrectly get arch-dependent stuff for an incompatible arch. ("The lib64 problem" or perhaps "the /usr/share problem") * Offering a configuration option (default?) where the parts of Tcl that currently must be found at runtime -- init.tcl, encodings, message catalogs -- get embedded in libtcl itself as an internal VFS. ("The basekit configuration") * Bundling with the Tcl source distribution a larger collection of extension source code distributions. ("batteries included") * Completing the TEA-taming of Tk so that it might even be one of those extensions in a "batteries included" Tcl source distro. I'm sorry that at this time I'm not offering a grand road map to get all this done. It just seems to me that if all these balls are really in the air for Tcl 8.6, we need to start catching them, and if it matters which we catch first, we need to figure that out. Also we need to figure out if there are other balls in the same interrelated set that I haven't listed yet. Conversely, if it's clear when looking at the complete list that we just won't be able to get all these done while still getting 8.6 done by October, then it's good to figure out now what portions, if any, are within our reach and/or still worth doing in the absence of the rest. Several of these matters already have partial solutions implemented by some of the re-distributors of Tcl, and I think we should steal their solutions as much as it makes sense to do so. -- | Don Porter Mathematical and Computational Sciences Division | | don...@ni... Information Technology Laboratory | | http://math.nist.gov/~DPorter/ NIST | |______________________________________________________________________| |