@@ -32,35 +32,38 @@ A grab bag of useful tricks in Fortran 2018.
32
32
33
33
This library gathers software that developers at [ Archaeologic Inc.] and
34
34
[ Sourcery Institute] find useful across many of our projects, including in
35
- courses that we teach. Most code starts here because it feels too small to
36
- release as a standalone package but too distinct in purpose to fold into other
37
- existing packages. Over time, when code that starts here grows in capability, a
38
- new repository is born and the corresponding code is removed from the Sourcery
39
- repository. Following the practice of [ semantic versioning] , code removal
40
- results in a major version number increment.
35
+ courses that we teach. Most code starts here because it is too limited in
36
+ capability to release as a standalone package but too distinct in purpose to
37
+ fold into other existing packages. Over time, when code that starts here grows
38
+ in capability, a new repository is born and the corresponding code is removed
39
+ from the Sourcery repository. Examples include the [ Assert] and [ Emulators]
40
+ libraries. Following the practice of [ semantic versioning] , code removal
41
+ causes an increment in the major version number.
41
42
42
- versioning to Examples
43
- include the [ Assert] and [ Emulators] libraries.
44
-
45
- Utility functions
46
- -----------------
43
+ Procedures
44
+ ---------
47
45
48
46
* Array functions
49
47
* String functions
50
48
* User-defined collective subroutines: ` co_all `
51
49
52
50
Classes
53
51
-------
54
- * Parallel data partitioning and gathering
55
- * (Co-)[ Object pattern] abstract parent
56
- * Runtime units tracking
52
+ * Parallel data partitioning and gathering,
53
+ * (Co-)[ Object pattern] abstract parent,
54
+ * Runtime units tracking, and
55
+ * A test oracle using the [ Template Method pattern] .
56
+ * A command-line abstraction that searches for program arguments.
57
57
58
58
Prerequisites
59
59
-------------
60
- See the [ fpm manifest] ( ./fpm.toml ) for the dependencies and developer
61
- dependencies, the latter of which are needed only for contributing to Sourcery
62
- by adding new tests. Additionally, [ FORD] 6.1.0 or later is required for
63
- producing HTML documentation.
60
+ [ FORD] 6.1.0 or later is required for producing HTML documentation (see
61
+ "[ Building the documentation] " below for instructions). The Fortran Package
62
+ Manager ([ fpm] ) is required to build Sourcery from source. See the
63
+ [ fpm manifest] ( ./fpm.toml ) for the dependencies and developer dependencies,
64
+ all of which [ fpm] automatically downloads and builds via the ` fpm ` command
65
+ provided in the "[ Downloding, Building, and Testing] " section below.
66
+
64
67
65
68
Downloding, Building, and Testing
66
69
---------------------------------
@@ -95,3 +98,6 @@ documentation.
95
98
[ Emulators ] : https://github.com/sourceryinstitute/emulators
96
99
[ Object pattern ] : https://www.cambridge.org/rouson
97
100
[ semantic versioning ] : https://semver.org
101
+ [ Template Method pattern ] : https://en.wikipedia.org/wiki/Template_method_pattern
102
+ [ Downloding, Building, and Testing ] : #downloding-building-and-testing
103
+ [ Building the documentation ] : #building-the-documentation
0 commit comments