| Concepts behind ElizaEliza is a sequencial, functional logic programming language.
It borrows concepts from Prolog,
Lisp, Icon, Haskell,
Bash, Oz and
C/C++. From Prolog it borrows backtracking. From Lisp stems the concept of first-order-functions. This concept had a great influence on the design of the language. Icon has influenced Eliza with its efficiency and the generators. Haskell is present through its separation of declaration and definition of functions and the syntax of the declaration. Also the influence of Oz is quite important. Eliza should be equally suited for constraint programming. C++ has found its way into the language with its functors and namespaces. Eliza uses pipes as Bash does, for example.The engine of Eliza is based on a sequence of function calls which are connected through pipes, logical "and" and "or". There are four different types of functions: <G>enerators, <C>oncentrators, <T>ransformers and <F>ilters. Brackets can be used for grouping and nesting. The Eliza language is specified in The Eliza Programming Language (pdf, 328KB). |
| © MH, 2008-02-06 |
