309:
R.C. Holt, D.B. Wortman, J.R. Cordy and D.R. Crowe 1978. The Euclid
Language: a progress report. In Proceedings of the 1978 Annual Conference (Washington, D.C., United States, December 04 - 06, 1978), 111-115.
286:
and aliases, and none of the actual parameters to a function can refer to the same memory cell (which Euclid calls a "variable"). Euclid implements modules as types. Descendants of Euclid include the
314:
D.B. Wortman and J.R. Cordy 1981. Early experiences with Euclid. In Proc. 5th international
Conference on Software Engineering (San Diego, California, United States, March 09 - 12, 1981), 27-32.
304:
B.W. Lampson, J.J. Horning, R.L. London, J.G. Mitchell and G.J. Popek 1977. Report on the programming language Euclid. SIGPLAN Notices 12, 2 (February 1977), 1-79.
223:
microprocessor. It was considered innovative for the time; the compiler development team had a $ 2 million budget over 2 years and was commissioned by the
333:
338:
278:, and SUE. Functions in Euclid are closed scopes, may not have side effects, and must explicitly declare imports. Euclid also disallows
328:
224:
152:
232:
343:
287:
200:
228:
27:
259:
192:
123:
156:
115:
247:
and various other international institutes for research in systems programming and secure software systems.
291:
255:
251:
119:
275:
263:
139:
127:
236:
39:
35:
31:
208:
188:
22:
8:
168:
70:
303:
244:
176:
55:
283:
196:
63:
46:
313:
308:
172:
51:
322:
220:
103:
99:
212:
184:
94:
79:
59:
180:
216:
204:
75:
215:
was the principal programmer for the first implementation of the
271:
135:
240:
279:
267:
131:
167:is an imperative programming language for writing
320:
282:, floating point numbers, global assignments,
171:programs. It was designed in the mid-1970s by
334:Programming languages created in the 1970s
225:Defense Advanced Research Projects Agency
233:Canadian Department of National Defence
339:Statically typed programming languages
321:
288:Concurrent Euclid programming language
219:. It was originally designed for the
13:
14:
355:
297:
235:. It was used for a few years at
329:Procedural programming languages
203:. The implementation was led by
1:
344:Systems programming languages
7:
292:Turing programming language
10:
360:
229:U.S. Department of Defense
183:lab in collaboration with
250:Euclid is descended from
151:
146:
114:
109:
93:
85:
69:
45:
21:
237:I. P. Sharp Associates
209:University of Toronto
191:, Ralph L. London at
189:University of Toronto
86:First appeared
62:, Ralph L. London,
18:
16:
245:SRI International
241:MITRE Corporation
177:James G. Mitchell
162:
161:
153:Concurrent Euclid
95:Typing discipline
56:James G. Mitchell
351:
284:nested functions
47:Designed by
19:
15:
359:
358:
354:
353:
352:
350:
349:
348:
319:
318:
300:
197:Gerald J. Popek
64:Gerald J. Popek
12:
11:
5:
357:
347:
346:
341:
336:
331:
317:
316:
311:
306:
299:
298:External links
296:
173:Butler Lampson
160:
159:
149:
148:
144:
143:
112:
111:
107:
106:
97:
91:
90:
87:
83:
82:
73:
67:
66:
52:Butler Lampson
49:
43:
42:
28:multi-paradigm
25:
9:
6:
4:
3:
2:
356:
345:
342:
340:
337:
335:
332:
330:
327:
326:
324:
315:
312:
310:
307:
305:
302:
301:
295:
293:
289:
285:
281:
277:
273:
269:
265:
261:
257:
253:
248:
246:
242:
238:
234:
230:
226:
222:
221:Motorola 6809
218:
214:
210:
206:
202:
198:
194:
190:
186:
182:
178:
174:
170:
166:
158:
154:
150:
145:
141:
137:
133:
129:
125:
121:
117:
113:
110:Influenced by
108:
105:
101:
98:
96:
92:
88:
84:
81:
77:
74:
72:
68:
65:
61:
57:
53:
50:
48:
44:
41:
37:
33:
29:
26:
24:
20:
249:
164:
163:
213:James Cordy
185:Jim Horning
80:James Cordy
60:Jim Horning
323:Categories
181:Xerox PARC
169:verifiable
147:Influenced
40:functional
36:imperative
32:structured
266:, Gypsy,
130:, Gypsy,
71:Developer
290:and the
231:and the
217:compiler
205:Ric Holt
76:Ric Holt
23:Paradigm
260:Alphard
227:of the
207:at the
193:USC ISI
187:at the
179:at the
124:Alphard
272:Modula
252:Pascal
165:Euclid
157:Turing
136:Modula
116:Pascal
104:static
100:strong
17:Euclid
280:gotos
142:, SUE
89:1970s
268:BCPL
256:Mesa
211:and
201:UCLA
195:and
175:and
132:BCPL
120:Mesa
78:and
276:LIS
264:CLU
199:at
140:LIS
128:CLU
325::
294:.
274:,
270:,
262:,
258:,
254:,
243:,
239:,
155:,
138:,
134:,
126:,
122:,
118:,
102:,
58:,
54:,
38:,
34:,
30::
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.