[lively-kernel] Self-style object outliners

Adam Spitz adam.spitz at gmail.com
Tue Mar 9 00:48:58 CET 2010


Lately I've been feeling homesick for Self, so I used Lively Kernel to
create a sorta-kinda vaguely Self-like environment for Javascript.

There are lots of rough edges and bugs and missing features, but you
can try it out at:

    http://adamspitz.com/Lively-Outliners/example.xhtml

    (and the code is at http://github.com/AdamSpitz/Lively-Outliners)

It isn't much. The main thing is object outliners
(http://selflanguage.org/documentation/published/object-focus.html) -
similar to inspectors, in that they let you look at an individual
object, but with enough programming features (you can edit methods,
organize slots into categories, attach comments to objects or slots,
drag an arrow to set the contents of a slot, etc.) that they're used
for writing code as well. In Self we use these as a replacement for
both inspectors and code browsers. The idea is to give you the feeling
of getting your hands directly on your objects, rather than feeling
like you're using a tool that shows you a view of an object that's
hidden behind the scenes somewhere.

There's also a transporter system
(http://research.sun.com/self/papers/transporter.html) for organizing
objects into modules and filing them out as .js files. (The demo isn't
quite fully-functional; I had trouble getting WebDAV working on my
server. But I rigged up a little CGI script so that when you file out
a module you can download the .js file through your web browser.)

Anyway, I don't really trust this thing with my code yet. (I'm using
it to manage most of its own code, but I double-check the filed-out
.js files to make sure they look OK.) But I wanted to show it to the
LK community, to get a sense of whether anybody here is interested in
this kind of thing. (I could use some advice on how to make it play
more nicely with the rest of LK.)

This thing was fun to put together - LK is a nice platform to build on. :)


Adam


More information about the lively-kernel mailing list