[General] Lively Kernel Roadmap
Dan Ingalls
Dan at squeakland.org
Thu May 22 03:35:06 CEST 2008
[if you reply directly to me, please use Dan.Ingalls at sun.com -- I
just had to send this from another address. -Thanks]
Herbert Melcher wrote a while ago...
>Is there a roadmap available for LK, or what are the next planed steps?
>
>Best regards
>
> Herbert Melcher
Greetings, Herbert, and all -
Thanks for this query. It got us thinking about all the things we
have to do, and the various places we could use some help. Step one
is probably just to share all that with the folks who have signed up,
and we can see where it goes from there.
It probably makes the most sense to start with some goals --
artifacts we'd like to build, or demos we'd like to give -- which
means cool capabilities we'd like to put in the hands of LK users.
Then, from that context, and some first principles, we can give you a
laundry list of things we need to do. In each case, we are hoping
you will all have various comments and suggestions. It's our hope
that as we start to be more articulate on this end, some of you who
have been lurking out there will be moved to step forward and
contribute as well.
- Dan, as scribe
---------------------------
UI Completeness and Polish
For LK to become a realistic application platform, it must be able to
create a look and feel that is second to none. To this end there are
several areas in need of improvement. The best impetus for this work
is to produce several real web sites. The biggest challenge will be
to keep things small and simple while enabling increasingly
sophisticated appearance. Here are some obvious targets for
improvement:
More widgets
Better importing of finished graphics
Full support for curves and text on curves
More CSS-style control
End-user scripting
The Morphic architecture of LK, together with live JavaScript,
provides a natural context for end-user scripting with a tile-like
interface similar to that in Scratch and Squeak EToys. To begin work
along these lines, we need:
A parse tree framework for JavaScript
A basic shape vocabulary for each parse node type
A concept for browsing and inspecting at this level
Media
Dear to our hearts is the symbiotic relationship of computation and
media. A real strength of LK is its ability to support active
objects in a much more general way than most other web platforms.
However there is still a gap in our capability in the area of current
expectations with regard to sound and video.
Sound - We have a piano keyboard; help us make it play
Video
Engine room
There are still several places where the Lively Kernel requires work
on performance and robustness. None is holding us back at this
point, but all will probably become important as LK sees more actual
use.
Text Speed (already improved)
Rich Text (mostly
HTML support
JavaScript IDE
If it were never even used as an application platform, the Lively
Kernel could easily be the IDE of choice for dynamic web media. We
now have a powerful set of reflective facilities in place, and
concentration on just a few areas could yield dramatic results. Here
are some we have in mind:
Parsing for better diagnostics
Syntax coloring
Spelling correction
Integrated documentation
More EMACS-style integration of editor and evaluator
Intra-method parsing and emulation for full debugging support
Cleanup
This is a tough one for a distributed community, but a kernel like LK
is in constant need of decomposition and refactoring in order to keep
it from getting bloated and unmaintainable.
Layout support
We now have an experimental framework for automatic layout
constraints. A fair amount of work remains to be done integrating
this with existing widgets and windows.
Web Site development
It should be possible to build an entire active web site while giving
a demo in the Lively Kernel. We need to concentrate on a few
realistic scenarios and make this a reality.
Hosting
Coupled with web site development is the issue of hosting. We need
to establish a hosting environment in which people can create
interesting sites, and gain exposure for creative accomplishments.
Server leverage
So far the Lively Kernel has been mostly a client-side artifact.
there is no reason to limit ourselves in this way. Here are some
projects that would highlight the possible server-side synergy.
GUI Builder - 20 minutes in LK to produce a client-side interface
remote data and services
Database access - deeper LK services with shared access and
more horsepower
Collaboration - we had this working a year ago. Time to
revive shared white boards
and webcasting with LK
Community
It will soon make sense to have a wiki in addition to our mailing
list. This should, of course, be a lively wiki. In fact our whole
web site should be a lively site, so there's some overlap here with
the web site topic above. Also we need to get our documentation to
be lively so that it tracks the current rapid rate of change and
refactoring.
More information about the lively-kernel
mailing list