Please provide feedback via the github "Issues", "Wiki", and "Discussion" features on github. If you use a module from this collection please "star" the repository. If you did not use a module we are interested as well as to why not, and what you did use.
Additionally discussion is welcome as well at
- Fortran Discourse
- Fortran Wiki longue vie Fortran
- Google Fortran newsgroup long live Fortran
- GPF : GPF (General Purpose Fortran)
Strings | Description | fpm support | gmake support | fpm registry |
---|---|---|---|---|
M_strings | String manipulation | ![]() |
![]() |
![]() |
Posix and System Interfaces | Description | fpm support | gmake support | fpm registry |
M_system | (mostly)POSIX system routine interface | ![]() |
![]() |
![]() |
M_process | ISO_C_BINDING interface to popen(3c) and related system procedures | ![]() |
![]() |
![]() |
M_path | basic system file pathname operations | ![]() |
![]() |
![]() |
Regular Expressions | Description | fpm support | gmake support | fpm registry |
M_change | Basic Regular Expressions | ![]() |
![]() |
![]() |
M_match | Basic Regular Expressions | ![]() |
![]() |
![]() |
Expression Evaluation | Description | fpm support | gmake support | fpm registry |
M_matrix | embeddable matlab/octave-like interface | ![]() |
![]() |
![]() |
M_calculator | basic numeric expression parser | ![]() |
![]() |
![]() |
I/O | Description | fpm support | gmake support | fpm registry |
M_io | I/O-related tools | ![]() |
![]() |
![]() |
M_display | display of small matrices in row-column order | ![]() |
![]() |
![]() |
Date and Time | Description | fpm support | gmake support | fpm registry |
M_time | date and time conversion, formatting and computation | ![]() |
![]() |
![]() |
Command Line Parsing | Description | fpm support | gmake support | fpm registry |
M_CLI2 | commandline parsing using a prototype command | ![]() |
![]() |
![]() |
M_CLI | commandline parsing using a prototype command and NAMELIST | ![]() |
![]() |
![]() |
M_kracken | command line parsing | ![]() |
![]() |
![]() |
M_kracken95 | command line parsing using Fortran 95 | ![]() |
![]() |
![]() |
Graphics | Description | fpm support | gmake support | fpm registry |
M_draw | basic vector graphics package | ![]() |
![]() |
![]() |
M_pixel | basic vector drawing into a pixel graphics format | ![]() |
![]() |
![]() |
M_color | conversions between common color models | ![]() |
![]() |
![]() |
M_calcomp | old Calcomp look-alike graphics library. | ![]() |
![]() |
![]() |
M_slices | produce basic slice plot on POSIX systems with X11 Windows | ![]() |
![]() |
![]() |
Sorting | Description | fpm support | gmake support | fpm registry |
M_sort | sorting and ranking | ![]() |
![]() |
![]() |
orderpack | partial and complete sorting, ranking, and unique values | ![]() |
![]() |
![]() |
Preprocessing | Description | fpm support | gmake support | fpm registry |
prep | A Fortran preprocessor written in Fortran | ![]() |
![]() |
![]() |
Miscellaneous | Description | fpm support | gmake support | fpm registry |
M_history | Input History Editor | ![]() |
![]() |
![]() |
M_msg | converts any standard scalar type to a string and support unit testing | ![]() |
![]() |
![]() |
M_list | standard intrinsic type dictionary toolkit | ![]() |
![]() |
![]() |
M_readline | Fortran-callable interface to the C input history editor readline(3c) | ![]() |
![]() |
![]() |
M_uuid | module to produce a UUID string | ![]() |
![]() |
![]() |
easy | template for a github fpm package | ![]() |
![]() |
![]() |
Screen Text | Description | fpm support | gmake support | fpm registry |
M_escape | ANSI control escape sequences for terminal displays | ![]() |
![]() |
![]() |
M_attr | ANSI control escape sequences for terminal displays | ![]() |
![]() |
![]() |
M_ncurses | Fortran-callable interface to the C library ncurses(3c) | ![]() |
![]() |
![]() |
-------------------------------------------------------- | ---------------------------------------------------------------------- | --------------- | ------------------ | ---------------- |
-
M_intrinsics : module of text descriptions of Fortran intrinsics and features
- Doomemacs complete setup of emacs and Fortran for MacOS/Linux
- Fortran 2018 (646 pgs)
- Fortran 2008 (623 pgs)
- Fortran 2003 (583 pgs)
- Fortran 95 (376 pgs)
- Fortran 90 (315 pgs)
- Fortran 77 ; html (185 pgs)
- Fortran 66 (39 pgs)
- Beliavsky's Software List
- Beliavsky's Tool List
- SAL
- SPDX licenses list
- Fortran trending on github
- fortranlib
- Arnaud's Recipes
-
search github for fpm projects by looking for "fpm.toml" files
-
search github for fpm projects by looking for topic "fortran-package-manager"
+ fpm-search : null
+ fpm-man : display Fortran intrinsics documentation
+ fpm-dict : fpm plug-in to look up words and descriptions on WWW using fortran-curl(3f)/libcurl(3c)
+ fpm-time : fpm plug-in to generate timing profiles using gprof(1)
- Fortran Discourse
- Google Fortran newsgroup
- Fortran Wiki
- twitter:Fortran Tips:Beliavsky
- twitter:Steve Lionel twitter:fortran-lang.org
- Libera Chat
- Discussion
- TOML : TOML parser implementation for data serialization and deserialization
- JSON
- jsonff : null
- [XML]
- [namelist]
- [hdf5]
- cairo-fortran : Fortran bindings for libcairo
-fortrancon-2020 -fortrancon-2021 -CiSE article -[Fortran Forum article](git clone https://github.com/LKedward/fortran-forum-article-template) -Fortran Package Manager: -Article:
}
- fhash : Implements a hash table type with support for generic keys and values.
- usage syntax: Unix-like, DOS-like, OpenVMS-like, ...
- how hard to use from code? For example, what is the minimal program that can call the interface?
- -a, --a, --a=value, combining short names
- automatic GUI or TLI (X11, ncurses, ...)
- simplistity of use versus features
- converting values to arrays and numbers from strings
- validators
- usage strings
- help text
- automatic help text
- are "standard" switches automatically defined (--help, --version, --verbose ..)
- query if a keyword was present on the call or not
name and link | Description | build methods |
---|---|---|
cmdff | ||
command_args | from \arjenmarkus (https://github.com/arjenmarkus) | |
f90getopt | based on Mark Gates routines | |
FLAP | ||
FTN_Getopt | by Reinhold Bader | |
getopt | ||
libSUFR | by \MarcvdSluys (https://github.com/MarcvdSluys) | |
M_CLI2 | Unix-style commandline parsing using a prototype. | fpm,make |
M_CLI | Unix-style commandline parsing using a prototype command and NAMELIST | fpm,make |
M_kracken95 | command line parsing using Fortran 95 | fpm,make |
M_kracken | command line parsing | fpm,make |
Fortran wiki | including getopt_long module by Joe Krahn, getopt.f90 by Mark Gates. CLAF90 is a f90-module for parsing command line arguments. |
- many of the libraries in [popular Fortran projects] (https://github.com/fortran-lang/stdlib/wiki/List-of-popular-open-source-Fortran-projects) have their own argument parsers.
- f2kcli is an implementation of the Fortran 2003 command line interface for compilers which do not support Fortran 2003.
- fortran-lang issue 135
- fortran-lang issue 230
- We do these things not because they are easy, but because we thought they would be.
- fregex