Folks -
There are some very creative people in this community, and yet everyone seems to be just lurking. So I thought I would present a little fireside chat to get things going. The Lively Kernel We've found the name "Lively Kernel" to be confusing to a number of people (nearly equal to the number who hear it ;-). See, "kernel" to me means any seminal bundle of functionality adequate for implementing cool stuff. It's like, well, a kernel of corn, from which you can make a whole corn stalk (and more corn to boot). But there are a lot of people out there -- you know, the ones who like C syntax -- who say "I don't get it; this isn't like the Unix kernel, is it?" So we've taken to just calling it "Lively" recently. For one thing, it's shorter; half the syllables. For another, it emphasizes the part that keeps us interested -- it is, by gosh, a lively piece of software, and that is our passion: to deliver some of the wonderful flexibility of our silicon engines through to end users, especially kids, in a manner that inspires them to explore and invent our future. Lively There's more about the name "Lively" too, and here I have to credit Krzysztof with a number of the observations. In the process of implementing LK on top of SVG, and Java2D, and the JavaFX scene graph, we've learned something. Just as JavaScript has some shortcomings from being raised as a scripting language (and we can get into that sometime), these graphics systems have a number of shortcomings because they were raised as rendering systems. "Duh, what else?" you ask. I'll tell you: Active computing environments. There's something horribly absent in so much of the computer science and computer technology communities. It is the basic, incredibly simple, point of view that computers *are* mathematics brought to life. They are dazzling, radical, explosive engines, and about all we do is yoke them and use them to pull wagons. Passive Rendering So what we discovered early on in this project, is that almost none of these systems make it easy to get the font metrics needed for laying out text. Why? Well usually the text was being laid out in some other system -- a text editor, or a web page design program, and everything was already composed when it got to the browser. Active Objects But where we are coming from is that text, like everything else in the system is *alive*, there on the screen. If you tweak it it will respond. And for that, of course you need the font metrics right then and there. Of course we have figured ways around this for each implementation, but the fact that we have had to tells you taht we are having to drag ourselves out of the dark ages again. We had all this stuff working fine and simply over three decades ago in Smalltalk and other similar dynamic computing environments. Active Architecture The passive stagnation goes deeper, too. For instance, if you look at the node structure of SVG and some other similar systems, you find a distinction between primitive nodes and more general nodes that admit of easy change. There is a real theory of active computing that says: You can cheat for efficiency, but don't let yourself get caught. Thus in Smalltalk small integers are hard coded, but it is all handled seamlessly so you can still send messages to them, you can multiply them until they become extended precision, but the programs that work with them never have to know the difference. Similarly, you want to be able edit primitive shapes like ellipses, but how are you going to out handles on them if they can't have aubparts. This is what an architecture like Morphic provides. It gives even the simplest shapes the ability to be manipulated as full-fledged components in the architecture, and it retains all the malleability and scriptability on screen in the browser where most other software is passive or, even where active, not@all open-ended. So the passion behind this Lively thing is to keep things active and open-ended in every way we can. It may be slow right now; it may seem primitive; but static it ain't. What's new I said in my test message that good things are happening. Fabrik Jens Lincke, who was an intern with us for a couple of months in the summer (on loan from the Hasso-Plattner Institute in Potsdam), built a Fabrik-like system in LK. It doesn't quite have Fabrik's clean dataflow model and the timeless iterators, but it is a fun environment for building UI-intensive applications, and much more could be done with it. Robert Krahn, also from HPI, was also a contributor to this project. Wiki Robert is still working with us, and his summer project was to build a client-side Wiki of active objects. He did this by hooking LK's page saving logic via WebDAV protocol to an SVN repository. This allows one to keep saving new versions of a world, but with the ability to revert to earlier versions@any time. We are planning to build our web site in that system in the coming month, a project we hope will be fun for all and instructive too. Gradients, styles and other appearance tweaks You'll get to see this when we push our next release (qv). Refactoring of shape / Multiple implementations Krzysztof has done lots of work refactoring the relationship between our Morphic architecture and that of SVG and other implementations. Around the time of the release, we should have more to say about some of the other implementations we have running. What's next Yes! A new release is forthcoming. We hope to have it out around December 10th, with documentation evolving through that month as we expand our web site. A web site in our own wiki We plan to get serious about Robert's wiki and actually build our web site using it. Hosting We are hoping to enable anyone with an account on this email system to be able to save Lively content in a modest repository here@Sun, and to have interesting projects promoted to a shared archive. We will learn about the scalability of this project before long. If anyone out there has a good idea about how to do this if 100,000 people get interested, I'd like to know. A fun PR hack that may or may not happen I can't tell you about this yet but, if it happens, you'll know around December 10th (I hope earlier). A real IDE Robert has been working hard to improve the IDE that i built last spring in LK. We will write about it in January and, hopefully, get some of you interested in making it a real web programmer's power tool. That's it for now. I'm curious to hear people's reactions to all of this, and also to find out what people are doing with the Lively Kernel, and where they would like to see it go. - Dan, as scribe, for the LK team -------------- next part -------------- An HTML attachment was scrubbed... URL: http://livelykernel.sunlabs.com/pipermail/general/attachments/20081121/e78b4b43/attachment.html |
Free forum by Nabble | Edit this page |