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,c7d533acec91ae16 X-Google-Attributes: gid103376,public From: "Tarjei Tj�stheim Jensen" Subject: Re: Question for the folks who designed Ada95 Date: 1999/04/27 Message-ID: <7g4ae3$hjh2@ftp.kvaerner.com>#1/1 X-Deja-AN: 471440648 Content-Transfer-Encoding: 7bit References: <7g2qu4$ca4$1@usenet.rational.com> <7g3b5g$p92$1@nnrp1.dejanews.com> Content-Type: text/plain; charset="iso-8859-1" X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3 Organization: Kv�rner Oil & Gas Mime-Version: 1.0 Newsgroups: comp.lang.ada Date: 1999-04-27T00:00:00+00:00 List-Id: Robert Dewar wrote : >What we do in GNAT to address this problem is to make the >shift operators intrinsics. Here is a typical declaration >from the Interfaces spec: > > pragma Import (Intrinsic, Shift_Left); > >The nice thing about this approach is that indeed you >*can* apply this intrinsic to a user defined type. For >example you can put the following in your code. > > > type My_Modular is mod 2**Integer'Size; > function Shift_Left > (Value : My_Modular; > Amount : Natural) > return My_Modular; > pragma Import (Intrinsic, Shift_Left); I think the person who asked the question whould have preferred something that was inline instead of a function call. At least that would _look_ efficient. >and this will work fine. Of course this is not guaranteed >to be portable (perhaps the ARG should look at this one, >since it is a perfectly legitimate implementation >decision). While you are at it, why not get us [ and ] for arrays (in addtion to, not instead of parenthesises). I really want to write a[4] := 3 instead of a(4) := 3. I know that when Ada 83 was defined one could not rely on [ and ] being available (Pascal used (. and .) instead of [ and ] if my memory serves me right). However these days I see no reason not to comply with the common use of square brackets with arrays. Arrays as functions? Since when could you assign to a function?? Greetings,