Re: base/derived name unhiding but with ctors

From: Alf P. Steinbach (alfps_at_start.no)
Date: 03/29/04


Date: Mon, 29 Mar 2004 04:59:17 GMT


* Leor Zolman <leor@bdsoft.com> schriebt:
>
> Hardly. I would never define the term "call" in terms of some "machine
> code part"; I'd define it in terms of writing an expression (not a
> type name) in C++ followed by a pair of parentheses. This would then
> represent a "conceptually direct call" to a function identified by the
> expression before the parens. That directness includes the idea that,
> if the function returns a value, that value can then be used by the
> surrounding code, and if it does not, then there's no value to be used
> by the surrounding code (and any attempt on the part of the code to
> use one constitutes an error). The crux of my point. is that
> constructors just don't fit into this scenario.

Well, one problem with that terminology is that, when reading those parts
of the standard that refer to constructor "calls", or discussions in this
newsgroup about e.g. "eliding a constructor call", one must then engage
exactly the flexible context-dependent semantic analyzer that the simple
syntax-oriented terminology is (presumably) intended to make irrelevant.

And so that terminology allows clarity only when a large part of reality
is suppressed, including large parts of the standard.

And when those parts of reality intrude one must then explain that in this
broader context the words suddenly have different meanings, not because
of the subject matter (which is the normal context sensitivity of words)
but because of the larger setting in which the subject is discussed, e.g.
that halfway down the discussion someone suddenly quotes the standard.

-- 
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?


Relevant Pages

  • Re: Simple inheritence question
    ... by eliminating 'bool b' from the constructor in the second example and letting the constructor set the value of is_blank based upon the value of letter. ... Note that with DbC, we can put a contract on the constructor that keeps the input to the constructor within the bounds, or a space. ... The problem with the DbC approach is that one has to make an evaluation of whether there will be an inconsistency in the data _in every access context_ whenever there is a change to the way the data is modified. ... If one eliminates the dependency via normalization that complication is /never/ an issue so it doesn't even need to be considered during DbC analysis. ...
    (comp.object)
  • Re: C as a scripting language
    ... in the context of the C Standard. ... This question is being raised in the context of section 4p5, which does not restrict the 'output' to be stream output. ... However, those same definitions also exclude data written to a file, for precisely the same reason: for some of those definitions, the reason is that the data is not perceived by the user; for other definitions, it is because the data has not exited the computer system. ...
    (comp.lang.c)
  • Re: Is this math test too easy?
    ... >> has a direct meaning unabmbiously and independant from context. ... even have a notation like circle addition or circle multiplication ... that MEANS that it doesn't have a standard interpretation, ... the main problem with standardizing notation is ...
    (sci.math)
  • Re: The Fourier transform in nature not just time<>frequency domain
    ... Transform also describes the relationship in electromagnetics ... vary, but maths doesn't. ... validity of maths in the context of the FT - which means ... standard solution for this abstract core problem. ...
    (comp.dsp)
  • Re: Trouble with factory pattern
    ... the Factory itself goes and gets ... The former is most useful when the Context has all the necessary data, ... but only some of it is needed for each constructor. ... The specification object is useful when the decision data is not readily ...
    (comp.object)