Module: dfmc-namespace Copyright: Original Code is Copyright (c) 1995-2004 Functional Objects, Inc. All rights reserved. License: Functional Objects Library Public License Version 1.0 Dual-license: GNU Lesser General Public License Warranty: Distributed WITHOUT WARRANTY OF ANY KIND //// Environments. // The class is an abstraction for a simple set of // associations between names and values. Perhaps it should be // an actual explicit key collection? // For documentation, the type of names and values, currently // unrestricted. define open abstract class () end; // Define a new name in the environment. An error is signaled if a // definition already exists. define generic define-name (env :: , name :: , value) => (); // Undefine an existing name in the environment. An error is signaled if // no definition exists. define generic undefine-name (env :: , name :: ) => (); // Lookup the value of a name in the environment. An error is signaled // if no definition exists unless a default value is supplied, in which // case that value is returned. define generic lookup-name (env :: , name :: , #key default) => (value); // eof