[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH RFC v2 06/13] libxl: permit declaration after statement
Stefano Stabellini writes ("Re: [Xen-devel] [PATCH RFC v2 06/13] libxl: permit declaration after statement"): > On Mon, 28 Nov 2011, Ian Jackson wrote: > > I don't understand what the harm is in allowing declarations, with > > initialisation, freely mixed with code. > > > It makes the code harder to read; Naturally I disagree, but this is a matter of subjective taste as far as I can tell, unless you have something specific to point to. > it makes it more difficult to rearrange local variables in the future; I'm not sure what you mean by "rearrange local variables". The style where variables are declared only at the top of the file tends to result in long lists of local variables in declaration statements at the top of functions. Those long lists make editing the function somewhat more complex. Declaring variables in the same statement as they are initialised naturally makes "rearranging" them trivial. > it makes it more difficult to see how much stack your function is using; This is not relevant in libxl unless the objects are truly huge (in which case they shouldn't be on the stack at all). > it makes it more difficult to realize if you can reduce the amount of > local variables you are using. There is no benefit in trying to "reduce the amount of local variables" in userland C code compiled with a reasonable optimising compiler. The compiler will be able to do the same liveness analysis either way. > And it violates the current coding style. This is not an argument against changing the coding style. > I think that declaring variables at the beginning of the function is a > good programming practice in any language. I think that initialising variables at the time they are declared, where reasonable, is good programming practice in any language. > The three most important C codebases in the Xen project are: Linux, > Qemu and Xen. None of these allow mixing declarations and code, for a > good reason. I don't think libxl should have a different code style in > this regard, it would just be confusing. I don't see this as a particularly relevant consideration. There are lots of other ways our coding style differs from (say) Linux. Any competent C programmer will be familiar with both styles. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |