Module: dfmc-common Author: Jonathan Bachrach, Keith Playford, Paul Haahr Synopsis: Modelled and compile-time objects with names. 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 // TODO: Name is used willy-nilly in the compiler for all kinds of junk, // including variable name fragments and probably strings, so I've had to // open it up completely. define constant = ; define compiler-open generic name (object :: ) => (name :: ); define compiler-open generic name-setter (name :: , object :: ) => (name :: ); define compiler-open generic named? (object :: ) => (well? :: ); define compiler-open abstract class () slot name :: = #f, init-keyword: name:; end class ; define method named? (o :: ) => (well? :: ) o.name & #t end method named?; // eof