Scripted Documents Are Obscure

(Note: this was written in July 2002, before the name "starkit" was introduced)

Anyone who doubts that JCW's scripted documents are way cool clearly hasn't been paying attention. Over the last six months or so, scripted documents have become, de facto, the standard way to deliver standalone Tcl/Tk applications. Just browsing about, I even found a copy of my own expand application as a scripted document (is anyone using that version?). Scripted documents allow you package up your Tcl application and all packages it requires into one binary, cross-platform file; and, optionally, create platform-specific executables. And it works well enough that lots of people are doing it.

But there are problems--not with the technology, so as much as with its presentation.

  • The name "scripted document" does very little to convey what scripted documents are all about.
  • The instructions for creating and using scripted documents are scattered hither and thither.

A potential creator of scripted documents really has to dig, not only to find out how to create them, but even just to find out what they are good for.

And let's be clear--what we have here is simply a Tcl version of Java ".jar" files, with the runtime environment optionally bound in. It works. It's way cool. And it's become a standard. It's time to tear down the veil of obscurity.

  • We need a better, more communicative name.
  • We need a concise set of instructions for application authors.

-- WHD

Too bad ".tar" is already taken. ;-) How about ".tap" for "Tcl application package" ? --MDD

Wow, amazing timing... I'm in the process of documenting right now (and they are about to be reborn under a new name). As for "simply jar files": not quite, SD's are r/w with transaction-safe commit/rollback because there's a database engine underneath. That means they can also store config info, update themselves, and store extensive datasets. -jcw

Well, OK. I agree that there's more to it than I've said. But in terms of giving people an immediate understanding of what SD's are all about, I think ".jar file + runtime" is apt. That you can have even more than that with no more work is gravy. -- WHD

How about .dar for Dynamic Archive? (or djar, or dtar, or...)

... or .sar for Scripted (scriptable?) Archive.

Close :o) ... the new name is "Starkit" -jcw

Starkit is the concept (STandAlone Runtime), the extension is ".kit" ... (the association with ar/jar/tar only has mnemonic value for programmers).

Trivia: the name came about over a nice lunch with Steve Landers, Steve Blinkhorn, and jcw, one day in Feb 2002. Steve B said "yes, that would work"... and boy he sure was right!

That sounds good to me -- Vince.

escargo 29 Apr 2003 - Let me chime in with WHD and say that "Starkit" or "starkit" has a problem with the name. "StandAlone Runtime" tells me that the runtime is standalone, not that the application is self-contained. (It sounds more like a statically linked runtime, as opposed to a runtime that dynamically loads its required libraries.) Now, I am not saying the creators do not have a right to name it what they want; but there might be a name (or a file extension or both) that conveys to the less informed audience what such files are good for.

Whoops, someone has been editing this page a bit too energetically - I've restored it to its original intent, i.e. a complaint about scripted document, not "starkit"... -jcw

Lars H notes in passing (4 May 2003) that it was lucky that JCW was lucky in picking STandAlone Runtime, instead of the slightly more obvious StandAlone Runtime, since SARs are getting a lot of bad publicity these days. ;-)

Steve Blinkhorn A bit more trivia. Over that very nice lunch, we did toy with the idea that starkits might actually be *kits, starpacks *packs, and that the archive would be a *chive, but jcw's fondness for the acronym has clearly triumphed.