Malcolm McLean wrote, On 14/04/07 09:09:
This is an important point.
Finding an objection to evidence doesn't make that evidence disappear,
If the objections are valid then it means the evidence is not relevant.
or turn the opposite case into a "mere assertion" position.
If you have no evidence for which there are not valid objections then
your position is merely your opinion.
You seldom have exactly the evidence you would like.
That is why people conduct studdies. Some times those studdies can be
done by taking the raw data from a number of other studdies, but you
have to design your study first then go and collect the data from the
other studies.
> For instance the
example I gave was Java, not C, it was from a selection of about ten
applications, and the study wasn't designed to show what I asserted, the
conclusion had to be derived by looking at the evidence with some
assumptions.
Assumptions which have to be justified, especially if challenged. You
have not given any justification for your assumptions (which you did not
state) or explanation of why my challenges are wrong.
However whilst your objections were legitimate, in fact the idea that
Java code is very different from C code in its use of arrays, that
server applications use arrays in a very different way from most general
applications, that array access instructions don't bear a very tight
relationship to index calculations, and so on, aren't all that
plausible.
I gave specific reasons why certain classes of applications do a lot of
integer work that is not to do with indexing. Here is another, a number
of the SQL data types are either integer types (which will be impleneted
as integer types) or scaled integer types (which will be implemented as
integer types with the scaling stored as part of the column definition.
The manipulation of those integer types will be on the basis of SQL
queries, summing costs etc. On financial applications, such as Sun
Financials, they make use of such types a lot, and hardly any use of
arrays. I suspect that there is a LOT of financial SW out there where
they do not want to use floating point for numbers because the law does
not permit them to have rounding errors (or specifies specific rounding
which you won't be able to guarantee with floating point numbers).
Probable most "indexing" done by a database is indexing in to a file,
not memory, so by that argument we need int to be large enough to store
the size of the largest table that might be required, and that is
independent of the processor!
> You would need to do a proper study to establish the matter
beyond all possible doubt.
You would need to do rather more than look at one very biased sample to
have any significant evidence.
> However do you think I could get a research
grant for people to sit tagging up C code to establish how much indexing
is done? It would be expensive and wouldn't tell us very much that we
don't know already.
So far the only person to jump in on either side is Richard Heathfield,
and he seems to take the opposing view. So another biased sampling shows
that most C developers either have no opinion on the subject or disagree
with you.
> Most scientific studies have tight cost limits and
aren't as rigorous as we would like. That doesn't mean that they are
useless.
True, but they have vastly more rigour than looking at a sample that
says it was biased and then using the data for something the collection
was not designed for.
You'll often come across this fallacy in a much more gross way than you
have made it. I can find an objection to the evidence, therefore it
disappears.
If a sample can be shown to be biased for the use it is being put to
then you cannot use it on its own as evidence for your point. If you
collect data from enough other studdies with different biases and can
show they cancel out, or you can come up with a way to counteract the
bias (with evidence supporting your method) then you can use it.
Note that I do not claim to know whether overall integer types are used
more for indexing and related operations or for other purposes. I only
claim that my experience contradicts it and that you have no significant
evidence to support your personal opinion.