From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: The Dreaded "Missing Subunits"
Date: Thu, 19 Sep 2002 15:34:02 -0500
Date: 2002-09-19T15:34:02-05:00 [thread overview]
Message-ID: <uokd3ep47r4obd@corp.supernews.com> (raw)
In-Reply-To: wccfzw6n914.fsf@shell01.TheWorld.com
Robert A Duff wrote in message ...
>Every time you tell the tool to re-analyze the world, it has to do
this:
>(1) Expand the wildcard(s), to see if there are any new files or any
>files have been deleted. Then (2) check the timestamp on each source
>file to see if it has been changed. Then it has to re-parse all the
>files that have changed, or are new (and it has to forget about
>information related to deleted files). This process is quite fast,
even
>for large programs. It's essentially what 'make' does when you say
>'make main_program', or what 'gnatmake' does when told to build a
>program.
Careful! Don't assume that these steps are faster than just parsing the
file. When we were (re)designing our make tool, we found that reading a
timestamp took about the same amount of time as parsing 500 lines of a
file (this was on MS-DOS/Windows 95, I think). Moreover, saving the
gathered information on disk was complex enough that it cost the same as
parsing another 1000 lines of a file. Not many Ada files are bigger than
1500 lines. So we don't even try to save information about source files;
reparsing and rebuilding the information in memory is generally faster.
This is essentially the basis of Xtreme Programming, after all: don't
build something complex until you've proven that the simple version is
too slow. (Just another piece of common sense that someone is making a
lot of money selling to people without it.)
Randy Brukardt
next prev parent reply other threads:[~2002-09-19 20:34 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-09-12 22:49 The Dreaded "Missing Subunits" Peter Richtmyer
2002-09-13 8:16 ` Peter Amey
2002-09-13 8:51 ` Ada2005 temp solo child (was: " Peter Hermann
2002-09-14 2:33 ` Robert A Duff
2002-09-13 9:24 ` Emmanuel Briot
2002-09-13 20:46 ` Simon Wright
2002-09-14 0:25 ` Chad R. Meiners
2002-09-14 2:53 ` Robert A Duff
2002-09-14 20:20 ` Simon Wright
2002-09-16 13:48 ` Ted Dennison
2002-09-16 16:33 ` Keith Thompson
2002-09-17 2:42 ` Ted Dennison
2002-09-18 20:56 ` Robert A Duff
2002-09-19 8:26 ` Emmanuel Briot
2002-09-19 9:55 ` Preben Randhol
2002-09-19 10:53 ` Marc A. Criley
2002-09-19 11:26 ` Marin David Condic
2002-09-19 21:49 ` Dmitry A.Kazakov
2002-09-19 9:47 ` Preben Randhol
2002-09-20 2:42 ` Dmitry A.Kazakov
2002-09-19 15:33 ` Stephen Leake
2002-09-19 15:36 ` Preben Randhol
2002-09-20 22:31 ` Dmitry A.Kazakov
2002-09-16 15:10 ` Emmanuel Briot
2002-09-18 21:17 ` Robert A Duff
2002-09-18 22:41 ` Stephen Leake
2002-09-19 0:00 ` Robert A Duff
2002-09-19 1:39 ` Keith Thompson
2002-09-19 15:19 ` Stephen Leake
2002-09-19 4:02 ` Larry Kilgallen
2002-09-19 15:24 ` Stephen Leake
2002-09-19 20:34 ` Randy Brukardt [this message]
2002-09-19 14:44 ` Peter Richtmyer
2002-09-19 20:25 ` Randy Brukardt
2002-09-13 17:15 ` Mark Johnson
2002-09-13 20:56 ` Stephen Leake
2002-09-13 20:58 ` Simon Wright
2002-09-16 17:28 ` Peter Richtmyer
2002-09-19 20:05 ` Brian Gaffney
-- strict thread matches above, loose matches on Subject: below --
2002-09-19 1:41 Alexandre E. Kopilovitch
2002-09-19 14:25 ` Peter Hermann
2002-09-19 11:37 Grein, Christoph
2002-09-20 6:03 Grein, Christoph
2002-09-20 7:30 ` Preben Randhol
2002-09-20 14:01 ` Robert A Duff
2002-09-20 9:05 Grein, Christoph
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox