SMALLTALK-80: the interactive programming environment
SMALLTALK-80: the interactive programming environment
Lisp and Symbolic Computation
Directness and liveness in the morphic user interface construction environment
Proceedings of the 8th annual ACM symposium on User interface and software technology
Annotating objects for transport to other worlds
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
From Kansas to Oz: collaborative debugging when a shared world breaks
Communications of the ACM
Back to the future: the story of Squeak, a practical Smalltalk written in itself
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Programming in an Interactive Environment: the ``Lisp'' Experience
ACM Computing Surveys (CSUR)
Moose: an agile reengineering environment
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
The Lively Kernel A Self-supporting System on a Web Page
Self-Sustaining Systems
A comparison of context-oriented programming languages
International Workshop on Context-Oriented Programming
Lively Wiki a development environment for creating and sharing active web content
Proceedings of the 5th International Symposium on Wikis and Open Collaboration
An open implementation for context-oriented layer composition in ContextJS
Science of Computer Programming
The Lively PartsBin--A Cloud-Based Repository for Collaborative Development of Active Web Content
HICSS '12 Proceedings of the 2012 45th Hawaii International Conference on System Sciences
Scoping changes in self-supporting development environments using context-oriented programming
Proceedings of the International Workshop on Context-Oriented Programming
Hi-index | 0.00 |
Self-supporting development environments like Smalltalk and Emacs can be used to directly evolve themselves, making their tools very malleable and adaptable. In Web-based software development environments users can collaborate in creating software without having to install the environment locally. Bringing these two together and making Web-based environments self-supportive is challenging, since users have to take care of to breaking the system, since there might be others using it also. Environments aimed at end-users usually provide a scripting level above the base system. Instead of providing users with a fixed set of tools, we propose to make the tools user-evolvable by building them as scriptable objects in a shared user editable repository. In our system, the Lively Kernel, the core system is developed using modules and classes, and on top of it users create active content by directly manipulating and scripting objects. By leveraging the scripting level for the development of tools themselves, we allow users to adapt their tools in a self-supporting way, without the need to invasively change the system's core. In this paper we show how development tools in Lively are collaboratively evolved. Tools can be directly explored, adapted, and published in a shared manner while they are being used.