Re: Ada exception block does NOT work?



"Robert A Duff" <bobduff@xxxxxxxxxxxxxxxxxxxx> wrote in message
news:wcck6ig89oz.fsf@xxxxxxxxxxxxxxxxxxxxxxx
> ...
>
> Agreed. And to some folks, "pointer" implies "you can do arithmetic on
> it" (i.e. C-style pointers).
>
> There's no uniform terminology across programming languages.
> That's not surprising, given that programming language design
> is such a new art.

This lack of uniform terminology can cause confusion. For example, what does
"package" mean? In some languages, a package is little more than a name
space. In Ada, it is something far more substantial.

>>... It certainly does not hurt to introduce a new term
>> to avoid potential misunderstandings.
>
> I think it does hurt to introduce new terms -- we end up with 37
> different ways of referring to the same thing (and folks who talk about
> "methods" have trouble communicating with folks who talk about
> "procedures" and so on).

I'm in full agreement with the notion that new terms should not be
introduced unless they represent new concepts. The arguments over "throw"
versus "raise", "catch" versus "handle" are silly, and divert attention from
the real issues.

> True. But they're pretty close. The both "point at" or "refer to"
> things. There are differences in which ones you can copy and whether
> dereferencing is explicit or implicit and so on.
>
> Interesting that we "dereference" pointers. ;-)
> As opposed to "depointering" them.

The English language is full of such quirks, even outside of programming.
Why do we drive on the parkway and park on the driveway?

> ...
>> For the record, I know of no Pascal compiler that implements a pointer as
>> anything other than a machine address.
>
> That's true. And almost all Ada compilers use single-machine-address
> to represent almost-all access types.

At least major Ada compiler, GNAT, does use "fat" pointers for accessing
unconstrained arrays unless forbidden by representation clauses.

> ...
>> Now that is an interesting concept. I am fond of divorcing the language
>> from
>> platform constrains when practical. There are, however, some practical
>> concerns about this proposal. An Ada 'bignum' type would undoubtedly be a
>> controlled type, introducing more overhead than one would expect in a
>> scalar
>> type.
>
> Well, one has to learn what to "expect" in terms of efficiency.
>
> In a garbage-collected implementation of Ada, bignum would not need to
> be a controlled type.
>
> If I said "1..2**80", I would "expect" 3 words to be allocated typically
> on the stack, with no heap usage, and no need for either controlled
> types or GC. If I said "1..2**1000", I would expect heap usage, and
> consequent controlled types or GC. If I'm writing a hard real-time
> embedded system, I probably won't say "1..2**1000".
>
> But I'm not even allowedd to say "1..2**80" in any Ada compiler I know
> of, and I can't even count on "1..2**35" portably. Sigh.

Good point. I like the idea of being able to create a new integer type
without concern over details such as machine representation.

> - Bob


.



Relevant Pages

  • Re: pointer questions
    ... > True, but then you're not using Ada, you're using Ada and X, which I ... > so the code I write doesn't contain those access types. ... >> If I designed a language, I would go even further in that direction. ... >> I would allow mutually recursive types without intervening pointers. ...
    (comp.lang.ada)
  • Re: pointer questions
    ... I use pointers all the time. ... anonymous access types -- there are probably hundreds of those ... You need pointers in Ada whenever you have complex data ... If I designed a language, I would go even further in that direction. ...
    (comp.lang.ada)
  • Re: Various Language Architecture Questions
    ... Why limit yourself to a language as safe as Java? ... Ada has very strict scoping and lifetime rules. ... Ada does not confuse arrays and pointers like C and C++. ... You cannot coerce a real number type to or from an integer number ...
    (comp.lang.ada)
  • Re: A couple of questions
    ... > I am new to ADA95 but not to programming in general, ... You can now start writing Ada not ADA as your first rite of passage ... with pointers or more precisely pointers to pointers and ... And most of the language behaves as ...
    (comp.lang.ada)
  • Re: TV show delays due to sports
    ... Some programming languages, or add-on packages to them, keep track of ... evaluation of the language for use by the CEGB. ... this group, on hearing this said that I'd love Ada, as it was ... When John heard this, he ...
    (rec.arts.sf.fandom)