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.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,ab1d177a5a26577d X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!news2.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!transit3.readnews.com!news-out.readnews.com!postnews3.readnews.com!not-for-mail Date: Fri, 18 Feb 2011 15:27:46 -0500 From: Hyman Rosen User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: What's wrong with C++? References: <1ee1a434-4048-48f6-9f5e-d8126bebb808@r19g2000prm.googlegroups.com> <4D5C1824.3020509@obry.net> <21443638-5ec6-49d4-aafe-6fbc1e59daba@r19g2000prm.googlegroups.com> <87d2371e-af91-4d6a-8d5b-3ddb972d84fd@k17g2000pre.googlegroups.com> <87zkpuze5e.fsf@ludovic-brenta.org> <4d5d791f$0$17330$882e7ee2@usenet-news.net> <4d5da93f$0$17330$882e7ee2@usenet-news.net> <4d5daeea$0$17330$882e7ee2@usenet-news.net> <1c9e385a-b3f8-4221-9082-029e389c6ba4@r4g2000prm.googlegroups.com> <4d5ed0c4$0$2975$882e7ee2@usenet-news.net> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Message-ID: <4d5ed63d$0$2975$882e7ee2@usenet-news.net> NNTP-Posting-Host: 89677218.usenet-news.net X-Trace: DXC=G3MlK72_mNJ?_@UPHmCPB@^oXGM_6\KV@mX0AG3X_jUObf?dI@ae:i@90V@UkD_BF@[^oPZAU8TELMR7dm@8nMcHOU=0K9e On 2/18/2011 3:10 PM, Edward Fish wrote: > But there's nothing that says bit pattern 0010 is Decimal 2. If you want to associate your literals with bit patterns, you could do, similar to the 83 Rationale suggestion : (I don't know Ada, so pardon if this isn't quite right). PermissionsPatterns: constant array(Permissions) of Integer := (Read => 2#0001#, Write => 2#0010#); But when you go around telling the compiler that it should actually represent Read as 2#0001# and Write as 2#0010#, you're not going to convince me that this isn't treating enumerations as if they are integers. Hey, can I do this? If not, why? Type Constants is ( Pi, E, Phi ); For Constants use record Pi => 3.141592654, E => 2.718281828, Phi => 1.618033989 end record;