Trellis-Owl
Trellis/Owl, or simply Owl,[a] is a defunct object-oriented[2] programming language created by Digital Equipment Corporation.[3] It was part of a programming environment, Trellis. It ran on the OpenVMS operating system.
Trellis/Owl differed from contemporary languages in several ways. For one, it did not use dot notation for method calls on objects, and used a traditional functional style instead, which they referred to as operations. Operations were supported by the concept of a controlling object, the first parameter in the function call, which indicated which class was being referred to. Whereas most OO languages of the era might have a myStringVariableToPrint.print()
method, in Trellis/Owl this would be print(myStringVariableToPrint)
, and the print method of the class String would be called based on a string being the first parameter.[4] Trellis/Owl also supported properties, which they referred to as components.[5] Trellis/Owl also included a system allowing the easy creation of iterators, using the yields
keyword to replace returns
in the definition of an operation. yields
indicates the operator will return a series of values instead of one.[6]
Notes
[edit]- ^ The editor for a later collection of papers introduces the language stating "The base language is Trellis (originally called Trellis/Owl, hence DOWL where the D stands for Distributed)..."[1] This appears to be a typo or confusion on the part of the author. "DOWL" is short for "distributed Owl", not "distributed Trellis", and all DEC documentation states Trellis is the development environment.
References
[edit]Citations
[edit]- ^ Cohen, Jacques (September 1993). "Concurrent object-oriented programming". Communications of the ACM. 36 (9): 35–36. doi:10.1145/162685.214809. ISSN 0001-0782.
- ^ Joseph et al. 1988, pp. 78–101.
- ^ Schaffert et al. 1986, pp. 9–16.
- ^ Schaffert et al. 1986, p. 10.
- ^ Schaffert et al. 1986, p. 11.
- ^ Schaffert et al. 1986, p. 14.
Bibliography
[edit]- Schaffert, Craig; Cooper, Topher; Bullis, Bruce; Kilian, Mike; Wilpolt, Carrie (1986). "An introduction to Trellis/Owl". Conference proceedings on Object-oriented programming systems, languages and applications - OOPSLA '86. pp. 9–16. doi:10.1145/28697.28699. ISBN 0897912047. S2CID 9565256.
- Joseph, John; Thatte, Satish; Thompson, Craig; Wells, David (26 September 1988). "Report on the Object-Oriented Database Workshop" (PDF). SIGMOD Record. 18 (3): 78–101. doi:10.1145/71031.71041.
- O'Brien, Patrick D.; Halbert, Daniel C.; Kilian, Michael F. (December 1987). "The Trellis programming environment". Conference proceedings on Object-oriented programming systems, languages and applications. ACM. pp. 91–102. doi:10.1145/38765.38815. ISBN 978-0-89791-247-1. S2CID 16084550.
- Law, Rob (March 1997). "An overview of debugging tools". ACM SIGSOFT Software Engineering Notes. 22 (2): 43–47. doi:10.1145/251880.251926. ISSN 0163-5948. S2CID 17506126.