I've been programming in fortran 90/95 for over 5 years now, and I enjoy
very much the new modular and object orientated features that fortran
now includes.
In fact, it seems to me that fortran is at a stage where it should
become easier to start exchanging full modules rather than individual
routines (as in numerical recipes for example). For instance, I've
developed for my purposes a module which defines vectors and all the
operations associated with them. Of course many other people have done
this too. I've also written a couple of modules which have interfaces
defined for f77 libraries (e.g. PGPLOT or CFITSIO).
I have come across various websites where programmers make available the
routines that they use. However, in some cases it is hard to know
whether this code is being maintained, etc., and how popular it is.
As far as I am aware, there does not appear to be any large centralized
repository for fortran 90/95 modules, where users could leave comments
about the modules, rate then by e.g. code quality, speed, etc... I think
this would be invaluable. So some kind of mix between the CPAN archive
for perl, and sourceforge for complete programs or libraries.
First, am I missing the obvious - does such a repository exist? If not,
do others agree that this would be useful? I don't think I have the
experience to set up such a system from scratch, but I would certainly
be happy to be involved in helping in some way.
Would such a system be difficult to set up? Are there existing
frameworks that have been developed for other languages that can be used
for this?
-T
To cover the obvious, there is no equivalent to CPAN for fortran. There
seems to be a goodly amount of fortran on the web, but there's nothing with
the centrality and breadth like CPAN, so I think you're stuck having to
find your libraries with the help a search engine, and when you run into
trouble, post here for refinements.
I think you'll have trouble trying to find volunteers for an effort that
takes many men-years. Maybe a scaled-down addition to the fortran wiki
instead?
--
Ron Ford
I agree that achieving something as large as CPAN in terms of code
quantity is over-ambitious at this time. However, if setting up the web
infrastructure for such a databse was easy, then it is something that
could grow over many years.
The fortran community has already spent many men years writing various
modules, so the actual coding is well underway - all that is missing is
a web-interface to exchange these. I'm not saying that we should
specifically spend time coding just to fill the database, but rather to
exchange already existing modules we have developed.
> As far as I am aware, there does not appear to be any large centralized
> repository for fortran 90/95 modules, where users could leave comments
> about the modules, rate then by e.g. code quality, speed, etc... I think
> this would be invaluable. So some kind of mix between the CPAN archive
> for perl, and sourceforge for complete programs or libraries.
If someone (meaning a group) were to work on this, it would save
a huge amount of duplicated effort worldwide. I hate to think
how many Fortran programmers have written their own procedures
to translate case of strings, or find available unit numbers, or
similar tasks.
That said, I'm not volunteering!
--
Mike Prager, NOAA, Beaufort, NC
Address spam-trapped; remove color to reply.
* Opinions expressed are personal and not represented otherwise.
* Any use of tradenames does not constitute a NOAA endorsement.
On the technical side, I would guess a rather simple Wiki design (with
mandatory registration) would certainly be quite an efficient way to deal
with the issue. I suppose the main issue would be to have a team
reviewing (and doing minimal testing) on the code posted.
--
FX
It certainly is not the technical side of things. The tough
part is to find such a team.
Regards,
Arjen (who has no time to complete this posting ;))
I think that quite a few people would be willing to post a number of
their useful routines, if the mechanism for doing it were simple enough.
That would be a good start, and worth trying.
--
Clive Page
In a way, the code peer-testing is not absolutely necessary as a first
step - some people already make their routines available via their
personal web-pages anyway, and no-one other than them has tested those.
Testing could be done indirectly by people who download the routines. If
they find a bug, they can contact the person who maintains that module,
just like standard open-source software. All modules could be required
or encouraged to include a test routine within them, which would also
serve as examples for use.
I for one would love to see what other cool modules other people have
written, and would certainly be happy to leave feedback and to
contribute modules! Of course, for heavily numerical routines, libraries
like NR and kernel/math libraries (e.g. intel) will probably be the way
to go, but I think this will be more useful for smaller things such as
string operations, vector arithmetic, databases, or interfaces to
existing C or fortran 77 libraries.
Anyway, just throwing some ideas around - I certainly think it would be
an experiment worth carrying out!
This is one of the goals I have with my Flibs project (http://
flibs.sf.net;
while I still say "my", Michael Baudin has joined me in this and there
are
contributions from several other people).
As it is a collection of modules, small libraries and such, it is not
very
suited as a Wiki, but still.
I for one would love to see a Wiki dedicated to Fortran (I lack just
about
everything though to start one: experience managing a dynamic
website,
a machine that I could use, spare time, ... except the will to
contribute :)).
Regards,
Arjen
What about just creating a http://code.google.com project
(or sourceforge.net, or whatever) and giving people access
as they decide to commit code?
Regards,
--
Bil Kleb
http://fun3d.larc.nasa.gov