9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: jmk@plan9.bell-labs.com
To: 9fans@cse.psu.edu
Subject: Re: [9fans] new compilers
Date: Sat, 25 Mar 2006 20:46:00 -0500	[thread overview]
Message-ID: <1388b3a83891b000d624805b51308b94@plan9.bell-labs.com> (raw)
In-Reply-To: <34ae256d4297ee458f40543f2c83db2d@quanstro.net>

On Sat Mar 25 16:57:42 EST 2006, quanstro@quanstro.net wrote:
> eighty-megs and constantly swapping. and that's just the editor.
>
> if you look at the apple link i couldn't resist cluttering the list with,
> you'll love some of the ways they work around the fact that gcc is slooow.
> precompiled headers, speculative compiling (you saved a c file, we'll
> compile it now, just in case you might need it), distcc, etc.
>
> that's not to mention the bizzare workarounds to their slow linker.
>
> - erik

I find the notion of pre-compiled headers for anything other than
a very special situation rather odd. Although the example given in
the link is trivial it demonstrates an unthinking inefficiency we
see all too often in practice:

	there's a file foo.c which has an accompanying file foo.h which
	is only ever included in foo.c

This is a poor idea in many ways and is perhaps one of the reasons
we see all these other things being necessary to make the user believe
that things are happening faster.

Recently I was poking around in a multi-file open source driver and
came across more than one instance of the following which pulled me
up short (names changed to protect the guilty):

	foo.h contains the following:

		#define THING {					\
		{ 1234, XXX_YY0, ZZZ0 },		\
		{ 5678, XXX_YY1, ZZZ1 },		\
		... 200 more of these ...
		}

	and is only included in foo.c which contains one instance of
	its use:

		static const struct
		thing thing_table[] = THING;

It would never occur to me to #define a table like that. Age, I
suppose.

--jim


  reply	other threads:[~2006-03-26  1:46 UTC|newest]

Thread overview: 125+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-25 13:56 Russ Cox
2006-03-25 19:48 ` David Leimbach
2006-03-25 19:53   ` Burton Samograd
2006-03-25 19:59     ` David Leimbach
2006-03-25 20:02   ` Charles Forsyth
2006-03-25 21:25     ` Brantley Coile
2006-03-25 21:28     ` quanstro
2006-03-25 21:33       ` Brantley Coile
2006-03-25 22:42         ` quanstro
2006-03-25 22:46         ` quanstro
2006-03-26  1:46           ` jmk [this message]
2006-03-26  2:52             ` quanstro
2006-03-26  8:14               ` Lyndon Nerenberg
2006-03-26  8:41                 ` Lyndon Nerenberg
2006-03-26 17:06                   ` Bruce Ellis
2006-03-26 17:00             ` David Leimbach
2006-03-27 17:31             ` rog
2006-03-27 19:01               ` Charles Forsyth
2006-03-27 19:15                 ` Paul Lalonde
2006-03-27 19:21                   ` Bruce Ellis
2006-03-30 17:41                   ` rog
2006-03-30 17:44                     ` Charles Forsyth
2006-03-30 18:24                       ` Skip Tavakkolian
2006-03-30 17:51                     ` Christoph Lohmann
2006-03-30 17:54                       ` Sape Mullender
2006-03-30 18:30                         ` Skip Tavakkolian
2006-03-30 18:43                           ` Gabriel Diaz
2006-03-30 18:48                             ` Skip Tavakkolian
2006-03-30 18:51                               ` Gabriel Diaz
2006-03-30 18:51                             ` Charles Forsyth
2006-03-30 21:00                           ` Bakul Shah
2006-03-30 23:16                             ` Skip Tavakkolian
2006-03-30 23:23                             ` Skip Tavakkolian
2006-03-31  6:16                               ` uriel
2006-03-31  7:56                           ` Bruce Ellis
2006-03-31  9:04                             ` Skip Tavakkolian
2006-03-30 23:32                         ` Adrian Tritschler
2006-03-30 17:57                       ` rog
2006-03-30 18:27                         ` rog
2006-03-30 20:46                           ` Roman Shaposhnick
2006-03-31  1:15                             ` Steve Simon
2006-03-31  1:24                               ` Russ Cox
2006-03-31  2:00                               ` Joel Salomon
2006-03-31  2:26                               ` Martin C. Atkins
2006-03-31  8:46                                 ` Charles Forsyth
2006-03-31  8:49                                   ` Bruce Ellis
2006-03-31 21:40                                 ` Taj Khattra
2006-03-31  4:24                             ` Jack Johnson
2006-03-31  4:33                               ` veritosproject
2006-03-30 17:58                       ` Charles Forsyth
2006-03-30 18:03                       ` jmk
2006-03-30 18:13                         ` Brantley Coile
2006-03-30 18:57                       ` Burton Samograd
2006-03-30 19:15                         ` David Leimbach
2006-03-30 19:22                           ` Charles Forsyth
2006-03-30 19:29                             ` Rob Pike
2006-03-30 19:58                               ` David Leimbach
2006-03-28  0:30 erik quanstrom
2006-03-28  0:40 erik quanstrom
2006-03-28 17:52 ` Lyndon Nerenberg
2006-03-28 18:15   ` Bakul Shah
2006-03-28 18:29     ` Sape Mullender
2006-03-28 18:52       ` LiteStar numnums
2006-03-28 19:15         ` Victor Nazarov
2006-03-29 16:33           ` Burton Samograd
2006-03-29 21:17             ` Francisco J Ballesteros
2006-03-29 21:44               ` Wes Kussmaul
2006-04-02 18:17       ` Aharon Robbins
2006-04-02 18:33         ` Bruce Ellis
2006-04-02 19:47         ` lucio
2006-04-02 20:12           ` Skip Tavakkolian
2006-04-02 20:16             ` LiteStar numnums
2006-04-03  4:35               ` lucio
2006-04-03  5:38                 ` George Michaelson
2006-04-03  6:45                   ` Lyndon Nerenberg
2006-04-03  5:38                 ` LiteStar numnums
2006-04-03  8:31                 ` Lyndon Nerenberg
2006-04-03  9:36                   ` uriel
2006-04-03 12:50                     ` Martin C. Atkins
2006-04-03  9:39                   ` lucio
2006-04-03 13:46                 ` Brantley Coile
2006-04-03 14:30                 ` David Leimbach
2006-04-03 16:02                   ` Bruce Ellis
2006-04-03 20:41                     ` Jack Johnson
2006-04-03 21:02                       ` uriel
2006-04-03 21:32                         ` Ronald G Minnich
2006-04-03 23:42                           ` Bruce Ellis
2006-04-04  0:29                           ` Anthony Sorace
2006-04-04  5:02                             ` Bruce Ellis
2006-04-04  3:15                         ` Jack Johnson
2006-04-04  3:28                         ` Jack Johnson
2006-04-04  6:31                           ` David Leimbach
2006-04-04  4:21                         ` lucio
2006-04-05  1:00                         ` Brantley Coile
2006-04-05  4:35                           ` Bruce Ellis
2006-04-04 12:31                       ` rog
2006-04-03  3:17           ` plan9
2006-04-03  4:17             ` lucio
2006-03-29  1:18 erik quanstrom
2006-03-30 20:14 Steve Simon
2006-03-31  9:17 Fco. J. Ballesteros
2006-03-31  9:40 ` Skip Tavakkolian
2006-03-31  9:42 ` Skip Tavakkolian
2006-03-31  9:43 ` Charles Forsyth
2006-03-31  9:46 ` Charles Forsyth
2006-03-31  9:48   ` Skip Tavakkolian
2006-03-31  9:56     ` Skip Tavakkolian
2006-03-31 10:01       ` Bruce Ellis
2006-03-31 10:03       ` Charles Forsyth
2006-03-31 10:08         ` Skip Tavakkolian
2006-03-31 14:58       ` David Leimbach
2006-03-31 15:01         ` Bruce Ellis
2006-03-31 22:02 ` Taj Khattra
2006-04-03 16:21 ` Ronald G Minnich
2006-04-03 17:17   ` Paul Lalonde
2006-04-03 19:01     ` Artem Letko
2006-04-03 19:22       ` Paul Lalonde
2006-03-31 12:31 Fco. J. Ballesteros
2006-03-31 12:53 ` Charles Forsyth
2006-03-31 13:23 ` Charles Forsyth
2006-03-31 14:42   ` Bruce Ellis
2006-03-31 13:27 erik quanstrom
2006-03-31 14:47 ` Bruce Ellis
2006-03-31 14:42 erik quanstrom
2006-04-03 22:54 erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1388b3a83891b000d624805b51308b94@plan9.bell-labs.com \
    --to=jmk@plan9.bell-labs.com \
    --cc=9fans@cse.psu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).