Heading:
Product Plans for Loops
Page Numbers: Yes X: 527 Y: 10.5"
Inter-Office Memorandum
ToBill SpencerDateMay 17, 1983
FromMark Stefik, Dan Bobrow, Steve GadolLocationPalo Alto
SubjectProduct Plans for LoopsOrganizationKnowledge Systems Area
Filed on: {Indigo}<Loops>ProductPlans.press
Bill,
As per your request, here is a proposal for developing Loops from a research prototype into a product. The proposal is brief, but should provide enough detail to allow early criticism of the concept and plan.
What is Loops?
Loops is a knowledge programming system developed over the past two years by the Knowledge Systems Area. A programming system is an environment for writing and debugging programs. Interlisp-D, Smalltalk, and Cedar are all examples of programming systems. Loops, however, is an extension of Interlisp-D rather than an independent system. Loops currently runs on the Dolphin (1100), Dorado (1132), and Dandelion (1108).
Loops is special in that it integrates several different programming paradigms in a single system, thus providing a powerful environment for expert system applications. It combines the procedure-oriented paradigm of Interlisp-D, with object-oriented programming (akin to Smalltalk), data-oriented programming (programs triggered by changes in data), and rule-oriented programming (for representing decision knowledge). This integrated combination of paradigms appears to be unusually powerful for providing advanced aids for exploratory programming. Two examples are the ability to interrupt Loops to ask what rule was responsible for a particular decision and the ability to attach visual "gauges" to arbitrary variables in a database.
The first work on Loops started in January 1981 as a spin-off of the KBVLSI project, a joint project with Stanford University. A preliminary version of Loops became operational in the summer of 1981. In the fall of 1982, we began providing Loops to beta-test sites outside of Xerox PARC, in order to get feedback about the language and to field test the new ideas. The current set of beta-test sites is Stanford University, Teknowledge, ESL (TRW), Applied Expert Systems, and Fairchild AI Lab. In early 1983, two 3-day intensive courses on "Knowledge Programming in Loops" were offered to about fifty people -- drawn from Xerox organizations, our beta-test sites, and prospective beta-test sites. During the course, all of the participants managed to learn Loops well enough to extend a small expert system. The success of the course has triggered a wave of interest in the possibility of creating a product based on Loops.
A Product Sketch
Here are the main parts of our vision of Loops as a Xerox product.
oMarketed as a multi-paradigm programming system for expert systems applications.
oNamed Interloops and sold as an integrated system with Interlisp.
oCoupled with a training program to be offered through Leesburg.
oLicensed together with Interlisp to other computer vendors.
oA research version of Loops would continue to be developed at PARC. Beta-testing of the research version would continue for feedback and field test. Technology would be transferred from Loops to Interloops as it became ready.
Here are some arguments for marketing Loops.
oLoops substantially enhances the 1100 products.
-> Expands the AI/Expert System and education markets.
-> Provides a needed training vehicle for this program.
-> Helps the image of Interlisp-D as an active, growing enterprise.
oThe Loops prototype is ready -- including a training program.
oOther market forces are likely to create analogous products (possibly creating standards and establishing market presence), if Xerox is slow to act.
oIf Loops is properly promoted, it would enhance Xerox’s high tech image.
Here are some arguments for licensing Interloops and Interlisp as an advanced and integrated software package to other computer vendors.
oXerox can derive an income and market place visibility when its software products are promoted on popular computers (e.g., Vaxes or 68000’s).
oThe marketing arms of licensed companies would develop a much larger market for Interloops and Interlisp than could Xerox alone. This could be similar in effect to the UNIX example, which has brought profit, recognition, and goodwill back to Bell Labs.
oAs companies like DEC develop the market for our advanced programming environments, Xerox could anticipate and develop high performance and cost effective processors. In this we could take advantage of our experience and understanding of Interloops so that we could expect customers to buy advanced Xerox processors.
oIf Xerox does not license Interloops/Interlisp, then our position in the market place will become quite vulnerable. Xerox market share would fade if DEC, Symbolics, and other companies decide to use a common language. In fact, the clock is already running since DEC has already announced delivery next January of machines with CommonLisp -- a close cousin to zeta-Lisp of Symbolics. CommonLisp is not yet an integrated environment, but it is probably only a matter of time. These companies put a lot more resources into product development and marketing than XSIS does.
Steps toward Product
The basic plan is for XSIS to provide staff to carry out the development of Loops, with members of the Knowledge Systems Area acting as advisors. Here is a list of the main tasks that are necessary for preparing Interloops:
oProgramming work.
-> Performance tuning.
-> Downward integration into Interlisp.
-> Further development of user interfaces.
oFinish Loops manuals and other documentation.
oDevelopment of training courses for Interloops users and Xerox sales people.
oEstablish an organization for responding to suggestions, questions, and bugs from the user community.
oMake legal arrangements for licensing Interloops with Interlisp.
It is our belief that there are approximately four man-years of work necessary to carry out the tasks above. (We have a more detailed list of the technical steps in a separate document.) We believe that a development team could be put together that would be able to deliver Interloops in 12 to 18 months.
Division of Responsibilities
This section proposes a division of responsibilities between the research groups in the Knowledge Systems Area and Cognitive and Instructional Sciences Area, and staff to be provided by XSIS.
The main function of the research groups will be to provide consulting and advice for the development of the Interloops system and training programs. KSA will help to recruit and train the development team, and will commit approximately 20-25% time over the next year to do this. Additional time on research extensions and testing of Loops will go beyond these percentages. KSA will also arrange for suitable office space at PARC. Members of CIS will help to carry out the integration of Interloops and Interlisp, and will also help with the planning.
Overall management of the development of Interloops will be carried out by Steve Gadol of XSIS. He will be responsible for establishing the priorities and schedule of the Interloops development team.
Given the involvement of members of KSA in the expert systems community, we believe that it would be useful to establish communication and feedback between the marketing arm XSIS and KSA. This would enable KSA to provide advice on the presentation of Loops, and also to tune Loops directions somewhat in response to the market.
In the event that XSIS wants to deliver to selected customers an "experimental version" of Interloops, similar to the beta-test version, then it is essential that they provide enough staff to carry out the consulting and question-answering support for the Interloops users. KSA agrees to make space available on a limited basis in its beta-test training courses for this in the interim.
Demonstration and Publication Plans
It is recognized that timely publications and demonstrations of Loops are essential for both research and marketing objectives. This section summarizes some of the publications that have already taken place, as well as some that are being planned.
oJuly 1982
Short Loops paper published at ECAI.
oAugust 1982
Demos at AAAI conference at Pittsburgh.
oMay 1983
Movie on the knowledge programming course to be presented at AAAS.
oJune 1983
Forum on Loops to be presented at PARC.
oAugust 1983
Article on Loops course to be cover story of AI Magazine.
oFall 1983
Full length articles on multiple programming paradigms to be published.
The following steps should be taken only if a product program is underway, or else bad feelings will be created in the community.
oAugust 1983
Courses on Interlisp and Loops to be offered at time of AAAI.
oAugust 1983
Loops and
Truckin knowledge competition to be demonstrated at AAAI conference.
c: Lynn Conway, Bob Ritchie, John Brown, Lou Karagianis, John Grant, Frank Presson
yyy