comp.lang.ada
 help / color / mirror / Atom feed
From: "Marin D. Condic" <mcondic-nospam@quadruscorp.com>
Subject: Re: PL/SQL -> Ada
Date: 2000/03/30
Date: 2000-03-30T16:02:57+00:00	[thread overview]
Message-ID: <38E3A49C.94F7FD9@quadruscorp.com> (raw)
In-Reply-To: 8bu5nd$5l0$1@nnrp1.deja.com

Robert Dewar wrote:
> My experience is that when people get frustrated in this
> situation, it is VERY often because they have some fundamental
> misconceptions, or are thinking using fuzzy logic :-)
> 
Well, I'm thinking of situations where I know *exactly* how many bytes
are occupied by specific items and I have to line those bytes up with
data coming from the outside world, so I can't accept alternative
representations and I can prove beyond any shadow of doubt that the
bytes will in fact fit just like I said they would and for various
language and/or implementation reasons the compiler says "Sorry, Chalie!
No can do." My problem isn't a misconception about the language or its
implementation. My problem is getting what I want out of the compiler.

> It would be instructive if you would give specific examples.
> Remember we are asking for examples where the dreaded language
> lawyers are the ones giving you trouble, not just cases where
> compilers fail to accept reasonable optional representation
> clauses.
> 
I said I won't do this in public because I don't want to besmirch
otherwise good products with gripes I normally take up with the vendor.
If I had a current problem where I thought I might get some help with
"how do I phrase this in Ada so I get blahblahblah out of the back end"
I might post it and ask for help. At the moment, I'm just bitching about
prior experiences that are water under the bridge. :-)

> Note that there is a well defined set of rep clauses that is
> REQUIRED to be accepted by the compiler, so presumably you
> must be talking about examples outside this set (otherwise
> you are simply pointing out bugs or shortcomings [no Annex
> C support] which is another matter entirely.
> 
Yup. They'd be outside of what a compiler is required by law to do. :-)

That, or they are corner-cases of intersecting rules that stop something
from being legal - even if reasonable.

Remember, Robert, that I'm as big a fan of Ada as you are and that I am
generally very happy with the fact that Ada gives us such wonderful
capabilities for handling data representations. I was just commenting on
the fact that overly-zelous adherence to "the law" sometimes puts people
off from the language because it can get in their way.


> > to reject your rep clause." My response ends up "That's all
> very
> > interesting and I'm so happy for you that your compiler
> doesn't have a
> > bug in it, but how the heck do I get what I *want* out of the
> damned
> > thing??!?!?!"
> 
> Usually this is a case in which you simply do not understand
> some important and critical semantic principle.
> 
I will always concede that when it comes to the syntax and semantics of
Ada that you are "The Man" and I make no claims to being an expert in
this area. What I do is *use* Ada on a very regular basis to build other
things. 99% of the time, I'm a happy camper and I think I'm pretty good
at understanding the syntax/semantics of Ada well enough to use its
constructs properly and in the way they are intended. Occasionally, I
misunderstand features and either because of help from outside or trial
& error, my understanding improves over time. The bulk of the time, Ada
and its various implementations serve me quite well.

Every so often, I've had a problem where I've said "This looks like a
very natural fit with feature XYZ..." I might get 95% of the solution
implemented and then go find the Devil in the details. Some small part
of the problem doesn't work because of language rules or implementation
limitations. The vendor may respond with "You can't do that - but you
could do it this way..." Then you end up tossing aside some very elegant
solution in favor of something much less attractive. You can eventually
get there somehow, but not the way you wanted to.

Probably, this is not just an Ada issue - other languages have their
restrictions as well. Its just that Ada has a tendancy to get more
"legalistic" than some other languages and it can get in the way. I
suppose if you want the benefits that come with Ada's legalisms (safety,
reliability, etc.) you occasionally have to put up with the down side.

MDC
-- 
=============================================================
Marin David Condic   - Quadrus Corporation -   1.800.555.3393
1015-116 Atlantic Boulevard, Atlantic Beach, FL 32233
http://www.quadruscorp.com/
m c o n d i c @ q u a d r u s c o r p . c o m

***PLEASE REMOVE THE "-NOSPAM" PART OF MY RETURN ADDRESS***

Visit my web site at:  http://www.mcondic.com/

"Because that's where they keep the money."
    --  Willie Sutton when asked why he robbed banks. 
=============================================================




  reply	other threads:[~2000-03-30  0:00 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-03-25  0:00 PL/SQL -> Ada Foo Bar
2000-03-25  0:00 ` Foo Bar
2000-03-26  0:00 ` Marin D. Condic
2000-03-27  0:00   ` Bill Meahan
2000-03-27  0:00     ` Marin D. Condic
2000-03-27  0:00       ` Brian Rogoff
2000-03-28  0:00         ` Bill Meahan
2000-03-28  0:00           ` Marin D. Condic
2000-03-28  0:00             ` Ted Dennison
2000-03-29  0:00               ` Marin D. Condic
2000-03-30  0:00                 ` Robert Dewar
2000-03-30  0:00                   ` Marin D. Condic [this message]
2000-03-30  0:00                     ` Tucker Taft
2000-03-31  0:00                       ` Marin D. Condic
2000-03-28  0:00             ` Charles Hixson
2000-03-28  0:00           ` Brian Rogoff
2000-03-27  0:00   ` Andreas Schulz
2000-03-27  0:00     ` Pascal Obry
2000-03-27  0:00     ` Marin D. Condic
2000-03-27  0:00     ` Tony Matthews
2000-03-28  0:00       ` Vladimir Olensky
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox