[comp.lang.misc] Languages for Evaluating `Spreadsheet' Type Dependencies

ianb@cs.warwick.ac.uk (Ian Bridge) (06/25/91)

I am currently working with an interpreter for a definitive 
notation developed at Warwick U. called EDEN. The features of 
this notation include :-

  * It includes both declarative and procedural constructs.

  * Functional dependencies between variables can be
    declared by specifying formula variables, of the form :-

	  x is y + z  // where x is re-evaluated if y or z are

    This is a one-way constraint which has a similar semantics 
    to that of the definition of functional dependencies between 
    cells in a spreadsheet.

  * Procedural actions can be attached to groups of variables.

      action print_xy x,y { writeln("x:",x,"y:",y); }
        // where `print_xy' is invoked whenever the value of
        // x or y is updated

    This has a similar semantics to that of a dependency rule
    in the UNIX `make' utility, although in an interactive
    context. 

  * A syntax similar to that of C.

The EDEN interpreter :-

  * Actively maintains dependencies between values of variables
    and invokes procedural actions attached to variables.
  
  * Dynamically type checks variables, obviating the need for
    variable declarations.

  * Facilitates dynamic re-definitions of formula variables. 

  * Operates interactively to enable variable assignments and
	queries.

I am currently engaged in modelling systems of interactive 
agents in this environment and would be interested to hear of 
any other languages with similar features.