Version 42 of Metakit2

Updated 2004-10-11 16:27:43

http://www.equi4.com/images/metakit.gif

Metakit has its own (closed, read-only) Wiki [L1 ] and home page [L2 ]. Metakit is the persistence engine for Wikit, of course.

  • Mark Roseman has written a tutorial [L3 ] on Metakit for Tcl developers.
  • Mark Roseman tutorial [L4 ] in HTML.
  • detailed metakit documentation [L5 ].
  • OOMK is the preferred oo metakit interface, written in Snit, giving many more facilities than vanilla mk4tcl.
  • desultory (unofficial) documentation on an unsupported OO-like view interface called mk4too

The Metakit File Format.

The Tcl binding to Metakit is named Mk4tcl.

It was claimed here that Mk4tcl is part of the ActiveTcl Batteries included release. This does not appear to be the case as of 8.4.2, 9 May 2003 - Roy Terry. Metakit is included in lib/mk4tcl as of tcl 8.4.4, but without documentation, it seems (Hof).


DGP For what it's worth, here are the points I found most useful in the Roseman intro:

  • Use properties that define as small a unit of information as possible.
  • Creating more views is a good thing. Do that, don't muck up a single view with special cases.
  • Moving data to/from a Tcl array is easy and familiar to Tclers.
  • Emphasis that restructuring of a view layout means you can continue revising your data model as you go. Just start coding; you can change it later.
  • Some discussion when subviews are good vs. additional views.

"... many of the integrity checks required in traditional database use are not required in Metakit, because Metakit offers nested views -- a cleaner way to represent the relationships often enforced by integrity constraints."


"cleaner" is a matter of opinion, ask a relational database theorist. I don't want to start those arguments here, just point out that if you use Metakit for a complex system, you should design first, and be very careful. - EMJ

DKF: "You should design first"? That's actually true of any non-trivial program, you know... ;^) An ounce of thought saves a ton of effort.


MetaKit Viewer

See also dgmkviewer, a metakit viewer/editor in Tcl


[ Category Database

Category Package ]