<pre style="background-color: #282A36; color: #F8F8F2; padding: 1em; border-radius: 4px; overflow-x: auto;"><span style="color: #6272A4">! Based on code samples from https://en.wikipedia.org/wiki/Fortran</span>
<span style="color: #6272A4">! and https://learnxinyminutes.com/docs/fortran95/.</span>

<span style="color: #8BE9FD">MODULE</span> <span style="color: #F8F8F2">strings</span>
    <span style="color: #8BE9FD">TYPE</span> <span style="color: #8BE9FD">string80</span>            <span style="color: #6272A4">! a derived type with a trailing comment</span>
        <span style="color: #8BE9FD">INTEGER</span> <span style="color: #F8F8F2">::</span> <span style="color: #F8F8F2">length</span>
        <span style="color: #8BE9FD">CHARACTER</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">80</span><span style="color: #F8F8F2">)</span> <span style="color: #F8F8F2">::</span> <span style="color: #F8F8F2">value</span>
    <span style="color: #FF5555">END TYPE string80</span>
<span style="color: #FF5555">END MODULE</span> <span style="color: #F8F8F2">strings</span>

<span style="color: #FF5555">PROGRAM</span> <span style="color: #F8F8F2">test</span>
    <span style="color: #FF5555">USE</span> <span style="color: #F8F8F2">strings</span>
    <span style="color: #FF5555">IMPLICIT</span> <span style="color: #F8F8F2">NONE</span>

    <span style="color: #8BE9FD">CHARACTER</span> <span style="color: #F8F8F2">::</span> <span style="color: #F8F8F2">char1</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">char2</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">char3</span>
    <span style="color: #8BE9FD">TYPE</span><span style="color: #F8F8F2">(</span><span style="color: #8BE9FD">string80</span><span style="color: #F8F8F2">)</span> <span style="color: #F8F8F2">::</span> <span style="color: #F8F8F2">str1</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">str2</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">str3</span>
    <span style="color: #8BE9FD">REAL</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">DIMENSION</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">10</span><span style="color: #F8F8F2">,</span> <span style="color: #F1FA8C">20</span><span style="color: #F8F8F2">)</span> <span style="color: #F8F8F2">::</span> <span style="color: #F8F8F2">a</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">b</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">c</span>
    <span style="color: #8BE9FD">REAL</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">DIMENSION</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">5</span><span style="color: #F8F8F2">)</span> <span style="color: #F8F8F2">::</span> <span style="color: #F8F8F2">v</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">w</span>
    <span style="color: #8BE9FD">LOGICAL</span> <span style="color: #F8F8F2">::</span> <span style="color: #F8F8F2">flag</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">10</span><span style="color: #F8F8F2">,</span> <span style="color: #F1FA8C">20</span><span style="color: #F8F8F2">)</span>
    <span style="color: #8BE9FD">INTEGER</span> <span style="color: #F8F8F2">::</span> <span style="color: #F8F8F2">i</span><span style="color: #F8F8F2">,</span> <span style="color: #F8F8F2">j</span>

    <span style="color: #FF5555">CALL</span> <span style="color: #BD93F9">print_message</span>

    <span style="color: #6272A4">! Logical literals and relational operators</span>
    <span style="color: #F8F8F2">flag</span> <span style="color: #F8F8F2">=</span> <span style="color: #F1FA8C">.true.</span> <span style="color: #F8F8F2">.AND.</span> <span style="color: #F1FA8C">.FALSE.</span>
    <span style="color: #F8F8F2">flag</span> <span style="color: #F8F8F2">=</span> <span style="color: #F8F8F2">a</span> <span style="color: #F8F8F2">&lt;</span> <span style="color: #F8F8F2">b</span> <span style="color: #F8F8F2">.AND.</span> <span style="color: #F8F8F2">i</span> <span style="color: #F8F8F2">/=</span> <span style="color: #F8F8F2">j</span>
    <span style="color: #F8F8F2">flag</span> <span style="color: #F8F8F2">=</span> <span style="color: #F8F8F2">a</span> <span style="color: #F8F8F2">==</span> <span style="color: #F8F8F2">b</span>

    <span style="color: #FF5555">PRINT</span> <span style="color: #50FA7B">&quot;(F6.3)&quot;</span><span style="color: #F8F8F2">,</span> <span style="color: #F1FA8C">4.32</span>

    <span style="color: #6272A4">! Array assignments and sections</span>
    <span style="color: #F8F8F2">a</span> <span style="color: #F8F8F2">=</span> <span style="color: #F8F8F2">b</span>
    <span style="color: #F8F8F2">c</span> <span style="color: #F8F8F2">=</span> <span style="color: #F8F8F2">a</span><span style="color: #F8F8F2">/</span><span style="color: #F8F8F2">b</span>
    <span style="color: #F8F8F2">w</span> <span style="color: #F8F8F2">=</span> <span style="color: #F8F8F2">v</span> <span style="color: #F8F8F2">+</span> <span style="color: #F1FA8C">1.2</span>
    <span style="color: #F8F8F2">w</span> <span style="color: #F8F8F2">=</span> <span style="color: #F1FA8C">5</span><span style="color: #F8F8F2">/</span><span style="color: #F8F8F2">v</span> <span style="color: #F8F8F2">+</span> <span style="color: #F8F8F2">a</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">1</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">5</span><span style="color: #F8F8F2">,</span> <span style="color: #F1FA8C">5</span><span style="color: #F8F8F2">)</span>
    <span style="color: #F8F8F2">c</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">1</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">8</span><span style="color: #F8F8F2">,</span> <span style="color: #F1FA8C">5</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">10</span><span style="color: #F8F8F2">)</span> <span style="color: #F8F8F2">=</span> <span style="color: #F8F8F2">a</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">2</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">9</span><span style="color: #F8F8F2">,</span> <span style="color: #F1FA8C">5</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">10</span><span style="color: #F8F8F2">)</span> <span style="color: #F8F8F2">+</span> <span style="color: #F8F8F2">b</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">1</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">8</span><span style="color: #F8F8F2">,</span> <span style="color: #F1FA8C">15</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">20</span><span style="color: #F8F8F2">)</span>
    <span style="color: #F8F8F2">v</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">2</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">5</span><span style="color: #F8F8F2">)</span> <span style="color: #F8F8F2">=</span> <span style="color: #F8F8F2">v</span><span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">1</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">4</span><span style="color: #F8F8F2">)</span>

    <span style="color: #F8F8F2">i</span> <span style="color: #F8F8F2">=</span> <span style="color: #F1FA8C">10</span>
    <span style="color: #FF5555">SELECT</span> <span style="color: #FF5555">CASE</span> <span style="color: #F8F8F2">(</span><span style="color: #F8F8F2">i</span><span style="color: #F8F8F2">)</span>
        <span style="color: #FF5555">CASE</span> <span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">0</span><span style="color: #F8F8F2">)</span> <span style="color: #6272A4">! case i == 0</span>
        <span style="color: #F8F8F2">j</span> <span style="color: #F8F8F2">=</span> <span style="color: #F1FA8C">0</span>
        <span style="color: #FF5555">CASE</span> <span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">1</span><span style="color: #F8F8F2">:</span><span style="color: #F1FA8C">5</span><span style="color: #F8F8F2">)</span>
        <span style="color: #F8F8F2">j</span> <span style="color: #F8F8F2">=</span> <span style="color: #F1FA8C">1</span>
        <span style="color: #FF5555">CASE</span> <span style="color: #F8F8F2">(</span><span style="color: #F1FA8C">6</span><span style="color: #F8F8F2">:</span><span style="color: #F8F8F2">)</span>
        <span style="color: #F8F8F2">j</span> <span style="color: #F8F8F2">=</span> <span style="color: #F1FA8C">2</span>
        <span style="color: #FF5555">CASE</span> <span style="color: #FF5555">DEFAULT</span>
        <span style="color: #F8F8F2">j</span> <span style="color: #F8F8F2">=</span> <span style="color: #F1FA8C">3</span>
    <span style="color: #FF5555">END SELECT</span>
<span style="color: #FF5555">END PROGRAM</span> <span style="color: #F8F8F2">test</span>

<span style="color: #FF5555">SUBROUTINE</span> <span style="color: #BD93F9">print_message</span>
    <span style="color: #FF5555">PRINT</span> <span style="color: #F8F8F2">*</span><span style="color: #F8F8F2">,</span> <span style="color: #50FA7B">&#39;Hello world!&#39;</span>
<span style="color: #FF5555">END SUBROUTINE</span> <span style="color: #BD93F9">print_message</span>
</pre>