At 09:20 PM 10/8/98 -0700, Gene Ouye wrote: >So I'd say the "con" is: Assignment that violates the type system requires >more typing. Agreed. To avoid the possibility of confusion, I would state it as "the code required to violate strong typing is very verbose. (Of course, this is intentional.) >Isn't this "con" really: Brittle architectures with high degrees of >inter-module coupling can't be modified without excessive recompilation? > >Which then becomes the "pro": Excessive recompilation is a potential early >indicator of architectural problems? Amen! In my job, one of the strongest advantages of Ada. Estimating the time that any C project will spend in integration is a crap shoot. But on Ada projects, those problems have usually been fixed (sometimes with a few months of schedule slip) before the start of integration. >Yeah, I know, somebody can always come up with examples of necessary global >types. But most of the time I see somebody complaining about the high >recompilation necessitated by Ada, the problem is bad design. And if it >really is necessary, they could always use an incremental compiler... ;-) Our experience has always been that it isn't the global types that are the main problem, it is the global constants that aren't. I remember one programmer heatedly explaining that a certain system parameter was a constant not a variable, even after I pointed out that it had changed four times in the last three weeks. >The only "con" I can see with this is: Hackers are uncomfortable working in >software development shops that place a high value on programming languages >which support software engineering. I phrase it as, "Some people are very uncomfortable with a language which complains about inadequacies in their design." I threw together a quick simulation yesterday. It did what I wanted, but, because I wrote it in Ada, it was overengineered for the purpose. But then again, in C, I could have thrown something together in under a day that took me an hour and a half in Ada. ;-) (That's not really a knock on C, Ada is a better suited for discrete event simulation.) Robert I. Eachus with Standard_Disclaimer; use Standard_Disclaimer; function Message (Text: in Clever_Ideas) return Better_Ideas is...