On Fri, Nov 21, 2014 at 01:24:36PM +0000, Ralph Corderoy wrote: > : > > Indeed, this is true for (almost) all groff header files. For some > > reason, Clark decided to code it that way, not providing guards > > against loading header files multiple times. I haven't changed that. > > Gets my vote. :-) It's a Bell Labs style of programming seen widely in > Plan 9. Rob Pike has also written about it since the 1980s. Header > files should not be #include'd multiple times; nor should they #include > others. They should state their needs and be #include'd once in the > C(++) file, in an appropriate order. Guards are verboten.
Rant: Sounds to me like blaming the victim. A simple #include_once directive in the preprocessor would fix the multiple include problem. > http://talks.golang.org/2012/splash.article Go at Google: Language Design in the Service of Software Engineering I found that Go language article by Pike worth reading. Now it is a simple matter of translating Groff into Go. ;) -- Mike Bianchi