Path: utzoo!attcan!uunet!mitel!sce!cognos!johna From: johna@cognos.uucp (John C. Anderson) Newsgroups: comp.lang.c++ Subject: Re: C++, Objectivce-C and projects.. Message-ID: <4501@morlock.UUCP> Date: 14 Nov 88 17:49:00 GMT References: <5155@thorin.cs.unc.edu> <6639@spool.cs.wisc.edu> <5263@thorin.cs.unc.edu> Reply-To: johna@cognos.UUCP (John C. Anderson) Organization: Cognos Inc., Ottawa, Canada Lines: 18 In article <5263@thorin.cs.unc.edu> coggins@cs.unc.edu (Dr. James Coggins) writes: >In article <6639@spool.cs.wisc.edu> dcmartin@cheddar.cs.wisc.edu (David C. Martin) writes: >>In article <5155@thorin.cs.unc.edu> (Dr. James Coggins) writes: > >(an ADT consists of data, procedures, and axioms that define consistent >states of the structure. Most discussions and all implementations forget >about the axioms.) ^^^ Try Eiffel. Eiffel routines can have REQUIRE/ENSURE clauses (pre/post-conditions), and the classes themselves can have INVARIANTs. We use these to do exactly what you mentioned, ie define consistent states of a structure. Seems to work quite well. -- John Anderson, Cognos Incorporated, P.O. Box 9707, 3755 Riverside Drive, Ottawa, Ontario, CANADA K1G 3Z4 (613) 738-1440 decvax!utzoo!dciem!nrcaer!cognos!johna