Closed zmiimz closed 7 years ago
Dear @zmiimz
at first, many thanks for such nice fortran enhancement )
Thank you, you are too much kind!
From a practical point of view I would combine multiple (in that case forbear_x + FACE) modules into one single module file for such sort of utility. Really, it would be my first step if I consider to include it into my projects...
I agree, I am planning something to accomplish your desire...
It also doesn't make sense (IMHO) to create a library for such small things.
Indeed, I love KISS (Keep It Simple and Stupid) principle, if there were not people like you I had probably modularized even more tinier things than FACE of forbear :smile:
(Sure, I know that you are using fobis, but unfortunately, some developers are forced to stay with an old good make because there are projects where 2 and more languages are used and fortran is only one among them... )
I know, my bad.
Please ignore this completely, if it is important for you to have these multiple modules during development, or you intend to create some extended library full of such fancy fortran things)
Nope, your point is important. I will not stop with my KISS-paranoiac approach, but I would like to help workflows like your. I am thinking to a sort of meta-project to aggregate some of my poor libraries. Do you think could be a viable compromise?
The meta-project should be a sort of (very, very easy customizable-in-building) library where the user can:
Cheers
The meta-project should be a sort of (very, very easy customizable-in-building) library where the user can:
easy download the meta-project (curl/wget?); easy select which library build/install (plain text? bash?); easy build the library (makefile...); easy install the library (bash?). What do you think?
Ok, after all this becomes a kind of a large library ;) I am not sure about the level you are planning to organize it. If you go into the direction of some package manager, then one of the best implementation for such thing I have ever seen is the dub manager from dlang project. I still hope to find a team that could fork the dub project to fdub and add fortran support to it. ) But for simple downloader it is indeed better to use standard Linux tools (like bash, wget/curl/aria2c) and organize it like a usual static/dynamic library with Makefile. .
Hi @zmiimz
Ok, after all this becomes a kind of a large library ;)
:smile: the answer is yes and not: what I am trying (yes, I have already started the project, stay tuned) is a compromise: it is a centralized place where you can easy find (download/install) all my poor libraries without all not strictly necessary files... essentially it provides just my main libraries sources like
tree -L 2 src/
src/
├── BeFoR64
│ ├── befor64.F90
│ └── befor64_pack_data_m.F90
├── FACE
│ └── face.F90
├── FiNeR
│ ├── finer_backend.f90
│ ├── finer.f90
│ ├── finer_file_ini_t.f90
│ ├── finer_option_t.F90
│ └── finer_section_t.f90
├── FITTER
│ └── fitter.f90
├── FLAP
│ ├── CMakeLists.txt
│ ├── flap_command_line_arguments_group_t.f90
│ ├── flap_command_line_argument_t.F90
│ ├── flap_command_line_interface_t.F90
│ ├── flap.f90
│ ├── flap_object_t.f90
│ └── flap_utils_m.f90
├── FLOw
│ ├── flow_compressible_transformations.f90
│ ├── flow_conservative_compressible.f90
...
├── FOODIE
│ ├── foodie_error_codes.f90
│ ├── foodie.f90
...
├── forbear
│ ├── forbear_bar_object.F90
│ ├── forbear_element_object.F90
│ ├── forbear.f90
│ └── forbear_kinds.F90
├── FORESEER
│ ├── foreseer.f90
│ ├── foreseer_riemann_pattern_compressible_object.f90
│ ├── foreseer_riemann_pattern_compressible_pvl.f90
...
│ └── foreseer_riemann_solver_object.f90
├── FoXy
│ ├── foxy.f90
│ ├── foxy_xml_file.f90
│ └── foxy_xml_tag.f90
├── FURY
│ ├── fury.f90
│ ├── fury_mixed_kinds.F90
...
│ └── fury_uom_symbol.inc
├── MORTIF
│ └── mortif.f90
├── PENF
│ ├── CMakeLists.txt
│ ├── penf_b_size.F90
│ ├── penf.F90
│ ├── penf_global_parameters_variables.F90
│ └── penf_stringify.F90
├── StringiFor
│ ├── stringifor.F90
│ └── stringifor_string_t.F90
├── VecFor
│ └── vecfor.F90
├── VTKFortran
│ ├── vtk_fortran_dataarray_encoder.f90
│ ├── vtk_fortran.f90
...
│ └── vtk_fortran_vtm_file.F90
├── WenOOF
│ ├── abstract_objects
│ ├── concrete_objects
│ ├── factories
│ └── wenoof.F90
...
The (unfortunate) user can decide to download/install all or only a part of. I have already test to build the monster library, it becomes something about 3.5 MB (statically compiled). I am now implementing the how to download/install part. The centralized repository contains only the main sources: tests, documentations and all other auxiliary are trimmed out.
If you go into the direction of some package manager, then one of the best implementation for such thing I have ever seen is the dub manager from dlang project. I still hope to find a team that could fork the dub project to fdub and add fortran support to it. )
I do not know it, can you give me some details (links, references...).
But for simple downloader it is indeed better to use standard Linux tools (like bash, wget/curl/aria2c) and organize it like a usual static/dynamic library with Makefile.
Yes, for the moment I am relying on only:
I hope this is a good compromise.
I do not know it, can you give me some details (links, references...).
https://github.com/dlang/dub https://github.com/dlang/dub-registry http://code.dlang.org/
Dear Stefano,
at first, many thanks for such nice fortran enhancement )
And to the question. From a practical point of view I would combine multiple (in that case forbear_x + FACE) modules into one single module file for such sort of utility. Really, it would be my first step if I consider to include it into my projects... It also doesn't make sense (IMHO) to create a library for such small things. (Sure, I know that you are using fobis, but unfortunately, some developers are forced to stay with an old good make because there are projects where 2 and more languages are used and fortran is only one among them... )
Please ignore this completely, if it is important for you to have these multiple modules during development, or you intend to create some extended library full of such fancy fortran things)