Inter-Office MemorandumToBill SpencerDateMay 17, 1983FromMark Stefik, Dan Bobrow, Steve GadolLocationPalo AltoSubjectProduct Plans for LoopsOrganizationKnowledge Systems AreaFiled on: {Indigo}ProductPlans.pressBill,As per your request, here is a proposal for developing Loops from a research prototype intoa product. The proposal is brief, but should provide enough detail to allow early criticism of theconcept and plan.What is Loops?Loops is a knowledge programming system developed over the past two years by theKnowledge Systems Area. A programming system is an environment for writing and debuggingprograms. 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 onthe Dolphin (1100), Dorado (1132), and Dandelion (1108). Loops is special in that it integrates several different programming paradigms in a singlesystem, thus providing a powerful environment for expert system applications. It combines theprocedure-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 beunusually powerful for providing advanced aids for exploratory programming. Two examples arethe ability to interrupt Loops to ask what rule was responsible for a particular decision and theability 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 jointproject with Stanford University. A preliminary version of Loops became operational in thesummer of 1981. In the fall of 1982, we began providing Loops to beta-test sites outside of XeroxPARC, in order to get feedback about the language and to field test the new ideas. The current setof beta-test sites is Stanford University, Teknowledge, ESL (TRW), Applied Expert Systems, andFairchild AI Lab. In early 1983, two 3-day intensive courses on "Knowledge Programming inLoops" 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 Loopswell enough to extend a small expert system. The success of the course has triggered a wave ofinterest in the possibility of creating a product based on Loops. A Product Sketch]gpi c8q]rX -q7Br ]q]r$-q7Br Yq]r-q 7Br Q+ K HYU F-6 D ?S ?p  <8r sr :n? 80- 6[ 5: 1&4 /? .@! ,<00 *rD (L &/2 %H !4( ;  8* @_ uB I L ;( K,3 B   gp =\Product Plans for Loops2Here 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-testingof the research version would continue for feedback and field test. Technology wouldbe 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 creatingstandards 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 andintegrated software package to other computer vendors.oXerox can derive an income and market place visibility when its software products arepromoted on popular computers (e.g., Vaxes or 68000's).oThe marketing arms of licensed companies would develop a much larger market forInterloops and Interlisp than could Xerox alone. This could be similar in effect to theUNIX example, which has brought profit, recognition, and goodwill back to Bell Labs.oAs companies like DEC develop the market for our advanced programmingenvironments, Xerox could anticipate and develop high performance and cost effectiveprocessors. In this we could take advantage of our experience and understanding ofInterloops so that we could expect customers to buy advanced Xerox processors.oIf Xerox does not license Interloops/Interlisp, then our position in the market placewill become quite vulnerable. Xerox market share would fade if DEC, Symbolics, andother companies decide to use a common language. In fact, the clock is alreadyrunning since DEC has already announced delivery next January of machines withCommonLisp -- a close cousin to zeta-Lisp of Symbolics. CommonLisp is not yet an frG bB ^tr4 [:trs r1 Wtr? TVtr; Ptr*'OUMO; I, Fktr/B7?8<D 8tr= 51tr73gE /trH ,sr *6 'Ftr+*%|7 " tr= ?1'turG tr-(.8Am"19 1tr<fD: '' Jsr X 9~]L Product Plans for Loops3integrated environment, but it is probably only a matter of time. These companiesput a lot more resources into product development and marketing than XSIS does. Steps toward ProductThe basic plan is for XSIS to provide staff to carry out the development of Loops, withmembers of the Knowledge Systems Area acting as advisors. Here is a list of the main tasks thatare 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 theuser 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 outthe tasks above. (We have a more detailed list of the technical steps in a separate document.) Webelieve that a development team could be put together that would be able to deliver Interloops in12 to 18 months.Division of ResponsibilitiesThis section proposes a division of responsibilities between the research groups in theKnowledge Systems Area and Cognitive and Instructional Sciences Area, and staff to be provided byXSIS.The main function of the research groups will be to provide consulting and advice for thedevelopment of the Interloops system and training programs. KSA will help to recruit and train thedevelopment 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 outthe 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 ofXSIS. He will be responsible for establishing the priorities and schedule of the Interloopsdevelopment team. frGb4`S? ZD[:p WrB U/1 T3' PtrMOI(Fk+ Btr- ?trL <trQ:K 6tr@ 3gN 1K /(9 . (6(p %|r K #srs)r  ! t3& <' T C J"= R  P CV x< 1>YProduct Plans for Loops4Given the involvement of members of KSA in the expert systems community, we believethat it would be useful to establish communication and feedback between the marketing arm XSISand KSA. This would enable KSA to provide advice on the presentation of Loops, and also totune Loops directions somewhat in response to the market. In the event that XSIS wants to deliver to selected customers an "experimental version" ofInterloops, similar to the beta-test version, then it is essential that they provide enough staff to carryout the consulting and question-answering support for the Interloops users. KSA agrees to makespace available on a limited basis in its beta-test training courses for this in the interim.Demonstration and Publication PlansIt is recognized that timely publications and demonstrations of Loops are essential for bothresearch and marketing objectives. This section summarizes some of the publications that havealready taken place, as well as some that are being planned.oJuly 1982Short Loops paper published at ECAI.oAugust 1982Demos at AAAI conference at Pittsburgh.oMay 1983Movie on the knowledge programming course to be presented at AAAS.oJune 1983Forum on Loops to be presented at PARC.oAugust 1983Article on Loops course to be cover story of AI Magazine.oFall 1983Full 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 feelingswill be created in the community. oAugust 1983Courses on Interlisp and Loops to be offered at time of AAAI.oAugust 1983Loops and Truckin knowledge competition to be demonstrated at AAAI conference.c: Lynn Conway, Bob Ritchie, John Brown, Lou Karagianis, John Grant, Frank Pressonyyy frG b3 `SD ^O \; YLI Wj UM S] N|Np# Kar-/ IG G< DZtrB$ ?tr =S' 9tr8B 4tr2' /htr -9 *+tr(`G $sM #$" tr = utr sr= TR  ^=Z TIMESROMAN  TIMESROMAN TIMESROMAN  TIMESROMAN MATH  HELVETICA  (j/qProductPlans.memoStefikMay 17, 1983 4:22 PM