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,a40f6d312191b68e X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit X-Received: by 10.224.205.65 with SMTP id fp1mr16256149qab.4.1356635889788; Thu, 27 Dec 2012 11:18:09 -0800 (PST) Received: by 10.49.48.41 with SMTP id i9mr4772872qen.36.1356635889760; Thu, 27 Dec 2012 11:18:09 -0800 (PST) Path: k2ni3151qap.0!nntp.google.com!ee4no2597316qab.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Thu, 27 Dec 2012 11:18:09 -0800 (PST) In-Reply-To: <9242b176-7050-46f8-a65d-6091aa4b2de8@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=69.153.58.182; posting-account=lJ3JNwoAAAAQfH3VV9vttJLkThaxtTfC NNTP-Posting-Host: 69.153.58.182 References: <9242b176-7050-46f8-a65d-6091aa4b2de8@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <0bc6a851-8eea-4279-b616-3f7895049d4b@googlegroups.com> Subject: Re: A thicker binding for Lapack From: Shark8 Injection-Date: Thu, 27 Dec 2012 19:18:09 +0000 Content-Type: text/plain; charset=ISO-8859-1 Date: 2012-12-27T11:18:09-08:00 List-Id: On Thursday, December 27, 2012 12:48:14 PM UTC-6, jpwoo...@gmail.com wrote: > > Another issue to resolve is that lapack, being Fortran, defines > column-major storage while Ada is row-major. Parameters passing > between these two conventions evidently must be transposed. This is a non-issue; Ada allows for the specification of row- or column-major ordering via the Convention pragma (or aspect). Example: B : Array( Integer Range <>, Integer Range <> ) of Integer:= (1..5 => (1..5 => 0) ); Pragma Convention( Fortran, B ); -- Forces B to use col-major order. -- NOTE: this pragma (or aspect) can be attached to the TYPE definition. Type Test_Array is Array( Integer Range <>, Integer Range <> ) of Integer with Convention => Fortran; C : Test_Array:= (1..5 => (1..5 => 0) );