From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,df854b5838c3e14 X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: Gripe about Ada, rep specs that won't. Date: 1996/03/20 Message-ID: #1/1 X-Deja-AN: 143470849 references: <00001a73+00002504@msn.com> <3146E324.5C1E@lfwc.lockheed.com> <4i98gg$8n1@solutions.solon.com> <4ia41k$e04@solutions.solon.com> <4ik5ip$cl6@watnews1.watson.ibm.com> <4iq71v$cvr@news4.digex.net> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada Date: 1996-03-20T00:00:00+00:00 List-Id: Doug said "The problem is even worse for records (and variant records, which are another gripe of mine -- no true "union" -- don't get me started!). " I don't know what you mean by a "true" union, but I have this nasty feeling that what you meanis someting like the C union. Ada says no thankyou to such obvious disastrous holes in the type system. If you are programming at this level, you need some definite indication that you are breaking the type system. Unchecked conversion may seem hideous, and that's the point. Breaking the type system *is* hideous. As for obeying every possible rep clause, it would be a mistake to require compilers to do things that do not fit the hardware well, because the effort to implement these would be very large, and the benefit to most users very small, since most Ada programmers do not want to write code that generates hidden inefficiencies. There is certainly nothing in the spec that stops implemetors implementing all the rep clauses they find useful. The fact that they are not implementd almost certainly reflects the fact that the market does not demand that they be implemented. Do not look to the standard to force implemetors to implement things that you want, but that the general Ada community does not want! I can say from GNAT's point of view that our choices of what to implement in the rep clause area are very much market driven. We implement what we see our customers actually using and needing. So far, we saw no customer who needed tightly packed 9-bit fields. If we saw customers who needed this feature, it would appear in GNAT :-)