> What's Knit?

A component language for C.  Announcement attached.

> Why not just distribute binaries for the platforms of interest?

People feel uncomfortable if they can't build from source themselves.
Generating binaries for a decent range of platforms is a bunch of work
(especially given the current mess in the Linux library system).

> Or runhugs scripts?

Using Hugs is attractive because it is really easy to install and very
portable.  It's also too slow to use for compiling large systems or when doing
cross-component inlining.

But even if we stick with Hugs, there's a little ffi'd C code in the system -
so they still have to compile some of the code themselves.

--
Alastair


The University of Utah's Flux Research Group announces the first release
of the "Knit" component composition toolset.  Knit is a new component
definition and linking language which can be used with C and assembly
code.  Get Knit's open source code, examples, papers, and docs at:

        http://www.cs.utah.edu/flux/knit/

Knit:
o supports components created from C and assembly code;
o supports component definitions that require little or no
  modification of existing code;
o automatically schedules component initializers and finalizers;
o provides an extensible constraint system to detect subtle
  errors in component composition;
o provides cross-module inlining that largely eliminates
  the overheads of componentization;
o supports component hierarchies;
o supports cyclic component dependencies.

Knit can be used for any C program, but is especially well suited for
use in systems that have some of the following characteristics:
Many separate components, multiple implementations of the same
component, intricate initialization requirements, complex component
interdependencies, low-level code and embedded systems, or code that
is used in radically different configurations.

As described in our OSDI 2000 paper, we have already used Knit with the
Utah OSKit (a kit of OS components which has all these properties) and
with a suite of network router components based on MIT's "Click."

Knit is part of an ongoing R&D effort.  One challenge is to balance
precision and conciseness of expression.  We seek feedback, external users,
and collaborators whose experiences and insight will help evolve Knit.

To join the knit-users or knit-announce mailing lists, send email to
[EMAIL PROTECTED] with, e.g, "subscribe knit-users" in the body.

Thanks go to DARPA for their support, and thanks go to the entire Knit
crew below, but especially Alastair Reid, for the fine research,
development, and hard work that led to this Knit release.  Matthew Flatt's
foundational work on Units underlies this work; Eric Eide is responsible
for the high quality of the tutorial and manual.
        Kota Abe                Sean McDirmid
        Eric Eide               John Regehr     
        Matthew Flatt           Alastair Reid           
        Mike Hibler             Leigh Stoller           
        Jay Lepreau             Patrick Tullmann        

and Alastair says... Enjoy!

Jay Lepreau, [EMAIL PROTECTED]
Flux Research Group, School of Computing
University of Utah


Reply via email to