An anonymous language devised by EwDijkstra for the examples in his book ''A Discipline of Computer Programming''. Dijkstra did not implement its language. The term ''egg'' refers to a recent Java implementation which is available at http://www.andrewcooke.free-online.co.uk/jara/egg/ . * It is a block-structured imperative language in the Algol tradition. * It has GuardClause''''''s and guarded command sets. A guarded statement only executes if its accompanying condition (guard) is true. A set of GuardClause''''''s can be written as part of an '''if''' or '''do''' statement, with the semantics described in GuardClause. These constructs replace all flow-of-control constructs in procedural languages, but are easier to prove correct. * Variables are local or global, with special consideration given to uninitialized globals. * The only aggregate structure is one-dimensional arrays whose bounds can be adjusted at run time. (Essentially indexible dequeues.) Here is EuclidOfAlexandria's GCD algorithm, taken from the distribution: begin privar X, Y, x, y ; X vir int, Y vir int := 12345 * 9876, 12345 * 6789 ; if X > 0 and Y > 0 -> x vir int, y vir int := X, Y ; do x > y -> x := x - y | y > x -> y := y - x od ; print( x ) { for 12345 * 9876, 12345 * 6789 answer is 37035 } fi end ---- According to the LanguageList Dijkstra "later (1972) referred to this language as DOVPA (Dijkstra's Own Version of Pidgin Algol)".