Changeset 56deb9bc


Ignore:
Timestamp:
Aug 13, 2025, 2:42:00 PM (6 weeks ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
master
Children:
0d6fd21
Parents:
221d40c
Message:

fix TODO about clockwise rule, small changes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • doc/theses/mike_brooks_MMath/background.tex

    r221d40c r56deb9bc  
    3636% Yet, the rejection presents as a GCC warning.
    3737% *1  TAPL-pg1 definition of a type system
    38 
    39 % reading C declaration: https://c-faq.com/decl/spiral.anderson.html
    4038
    4139
     
    9694In spite of its difficulties, I believe that the C's approach to declarations remains plausible, and am comfortable with it; it is a useful unifying principle.~\cite[p.~12]{Ritchie93}
    9795\end{quote}
    98 After all, reading a C array type is easy: just read it from the inside out, and know when to look left and when to look right!
     96After all, reading a C array type is easy: just read it from the inside out following the ``clock-wise spiral rule''~\cite{Anderson94}.
    9997Unfortunately, \CFA cannot correct these operator priority inversions without breaking C compatibility.
    100 
    101 TODO: rephrase to acknowledge the "clockwise rule" https://c-faq.com/decl/spiral.anderson.html
    10298
    10399The alternative solution is for \CFA to provide its own type, variable and routine declarations, using a more intuitive syntax.
     
    621617In fact, the outermost type constructor (syntactically first dimension) is really the one that determines the parameter flavour.
    622618
    623 TODO: add examples of mycode/arrr/bugs/c-dependent/x.cfa:v5102,5103,
    624 which are shocking how much C ignores.
     619\PAB{TODO: add examples of mycode/arrr/bugs/c-dependent/x.cfa:v5102,5103,
     620which are shocking how much C ignores.}
    625621
    626622\begin{figure}
     
    12611257The kind of characters in the string is denoted by a prefix: UTF-8 characters are prefixed by @u8@, wide characters are prefixed by @L@, @u@, or @U@.
    12621258
    1263 For UTF-8 string literals, the array elements have type @char@ and are initialized with the characters of the multi-byte character sequences, \eg @u8"\xe1\x90\x87"@ (Canadian syllabics Y-Cree OO).
     1259For UTF-8 string literals, the array elements have type @char@ and are initialized with the characters of the multi-byte character sequences, \eg @u8"\xe1\x90\x87"@ (Canadian syllabic Y-Cree OO).
    12641260For wide string literals prefixed by the letter @L@, the array elements have type @wchar_t@ and are initialized with the wide characters corresponding to the multi-byte character sequence, \eg @L"abc@$\mu$@"@ and are read/printed using @wscanf@/@wprintf@.
    12651261The value of a wide-character is implementation-defined, usually a UTF-16 character.
Note: See TracChangeset for help on using the changeset viewer.