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=2.0 required=5.0 tests=BAYES_00,FORGED_MUA_MOZILLA, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,859116256d0a7bc2 X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.68.223.73 with SMTP id qs9mr3770982pbc.7.1343789455949; Tue, 31 Jul 2012 19:50:55 -0700 (PDT) Path: g9ni9632825pbo.0!nntp.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!nrc-news.nrc.ca!goblin1!goblin2!goblin.stu.neva.ru!aioe.org!.POSTED!not-for-mail From: "Nasser M. Abbasi" Newsgroups: comp.lang.ada Subject: Re: basic question on nested packages Date: Sat, 28 Jul 2012 07:52:10 -0500 Organization: Aioe.org NNTP Server Message-ID: References: Reply-To: nma@12000.org NNTP-Posting-Host: 9ii5QNw33OfeoTzEH8w9ug.user.speranza.aioe.org Mime-Version: 1.0 X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20120713 Thunderbird/14.0 X-Notice: Filtered by postfilter v. 0.8.2 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Date: 2012-07-28T07:52:10-05:00 List-Id: On 7/28/2012 7:19 AM, Niklas Holsti wrote: > On 12-07-28 06:22 , Nasser M. Abbasi wrote: >> I'd like to improve the structure of the Ada lapack binding >> to make it easier to use. >> >> The official Fortran lapack is structured as follows >> >> lapack >> + >> | >> +----------------+-------------------+ >> | | | >> driver routines computational auxiliary >> .... >> >> Hence it will be, for the API's >> >> lapack.driver.foo() >> lapack.comp.foo() >> lapack.aux.foo() >> lapack.IO.foo() > > I'm going to play devil's advocate and ask why you don't put it all in > one package, lapack. > > Is there any benefit to writing a call as "lapack.driver.SGESV" instead > of directly as "lapack.SGESV"? Is there some risk of ambiguity, with the > name SGESV defined with different meaning in the different packages? > Main reason is just to keep things organized as in the Fortran tradition of the original lapack: http://www.netlib.org/lapack/lug/node22.html " The subroutines in LAPACK are classified as follows: driver routines, .... computational routines..... auxiliary routines.... " So someone used to using lapack would find it easier if there are 3 packages that correspond to those 3 areas. I assume that is the reason Wasu Chaopanon (who made the binding) did it this way as you can see here (one of hosting sites for the binding) http://www.mirrorservice.org/sites/ftp.cs.nyu.edu/pub/gnat/OLD/contrib/lapack-ada/README So, I think it is better to keep this layout? But putting all the packages all under one package name "lapack" in order to reduce name space is all what I did. thanks, --Nasser