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=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,c3d0e99376a4f379 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!news2.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!nx01.iad01.newshosting.com!newshosting.com!140.99.99.194.MISMATCH!news-in-02.newsfeed.easynews.com!easynews.com!easynews!hwmnpeer01.phx!news.highwinds-media.com!hw-filter.phx!newsfe09.phx.POSTED!53ab2750!not-for-mail Reply-To: "Nasser Abbasi" From: "Nasser Abbasi" Newsgroups: comp.lang.ada References: <1187235764.909133.180650@19g2000hsx.googlegroups.com> Subject: Re: Interested about number crunching in Ada Organization: home X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.3138 X-RFC2646: Format=Flowed; Original X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 Message-ID: Date: Wed, 15 Aug 2007 23:43:02 -0700 NNTP-Posting-Host: 68.5.76.154 X-Complaints-To: admin@cox.net X-Trace: newsfe09.phx 1187246585 68.5.76.154 (Wed, 15 Aug 2007 23:43:05 MST) NNTP-Posting-Date: Wed, 15 Aug 2007 23:43:05 MST Xref: g2news2.google.com comp.lang.ada:1458 Date: 2007-08-15T23:43:02-07:00 List-Id: "holst" wrote in message news:1187235764.909133.180650@19g2000hsx.googlegroups.com... > Hi! > > I have stumbled upon Ada95 and I have found that a recent addition was > made to the language standard [1]. An addition I, a student of > scientific computing, are highly interested in. > > What is the best online resource to get into the core of the new high > performance vector and matrix features? Does there exist some book > (yet) which covers this area? Or any other field which might be > related to me (concurrency, Fortran bindings etc.)? I know C and > Pascal good and I have a good start into Fortran 90/95. > > I applicate your time and help. I hope that, with a push in the right > direction I will be a productive "Ada numerics hacker" in a near > future. :-) > > [1] http://www.ada-auth.org/cgi-bin/cvsweb.cgi/AIs/AI-00296.TXT > > -- > Henrik Holst, Sweden > http://www.nada.kth.se/~holst/contact.shtml > Number of productive hours in C++: of > I am also interested in this subject. Check Numeric Annex for Ada 2005 http://www.adaic.org/standards/05rat/html/Rat-7-6.html It seems to have support for Vector and Matrix objects, and the following operations: (there is a version for real and complex) function Unit_Vector function Transpose function Solve function Inverse function Determinant function Eigenvalues procedure Eigensystem function Unit_Matrix This is an old paper called "Can Ada replace FORTRAN for numerical computation?" published in 1981 ! http://portal.acm.org/citation.cfm?id=954262.954264 Dr Dr. Martin J. Stift, uses Ada for Astrophysics http://archive.adaic.com/docs/flyers/astro.html Here is some Finite elements code in Ada http://www.csee.umbc.edu/~squire/cs455_l32.html Just few days ago, I also wrote short Ada program (even though my Ada is VERY dusty as I use Mathematica mostly these days and also Matlab and Maple), I wrote an Ada program to solve a simple second order ode using finite elements using the new Ada2005 Solve function. I wrote the same code in Mathematica and then in Ada (and also in Maple). Item #6 on this page below. It worked great and was very fast as expected. One nice thing about Ada as always, is that once one gets a clean compile, most likely than not, the code will run without problems. With other languages/systems, this is not the case. With the Ada program, once I get a clean compile, that was it. Using the other systems, I had to spend more time debugging run time errors and go back fix the code, and run again and fix errors, etc... So the Ada program was completed much faster than the others at the end. http://12000.org/my_courses/FULLERTON_COURSES/summer_2007/Math_503/HW/HW12/HW12_computer_part/index.htm If you google around, you'll find some Ada package for matrix/vector operations and more scientific code in Ada (such as fast Fourier transforms, etc..) I think Ada as a language is great for numerical and scientific programming. These were number of discussion on this vs Fortran on the net, check this one thread: (in which yours truly is guilty of starting :) http://groups.google.com/group/comp.lang.ada/browse_thread/thread/c4cb2c432feebd9d/98f0d411bf1cf408?lnk=st&q=Ada+Fortran+nasser&rnum=1&hl=en#98f0d411bf1cf408 I just do not think the current Ada 2005 numeric annex contain enough functionality. One can always link to BLAS and linpack/lapack libraries (which are written in Fortran), I just googled around for ada binding to blas, here is link http://topo.math.u-psud.fr/~sands/Programs/BLAS/index.html Here is a question I have: Why is there no standard binding to all of these libraries (blas, linpack, lapack) as part of the standard? or is there? Will Ada numeric annex be extended to do that? I think the current Numeric annex is too small. I have no idea why any one would choose C or C++ over Ada for numerical work. It is simply beyond my understanding. I can understand one choosing Fortran over Ada, simply due to the inertia that Fortran has in this domain, and the huge amount of existing Fortran code out there. But from a language point of view, I think Ada is definitely better for numerical work than Fortran, but having a better language is not enough in the real world. Nasser