Path: utzoo!utgpu!news-server.csri.toronto.edu!rutgers!cs.utexas.edu!uunet!ns-mx!umaxc.weeg.uiowa.edu!williams From: williams@umaxc.weeg.uiowa.edu (Kent Williams) Newsgroups: comp.lang.c++ Subject: Re: a new langauge construct Summary: When I see 'new language construct' I draw my revolver Keywords: C++, units Message-ID: <3111@ns-mx.uiowa.edu> Date: 6 Nov 90 14:53:13 GMT References: <1990Nov5.222550.14819@cs.columbia.edu> Sender: news@ns-mx.uiowa.edu Reply-To: williams@umaxc.weeg.uiowa.edu.UUCP (Kent Williams) Followup-To: comp.lang.c++ Distribution: usa Organization: U of Iowa, Iowa City, IA Lines: 31 A fellow I know who is deep into language design refers to C++ as 'COBOL for the 90s', and I tend to agree -- there's too much syntax as it is, and as evidenced by this group, too many obscure ways to be bit by it. I'm not that crazy about MI either -- just so you'll know where I'm coming from. As for the 'Unit' construct, I think that this needs to be NOT a part of the language, but rather part of the programming environment. You can get 99% of the way there by using 'make' and precompiling headers. One of the cases the 'Unit' construct is employed to fix is where you want to change one function in a large file. The easier way to solve this is NO LARGE FILES. This is where a good programming environment comes into play. I would prefer to see a tool that is capable of managing large numbers of classes and functions transparent to the user, and smart enough to only recompile what changes. The smalltalk browser comes to mind. In the real world, I regularly work on programs where 80% of compile time is spent parsing headers. Precompiling headers would help this immensely. No change to a production compiler is trivial, but this would be fairly easy, and doesn't involve language changes. Even pre-tokenizing could give you a performance win without costing a large amount of deep thought! -- Kent Williams --- williams@umaxc.weeg.uiowa.edu "'Is this heaven?' --- 'No, this is Iowa'" - from the movie "Field of Dreams" "This isn't heaven, ... this is Cleveland" - Harry Allard, in "The Stupids Die"