11# Language elements
22
3- Fortran is <a href="case-insensitive" class="wikilink"
4- title="case-insensitive">case-insensitive</a >. The convention of writing
3+ Fortran is
4+ [ case-insensitive] ( https://en.wikipedia.org/wiki/Case_sensitivity )
5+ The convention of writing
56Fortran keywords in upper case and all other names in lower case is
67adopted in this article; except, by way of contrast, in the input/output
78descriptions
8- (<a href =" #Data_transfer " class =" wikilink " title =" Data transfer " >Data
9- transfer</a > and
10- <a href="#Operations_on_external_files" class="wikilink"
11- title="Operations on external files">Operations on external files</a >).
9+ ([ Data transfer] ( data_transfer )
10+ and
11+ [ Operations on external files] ( operations_on_external_files ) ).
1212
1313## Basics
1414
@@ -22,7 +22,8 @@ members are
2222- the special characters
2323 ` = : + blank - * / ( ) [ ] , . $ ' ! " % & ; < > ? `
2424
25- <a href =" Token_(parser) " class =" wikilink " title =" Token " >Tokens</a > that
25+ [ Tokens] ( https://en.wikipedia.org/wiki/Token_(parser) )
26+ that
2627have a syntactic meaning to the compiler are built from those
2728components. There are six classes of tokens:
2829
@@ -34,8 +35,9 @@ components. There are six classes of tokens:
3435| Name | ` solve_equation ` (up to 31 characters, including \_ ) |
3536| Separator | ` / ( ) (/ /) [ ] , = => : :: ; % ` |
3637
37- From the tokens, <a href="statement_ (programming)" class="wikilink"
38- title="statement">statements</a > are built. These can be coded using the
38+ From the tokens,
39+ [ statements] ( https://en.wikipedia.org/wiki/Statement_(programming) )
40+ are built. These can be coded using the
3941new free * source form* which does not require positioning in a rigid
4042column structure:
4143
@@ -126,9 +128,9 @@ must make the actual mapping to bytes):
126128RANGE(1_two_bytes)
127129```
128130
129- Also, in <a href="#DATA_statement" class="wikilink"
130- title=" DATA (initialization) statements">< code >DATA</ code >
131- (initialization) statements</ a >, binary (B), octal (O) and hexadecimal
131+ Also, in
132+ [ ` DATA ` (initialization) statements] ( data_statement ) ,
133+ binary (B), octal (O) and hexadecimal
132134(Z) constants may be used (often informally referred to as "BOZ
133135constants"):
134136
@@ -209,8 +211,10 @@ The forms of literal constants for `CHARACTER` data type are
209211
210212(the last being an empty string). Different kinds are allowed (for
211213example, to distinguish
212- <a href =" ASCII " class =" wikilink " title =" ASCII " >ASCII</a > and
213- <a href =" UNICODE " class =" wikilink " title =" UNICODE " >UNICODE</a > strings),
214+ [ ASCII] ( https://en.wikipedia.org/wiki/ASCII )
215+ and
216+ [ UNICODE] ( https://en.wikipedia.org/wiki/UNICODE )
217+ strings),
214218but not widely supported by compilers. Again, the kind value is given by
215219the ` KIND ` function:
216220
@@ -239,8 +243,9 @@ important for portable numerical software:
239243
240244## Scalar variables
241245
242- Scalar <a href="Variable_ (programming)" class="wikilink"
243- title="variables">variables</a > corresponding to the five intrinsic
246+ Scalar
247+ [ variables] ( https://en.wikipedia.org/wiki/Variable_(programming) )
248+ corresponding to the five intrinsic
244249types are specified as follows:
245250
246251``` f90
@@ -395,10 +400,9 @@ at the beginning of each program unit.
395400
396401Arrays are considered to be variables in their own right. Every array is
397402characterized by its
398- <a href="type_ (computer_programming)" class="wikilink"
399- title="type">type</a >,
400- <a href="rank_ (computer_programming)" class="wikilink"
401- title="rank">rank</a >, and * shape* (which defines the extents of each
403+ [ type] ( https://en.wikipedia.org/wiki/Type_(computer_programming) ) ,
404+ [ rank] ( https://en.wikipedia.org/wiki/Rank_(computer_programming) ) ,
405+ and * shape* (which defines the extents of each
402406dimension). Bounds of each dimension are by default 1 and * size* , but
403407arbitrary bounds can be explicitly specified. ` DIMENSION ` keyword is
404408optional and considered an attribute; if omitted, the array shape must
@@ -410,9 +414,8 @@ INTEGER, DIMENSION(0:100, -50:50) :: map
410414```
411415
412416declares two arrays, rank-1 and rank-2, whose elements are in
413- <a href="column-major_order" class="wikilink"
414- title="column-major order">column-major order</a >. Elements are, for
415- example,
417+ [ column-major order] ( https://en.wikipedia.org/wiki/Column-major_order ) .
418+ Elements are, for example,
416419
417420``` f90
418421a(1) a(i*j)
@@ -533,8 +536,8 @@ attributes, are constant expressions that may include references to:
533536array and structure constructors, elemental intrinsic functions with
534537integer or character arguments and results, and the six transformational
535538functions ` REPEAT, SELECTED_INT_KIND, TRIM, SELECTED_REAL_KIND, RESHAPE `
536- and ` TRANSFER ` (see <a href="#Intrinsic_procedures" class="wikilink"
537- title=" Intrinsic procedures">Intrinsic procedures</ a > ):
539+ and ` TRANSFER ` (see
540+ [ Intrinsic procedures] ( intrinsic_procedures ) :
538541
539542``` f90
540543INTEGER, PARAMETER :: long = SELECTED_REAL_KIND(12), &
0 commit comments