Emerald (programming language)
{{Infobox programming language
| name = Emerald
| logo =
| paradigm = object-oriented
| year = 1980s
| designer = Andrew P. Black, Norman C. Hutchinson, Eric B. Jul, Henry M. Levy
| developer =
| latest release version =
| latest release date =
| implementations =
| dialects =
| influenced by = Pascal, Simula, Smalltalk
| influenced = Java, Singularity
| operating system =
| license =
| website = {{URL|www.emeraldprogramminglanguage.org}}
| file_ext =
}}
Emerald is a distributed, object-oriented programming language developed in the 1980s by Andrew P. Black, Norman C. Hutchinson, Eric B. Jul, and Henry M. Levy, in the Department of Computer Science at the University of Washington.{{cite book|chapter=The Development of the Emerald Programming Language|first1=Andrew P.|title = Proceedings of the third ACM SIGPLAN conference on History of programming languages - HOPL III|last1=Black|first2=Norman C.|last2=Hutchinson|first3=Eric|last3=Jul|first4=Henry M.|last4=Levy|date=1 January 2007|publisher=ACM|pages=11–1–11-51|doi=10.1145/1238844.1238855|isbn = 978-1-59593-766-7}}
A simple Emerald program can create an object and move it around the system:
const Kilroy ← object Kilroy
process
const origin ← locate self
const up ← origin.getActiveNodes
for e in up
const there ← e.getTheNode
move self to there
end for
move self to origin
end process
end Kilroy
Emerald was designed to support high performance distribution, location, and high performance of objects, to simplify distributed programming, to exploit information hiding, and to be a small language.
References
{{Reflist}}
External links
- {{Official website|www.emeraldprogramminglanguage.org}}
- {{cite web |title=Emerald page at UBC |url=http://www.cs.ubc.ca/nest/dsg/emerald/emerald.html |archive-url=https://web.archive.org/web/20200114151545/www.cs.ubc.ca/labs/dsg/emerald/emerald.html |archive-date=2020-01-14}}
- [http://sourceforge.net/projects/emeraldlanguage/ Emerald project on Sourcefourge, including Eclipse plugin]