steven@boring.UUCP (01/14/85)
In article <369@hercules.UUCP> franka@hercules.UUCP (Frank Adrian) writes: > I'm sorry, but I really, really, really dislike strong type checking. Unless > your language allows operator overloading, there is no way to write generic > packages without defining everything as a huge, ugly union (which sorta > defeats the whole notion of the thing, eh?). Array bounds checking usually > just gets in the way. Optional and multiple length procedure calls are so > useful as to make the idea of the language not having them completely > ludicrous. But these things are completely unconnected. A language can be strongly-typed *and* have operator overloading *and* array-bound checking *and* optional/multiple-length procedure calls. Algol 68 for instance. Don't go and blame strong typing for absence of these things. > The only way to get secure code is to get a secure programmer... It's not enough. Everyone has off days, makes mistakes, no matter how good they are. Despite some of the invective you read in this group, strong typing helps you get programs debugged and running faster by checking that you've done things consistently. It doesn't stop you 'doing what you want', as some people claim, as shown by the successful implementations of operating systems using strongly typed languages. In fact, quite the contrary, it lets you do what you want and stops you doing what you don't want. If your particular hate-language doesn't let you do what you want to do, blame the language, not strong typing. What Jan Jansen said about writing programs faster is true. An experiment reported in the Computer Bulletin a few years ago said that programmers using a strongly typed language took longer to get their programs *compiled*, but the total time to get programs debugged and running was much less. > I don't like hairbrained notions of some Godlike imperative called > "security" getting in the way. Security is not hairbrained. In fact, I expect that after a couple of disasters caused by badly written programs (eg air-traffic control, train signalling, nuclear-power station, missile guidance) security will be made a legal requirement. > you tell me how to get a generic routine written in a vanilla PASCAL. Of course, you can't. But that's nothing to do with strong typing. You can't in Fortran either. > You're right. The second view is a European view. Maybe the programmers > over there are so bad as to need this sort of thing (at least most of > the code I've seen, written by Europeans, is). The first seems to be > an American view. Give me #1 any day and let me get the job done... I have no intention of contributing to a racist slanging-match, that sort of stuff can stay in net.politics. Yes, discipline is inconvenient, but if you've got responsibilities, sometimes it's necessary. Steven Pemberton, CWI, Amsterdam.
g-frank@gumby.UUCP (01/15/85)
> > You're right. The second view is a European view. Maybe the programmers > > over there are so bad as to need this sort of thing (at least most of > > the code I've seen, written by Europeans, is). The first seems to be > > an American view. Give me #1 any day and let me get the job done... > > I have no intention of contributing to a racist slanging-match, that sort of > stuff can stay in net.politics. Yes, discipline is inconvenient, but if > you've got responsibilities, sometimes it's necessary. > > Steven Pemberton, CWI, Amsterdam. Wrong, Steven. It's not a racist slanging-match; it's a nationalistic, jingoistic slanging match. Nonetheless, you replied to the collective flame better than I. Many thanks. Interesting question, though: what code, written by Europeans, has our correspondent been reading? I was prompted to go back and look over the examples in Wirth's book on Modula-2 (second edition), and you know, they're ALL dreadful. Was he trying to save paper, or what? The best way to adver- tise a new language is to show clean, readable, elegant programs written in it. Maybe C hackers like the previous author, who like to work in a good, muscular, MAN's language, would be a little more open to some others if we had some better advertisements. Programming is such a matter of habit. Someone used to C, or Fortran (C is the new Fortran, you know), is mainly afraid of having to undergo the discomfort of learning something new, and for little obvious benefit. The advantages of strongly typed languages have never been sold properly, at least to an American audience. Most people who learn these things in college pick up the popular perception of strong typing as a hassle, as a violation of their "freedom of expression." I wasn't joking when I proposed that there was a cultural difference in responses to programming languages. What am I trying to say (what am I trying to say?)? If those of us who feel that strong typing is important ever want to be able to preach to anyone other than the converted, we have to be able to demonstrate an overwhelming and obvious benefit to potential users. That's tough. That means selling not just the language, but basic concepts of "good" software engineering. Is it possible to convince a C hacker that it's better to do the hard work up front? Maybe that's less emotionally satisfying than an overnighter with the debugger. Maybe it's hopeless. I've gotta go. -- Dan Frank "good news is just life's way of keeping you off balance."