H ?
«
‹
←
→
›
»
Language peer sets for Euclid:
Canada↑
Canada/1977↑
Designed 1977 ↑
1970s languages ↑
Fourth generation↑
High Cold War↑
Euclid(ID:756/euc001)
Verifiable system software language
alternate simple view
Country: Canada
Designed 1977
Published: 1977
(named for the Greek geometer, fl ca 300 BC.) A Pascal descendant for development of verifiable system software. No goto, no side effects, no global assignments, no functional arguments, no nested procedures, no floats, no enumeration types. Pointers are treated as indices of special arrays called collections. To prevent aliasing, Euclid forbids any overlap in the list of actual parameters of a procedure. Each procedure gives an imports list, and the compiler determines the identifiers that are implicitly imported. Iterators.
The Euclid Project. Holt et al, University of Toronto, (1977-80). Project supported by Canadian and USA governments and by IBM to build a compiler for a systems programming language with verification facilities. Used at I.P. Sharp Associates (Toronto), MITRE Corp. (Boston) and various institutes for system programming and research in secure software.
People:
Structures:
Related languages
Pascal |
→
|
Euclid | |
Evolution of |
Euclid |
→
|
Capsule | |
Incorporated some features of |
Euclid |
→
|
Cedar | |
Evolution of |
Euclid |
→
|
EV2 | |
Evolution of |
Euclid |
→
|
Ottawa Euclid | |
Dialect of |
Euclid |
→
|
Pascal* | |
Influence |
Euclid |
→
|
PLAIN | |
Influence |
Euclid |
→
|
Real-Time Euclid | |
Augmentation of |
Euclid |
→
|
Simple Euclid | |
Subset |
Euclid |
→
|
Small Euclid | |
Subset |
Euclid |
→
|
Theseus | |
for verifiability complete Extension of |
Euclid |
→
|
Toronto Euclid | |
Dialect of |
Euclid |
→
|
ZENO | |
Extension of |
References:
Horning, J. J. (1976) Horning, J. J. "Some desirable properties of data abstraction facilities" pp60-62
Extract:
Euclid Modules
Extract:
Modules as Abstraction Mechanisms
in [SIGPLAN] (1976) SIGPLAN Notices 11(02) February 1976 also Proceedings of the SIGPLAN '76 Conference on Data: Abstraction, Definition and Structure, Salt Lake City, Utah, USA, March 22-24, 1976
(1976) The Higher Order Language Working Group (HOLWG) Working Paper on 23 exisitng programming languages
in [SIGPLAN] (1976) SIGPLAN Notices 11(02) February 1976 also Proceedings of the SIGPLAN '76 Conference on Data: Abstraction, Definition and Structure, Salt Lake City, Utah, USA, March 22-24, 1976
G. J. Popek, J. J. Horning, B. W. Lampson, J. G. M (1977) G. J. Popek, J. J. Horning, B. W. Lampson, J. G. Mitchell, R. L. London "Notes on the design of Euclid" pp11-18
Abstract
DOI
in [ACM] (1977) Proceedings of an ACM conference on Language design for reliable software 1977, Raleigh, North Carolina
Lampson, B.W.; Horning, J.J.; London, R.L.; Mitche (1977) Lampson, B.W.; Horning, J.J.; London, R.L.; Mitchell, J.G.; Popek, G.J. "Report on the programming language Euclid"
in [SIGPLAN] (1977) SIGPLAN Notices 12(02) February 1977
Aseltine, Edward G. and Spencer, Henry (1978) Aseltine, Edward G. and Spencer, Henry "Isolation of machine dependencies in Euclid" pp43-48
Abstract
DOI
in [SIGPLAN] (1978) SIGPLAN Notices 13(03) March 1978
Barnard, D. T., W. D. Elliott, et al. (1978) Barnard, D. T., W. D. Elliott, et al. "Euclid and Modula."
Abstract
in [SIGPLAN] (1978) SIGPLAN Notices 13(03) March 1978
Chang, Ernest; Kaden, Neil E.; Elliott; W. David (1978) Chang, Ernest; Kaden, Neil E.; Elliott; W. David "Abstract data types in Euclid" pp34-42
Abstract
DOI
Extract:
Introduction
in [SIGPLAN] (1978) SIGPLAN Notices 13(03) March 1978
Elliott, W. David (1978) Elliott, W. David "Index to the Euclid report" pp85-89
Abstract
DOI
in [SIGPLAN] (1978) SIGPLAN Notices 13(03) March 1978
Rivieres, Jim des and Spencer, Henry (1978) Rivieres, Jim des and Spencer, Henry "Readability and writability in Euclid" pp49-56
Abstract
DOI
in [SIGPLAN] (1978) SIGPLAN Notices 13(03) March 1978
Venema, Ted and Rivieres, Jim des (1978) Venema, Ted and Rivieres, Jim des "Euclid and PASCAL" pp57-69
Abstract
DOI
Extract:
Euclid
in [SIGPLAN] (1978) SIGPLAN Notices 13(03) March 1978
Holt, Richard C. and Wortman, David B. (1979) Holt, Richard C. and Wortman, David B. "A model for implementing Euclid modules and type templates", p8-12
in [SIGPLAN] (1979) Proceedings of the SIGPLAN symposium on Compiler construction, August 06-10, 1979, Denver, Colorado, United States
London, Ralph L. et al (1979) London, Ralph L. et al "Proof Rules for the Programming Language Euclid" pp1-26
in (1978) Acta Informatica 10(1) August 4, 1978
Schwartz, Richard L. (1979) Schwartz, Richard L. "Aliasing among pointers in EUCLID" Inf. Process. Lett. 9, 2 (Aug. 1979), pp76-79.
in (1978) Acta Informatica 10(1) August 4, 1978
Wasserman, A. I. (1979) Wasserman, A. I. "Testing and Verification Aspects of Pascal-Like Languages"
in (1979) Computer Languages 4(3-4)
Pagan, F. (1980) Pagan, F. G. review of Schwartz 1980 (Euclid)
Abstract
in (1980) ACM Computing Reviews 21(01) January 1980
Wand, I. C. (1980) Wand, I. C. "Dynamic resource allocation and supervision with the
programming language MODULA"
Extract:
Modula
Extract:
Modula vs GYVE vs EUCLID
in (1980) The Computer Journal 23(2) 1980
Wasserman, A. (1981) Wasserman, A. "Revised Report on the Programming Language PLAIN",
in [SIGPLAN] (1981) SIGPLAN Notices 16(05) May 1981
Wortman, David B.; Cordy, James R. (1981) Wortman, David B.; Cordy, James R. "Early experiences with Euclid" pp27-32
in [Proceedings] (1981) Proceedings of the 5th International Conference on Software Engineering 1981, March 09-12, 1981, San Diego, California, United States
Holt, Richard C.; Wortman, David B. (1982) Holt, Richard C.; Wortman, David B. "A Model for Implementing EUCLID Modules and Prototypes" pp552-562
in (1982) TOPLAS 4(4) October 1982
R.P. Cook and T.J. LeBlanc (1983) R.P. Cook and T.J. LeBlanc "A Symbol Table Abstraction to Implement Languages with Explicit Scope Control" from IEEE Transactions on Software Engineering, January 1983
in (1982) TOPLAS 4(4) October 1982
Resources
Search in:
Google
Google scholar
World Cat
Yahoo
Overture
DBLP
Monash bib
NZ
IEEE 
ACM portal
CiteSeer
CSB
ncstrl
jstor
Bookfinder
|