Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!yale!cmcl2!kramden.acf.nyu.edu!brnstnd From: brnstnd@kramden.acf.nyu.edu (Dan Bernstein) Newsgroups: comp.lang.misc Subject: Re: Complexity of syntax Message-ID: <24748:Jan822:14:3891@kramden.acf.nyu.edu> Date: 8 Jan 91 22:14:38 GMT References: <1991Jan4.152846.15917@maths.nott.ac.uk> <11883:Jan502:21:0191@kramden.acf.nyu.edu> <1991Jan8.165344.13870@maths.nott.ac.uk> Organization: IR Lines: 36 In article <1991Jan8.165344.13870@maths.nott.ac.uk> anw@maths.nott.ac.uk (Dr A. N. Walker) writes: > In article <11883:Jan502:21:0191@kramden.acf.nyu.edu> > brnstnd@kramden.acf.nyu.edu (Dan Bernstein) writes: > >Every coding stylebook I've seen recommends that you give names to > >everything. It's a very good idea, you know. [ rebuttal ] Sorry. What I meant by ``everything'' was ``every object.'' You want references? How about Ledgard's books? > (though I personally > don't like multi-line defines). Me neither. The C preprocessor sucks. But every language has its share of syntactic problems. > It has a snag: I can imagine some very > hard-to-find bugs of the sort > { double c = some very messy expression; > #define FXPC ... as above ... That isn't a snag: if c is local then you'll pass it to fxpc as well. You can't criticize every language construct just because programs can abuse global variables. (I note that most compilers will warn you about the redefinition of c anyway.) > >> [anonymous functions] > >Who cares? How about because it's a pain to parse, compile, and read? > Why is it easier to parse, compile or read a function body when > it's tacked on to a declaration than when it occurs elsewhere? Because juxtaposition is heavily overloaded, and when you allow function definitions within expressions you start having to assign meanings to (a)(b)(c)(d)(e). ---Dan