Re: Clause "with and use"

From: Russ (18k11tm001_at_sneakemail.com)
Date: 11/11/03


Date: 10 Nov 2003 23:20:12 -0800

Marin David Condic <nobody@noplace.com> wrote in message news:<3FAF8C99.5040201@noplace.com>...

> Obviously, there are limited resources for modifying Ada compilers.
> Obviously, there is a large corpus of existing Ada code that must not be
> broken by language-rule changes. Just as obviously, there are
> implications that are not intuitively obvious to the casual observer
> when adding something like the infamous "+=" or now the "with and use".
> Hence, it ought to be obvious that any proposed language change had
> better have some significant food-value associated with it to make it
> worth the research time into implications, the compiler changes
> necessary and the possible risk to breaking any existing code. I don't
> see any big advantages in what has been proposed here - not enough to
> make it worth the effort.
>
> It would be more productive to figure out if there is some major
> shortcoming in Ada or some major capabilities that Ada could use rather
> than worry about relatively trivial syntax changes that don't address
> some gaping hole in Ada's capabilities.

If the choice of programming languages in the real world were based
strictly on objective, rational considerations by language experts,
than what you say might be wise. Unfortunately, that just isn't how
the real world works, and I think your advice is extremely unwise.

Suppose you were selling a house. You hire an expert home inspector,
and he says you've got a leaky roof and some plumbing problems. Then
you hire a real estate agent. She comes out and advises you to remove
the clutter from the front yard and do some basic gardening work to
give it some "curb appeal."

Well, you don't have a lot of money, and you know what's important.
The leaky roof *must* be fixed, but the clutter in the yard is
"cosmetic" stuff, and it can take a back seat to the "important"
stuff. You have a limited budget, and you aren't about to waste it on
trivial cosmetic stuff.

I think that's a very good analogy to what you are saying. The
"context" section at the beginning of nearly every Ada file is like
the front yard of a home. It's the first thing anyone who reads the
file sees. If it's unnecessarily cluttered, people may not complain
about it, but it will leave a lasting first impression.

What you're saying is that we should forget about the cosmetic stuff,
but any competent real estate agent will tell you that is sheer folly.
Yes, fix the roof if it needs to be fixed, but for crying out loud
don't leave the junk piled in the front yard. The loss in market value
will *greatly* exceed the cost of removing the clutter -- even if you
hire the most expensive junk hauler in the country. Smart buyers will
love you, of course, because they will gladly remove the clutter
themselves -- it'll cost them about 5% of the $5000 they save on the
purchase price of the house.

Making "use" in a context clause imply "with" is not a great technical
challenge. For Pete's sake, I could probably write a Python script in
less than an hour to do the job (including a half hour to think about
it, and 15 minutes to test it). Yet it would not break any existing
code, and anyone who wants to continue doing it the old way would be
perfectly free to do so.

I have always been impressed with your level of technical knowledge of
Ada, but I am seriously concerned with your lack of "marketing" sense.
You said yourself in a recent post that languages are often chosen for
the "wrong" reasons, such as similarity to familiar languages.
Unnecessary clutter at the beginning of each file cannot possibly help
to sell Ada, but it can certainly hurt. And it might hurt much more
than you realize, because you're so used to the clutter you probably
don't even notice it anymore.



Relevant Pages

  • Re: why learn C?
    ... I can do this error in Ada quite easily. ... have that option in any of the C family of languages. ... rigorous software requirements prior to beginning the programming process. ... before dealing with the details of that design. ...
    (comp.lang.ada)
  • Re: ADA Popularity Discussion Request
    ... big corporation backing Ada, in the same way that many of the ... or much liked by many non-professional programmers. ... developing and marketing tools supporting these languages. ... I think Python and Ruby are both excellent designs. ...
    (comp.lang.ada)
  • Re: How come Ada isnt more popular?
    ... Most programming languages were terrible at that time, ... And we talked about "Why isn't Ada more popular?". ... Adopting Java ...
    (comp.lang.ada)
  • Re: Static vs. Dynamic typing (big advantage or not)---WAS: c.programming: OOP and memory management
    ... >> dynamic camp just argue against explicit contracts. ... > I have used static type checking languages and have found ... Ada 95 is the closest one. ... >> with proofs that having them would lead to loss of static checkability here ...
    (comp.object)
  • Re: Static vs. Dynamic typing (big advantage or not)---WAS: c.programming: OOP and memory management
    ... >> dynamic camp just argue against explicit contracts. ... > I have used static type checking languages and have found ... Ada 95 is the closest one. ... >> with proofs that having them would lead to loss of static checkability here ...
    (comp.programming)