Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site brl-tgr.ARPA Path: utzoo!watmath!clyde!burl!ulysses!mhuxl!ihnp4!zehntel!hplabs!hao!seismo!brl-tgr!gwyn From: gwyn@brl-tgr.ARPA (Doug Gwyn) Newsgroups: net.lang.c Subject: re: Required Declaration of C Function Parameters Message-ID: <3816@brl-tgr.ARPA> Date: Sun, 5-Aug-84 19:44:26 EDT Article-I.D.: brl-tgr.3816 Posted: Sun Aug 5 19:44:26 1984 Date-Received: Wed, 8-Aug-84 19:37:07 EDT References: <1516@ucbvax.UUCP> Organization: Ballistics Research Lab Lines: 11 Although the syntax of recursive type declaration can be made simpler (as in the Cedar example), one will still run into problems when type-checking recursive types unless some trick similar in concept to the example I gave is used. Note that the idea of having two types of entity whose "useful" property is the same but which have a different additional property for cutting recursion short is commonly used, for example in the axioms of a set theory free from Russell antinomies. It is possible to embed the recursion-truncation in an algorithm in such a way that the two "levels" are not obvious, but they are always there.