Heading:
Second EPE report (section 1)
Page Numbers: No
Inter-Office Memorandum
ToDistributionDateDecember 13, 1978
FromSecond EPE working groupLocationPalo Alto
(names on next page)
SubjectReport from second ProgrammingOrganizationCSL
Environment Working Group
XEROX
Filed on: Ivy <Deutsch>pe2>
pe2.press - the report proper
memos.press - technical memos submitted to the working group (the appendix to the report)
minutes.press - the minutes of the working group’s meetings
Distribution:
CSL
SSL: LRG, A. Henderson
SDD Palo Alto: Irby, Liddle, Lynch, Metcalfe, Satterthwaite, Dave Smith, Wallace, Weaver, White, Wick
ASD Palo Alto: Brotz, Elkind, Spitzen, Wegbreit

Non-CSL recipients may distribute further copies as needed
Table of Contents
1. Summary
2. Introduction, charter and history
3. Technical issues
a. Global issues
b. Facilities to be provided
c. Character of resulting system
4. Organizational and resource issues
a. Effort and schedule
b. Participating people
c. Project organization
5. Foreign affairs
a. Importation
b. Exportation
c. Image
Appendix - technical memos submitted to the working group
Summary
The first CSL Programming Environment working group met intensively for a month last summer, and concluded that CSL should launch a project on the scale of the Dorado to develop a programming environment for the entire laboratory, starting from either Lisp or Mesa. A second working group has met weekly for nearly three months, exploring in more detail the probable consequences of the alternative starting points. This report presents those consequences in what we hope is sufficient detail for CSL to choose a starting point, and begin the actual construction of an Experimental Programming Environment.
Although the members of the working group are not in complete agreement about the choice of a starting point, there is almost no disagreement about technical issues or long-term goals. The facts and conclusions presented in this report are not in dispute; we have attempted to identify the (few) sources of unresolved disagreements.
As later sections of this report will make clear, the choice between Lisp and Mesa cannot be made solely on the basis of technical considerations. To within the uncertainty of estimation, both starting points present challenges of comparable difficulty, and would lead to systems of comparable utility, with comparable investments, over comparable time spans (two to three years). We are agreed that it is necessary and feasible for an EPE based on either system to support comfortably the programming styles currently associated with Lisp and Mesa. Some differences would remain in the character of the result; the value judgements placed on these differences generated most of the heat in our discussions. Social and political factors -- including the availability of people to fill key roles in the project, and our relations with the rest of the corporation -- are secondary (but possibly decisive) concerns.
Technical issues: Our further investigation of both the Lisp and Mesa alternatives led to two plausible development plans for producing a rudimentary environment on the Dorado (primarily for use by the EPE developers) in about six months, a widely-usable environment in a year and a half, and one superior to either of our present environments in about three years. The final system would provide all the facilities that present Lisp and Mesa users value highly: from Lisp, tools similar to the existing array of tools in the current Interlisp, and the ability to support integrated sublanguages and to delay bindings; from Mesa, the provisions for modularization with explicit interfaces, and the amenability to static checking. However, the system would probably retain some of the "flavor" of its starting point.
Organizational issues: Although the efforts required are about the same, a somewhat larger number of qualified people are available to work on a Mesa-based EPE. This report also discusses a possible structure for the project; after the language choice is made it should be possible to develop an internal operating plan quickly.
External affairs: The rest of Xerox has a fairly large and growing commitment to Mesa, and none to Lisp. Remaining largely compatible with the rest of the corporation has both advantages and disadvantages, but the advantages predominate. Either choice will reduce communication with important (but different) research communities in the outside world: Lisp favors the AI community, Mesa favors the programming language community.
Your working group respectfully asks CSL as a whole to:
endorse the immediate establishment of a large-scale EPE project;
based on the information contained in this report, and such other information as it considers relevant, choose the starting point for the project; and
agree to relegate further pro-and-con language discussions to the status of "printing discussions" for at least a year.