Knowledge

Euclid (programming language)

Source 📝

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::

Index

Paradigm
multi-paradigm
structured
imperative
functional
Designed by
Butler Lampson
James G. Mitchell
Jim Horning
Gerald J. Popek
Developer
Ric Holt
James Cordy
Typing discipline
strong
static
Pascal
Mesa
Alphard
CLU
BCPL
Modula
LIS
Concurrent Euclid
Turing
verifiable
Butler Lampson
James G. Mitchell
Xerox PARC
Jim Horning

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.