Modula-2 Reloaded

A Modern Typesafe & Literate Programming Notation

Site Menu

Project

Specification

Implementation

Recommendations

Reference

Needs Updating

Work in Progress

Wastebasket

Wiki Manual

edit SideBar

Output Formatting

WiP.OutputFormatting History

Hide minor edits - Show changes to output

2010-01-23 10:47 by benjk -
Changed line 38 from:
64-bit ADDRESS Numerals:        |012345678901234567890|
to:
64-bit ADDRESS Numerals:        |0123456789012345678|
Changed lines 40-42 from:
WRITEF(0DEADBEEFH, 8);        => 00000000 DEADBEEF
WRITEF(0DEADBEEFH, 8, ":");  => 00000000:DEADBEEF
WRITEF(0DEADBEEFH, 4, ".");  => 0000.0000.DEAD.BEEF
to:
WRITEF("_8", 0DEADBEEFH);    => 00000000 DEADBEEF
WRITEF(":8", 0DEADBEEFH);     => 00000000:DEADBEEF
WRITEF(".4", 0DEADBEEFH);    => 0000.0000.DEAD.BEEF
Changed lines 49-53 from:
Bitset Values:                  |012345678901234567890|
WRITE(03FH); (*8-bit BITSET*) => 00111111
WRITEF(03FH, 4);             => {0011 1111}
WRITEF(03FH, 4, ".");        => {0011.1111}
WRITEF(03FH, 4, ":");        => {0011:1111}
to:
Bitset Values:                  |0123456789012345678|
WRITE(03FH); (*8-bit BITSET*) => {00111111}
WRITEF("_4", 03FH);          => { 0011 1111 }
WRITEF(".4", 03FH);           => { 0011.1111 }
WRITEF(":4", 03FH);           => { 0011:1111 }
Changed lines 63-64 from:
WRITEF(TRUE, "Y");            => YES
WRITEF(FALSE, "Y");          => NO
to:
WRITEF("Y", TRUE);            => YES
WRITEF("Y", FALSE);          => NO
Deleted line 68:
Characters:                    |0123456789012345678|
Changed lines 70-71 from:
WRITEF("A", "'");            => 'A'
WRITEF("A", '"');            => "A"
to:
WRITEF("Q" ,"A");            => 'A'
WRITEF("D" ,"A");            => "A"
Changed line 76 from:
Character Strings:              |012345678901234567890|
to:
Character Strings:              |0123456789012345678|
Changed lines 78-80 from:
WRITEF("foobar", "'");        => 'foobar'
WRITEF("foobar", '"');        => "foobar"
WRITEF("foobar", ASCII.LF);  => foobar\n
to:
WRITEF("Q", "foobar");        => 'foobar'
WRITEF("D", "foobar");        => "foobar"
Changed line 82 from:
!!!Output for type OCTET
to:
!!!Output for types CARDINAL and LONGCARD
Changed lines 84-88 from:
Octet Numerals:                |012345678901234567890|
WRITE(03FH);
                 => 3F
WRITEF(03FH, "x");
           => 0x3F
WRITEF(03FH, "H");
            => 03FH
WRITEF(03FH, "B");            => 00111111B
to:
Unsigned Whole Numerals:        |0123456789012345678|
WRITE(12345);
                => 12345
WRITEF("8;", 12345);
         =>    12,345
WRITEF("*8;", 12345);
         => ***12,345
WRITEF("H8", 12345);
          => 00003039H
Changed line 91 from:
!!!Output for types CARDINAL and LONGCARD
to:
!!!Output for types INTEGER and LONGINT
Changed lines 93-103 from:
Unsigned Whole Numerals:        |012345678901234567890|
WRITE(12345);                => 12345
WRITEF(12345, 8);            =>    12,345
WRITEF(12345, 8, "*");        => ***12,345
WRITEF(12345, 8, "x");        => 0x00003039
WRITEF(12345, 8, "H");        => 00003039H
@]

!!!Output for types INTEGER and LONGINT
[@
Signed Whole Numerals:          |012345678901234567890
|
to:
Signed Whole Numerals:           |0123456789012345678|
Changed lines 96-99 from:
WRITEF(-12345, 8);            => -  12,345
WRITEF(-12345, 8, "*");      => -***12,345
WRITEF(-12345, 8, "x");      => 0x0000CFC7
WRITEF(-12345, 8, "H");
      => 0000CFC7H
to:
WRITEF("8;", -12345);        => -  12,345
WRITEF("*8;", -12345);       => -***12,345
WRITEF("H8", -12345);        => 0000CFC7H
Changed line 103 from:
Real Numerals:                  |012345678901234567890|
to:
Real Numerals:                   |0123456789012345678|
Changed lines 106-109 from:
WRITEF(-12345.67, 8);         => -  12,345.67000
WRITEF(-12345.67, 8, 2);      => -  12,345.67
WRITEF(-12345.67, 8, 2, "*"); => -***12,345.67
WRITEF(-12345.67, 8, 3, "E"); => -12.345,670E+03
to:
WRITEF("8.5;", -12345.67);    => -  12,345.67000
WRITEF("8.2;", -12345.67);    => -  12,345.67
WRITEF("*8.2;", -12345.67);   => -***12,345.67
WRITEF("2.6;E", -12345.67);   => -12.345,670E+03
2010-01-23 04:34 by benjk -
Added lines 9-10:

[-NB: The size of type OCTET is guaranteed to be eight bits.-]
2010-01-23 04:28 by benjk -
Changed line 3 from:
OCTET Numerals:            |012345678901234567890|
to:
OCTET Numerals:                 |012345678901234567890|
2010-01-23 04:28 by benjk -
Changed line 1 from:
!!!!Output for type BYTE
to:
!!!!Output for type OCTET
Changed line 3 from:
8-bit BYTE Numerals:            |012345678901234567890|
to:
OCTET Numerals:            |012345678901234567890|
Changed lines 10-12 from:
[-output should always show the full number of digits required by MAX(BYTE)-]

!!!!Output for type WORD
to:
!!!!Output for type BYTE
Changed lines 12-17 from:
32-bit WORD Numerals:          |012345678901234567890|
WRITE(017AE003FH);            => 17AE003F
WRITEF("_4", 017AE003FH);
     => 17AE 003F
WRITEF(".4", 017AE003FH);    => 17AE.003F
WRITEF("_2", 017AE003FH);
    => 17 AE 00 3F
WRITEF(".2", 017AE003FH);    => 17.AE.00.3F
to:
8-bit BYTE Numerals:           |012345678901234567890|
WRITE(03FH);                 => 3F
WRITEF("x", 03FH);           => 0x3F
WRITEF("H", 03FH);           => 03FH
WRITEF("B", 03FH);            => 00111111B
Changed lines 19-21 from:
[-output should always show the full number of digits required by MAX(WORD)-]

!!!Output for type ADDRESS
to:
[-NB: The size of type BYTE may not be eight bits.-]


!!!!Output for type WORD
Changed lines 24-28 from:
64-bit ADDRESS Numerals:        |012345678901234567890|
WRITE(0DEADBEEFH);            => 00000000DEADBEEF
WRITEF(0DEADBEEFH, 8);        => 00000000 DEADBEEF
WRITEF(0DEADBEEFH, 8, ":");  => 00000000:DEADBEEF
WRITEF(0DEADBEEFH, 4, ".");  => 0000.0000.DEAD.BEEF
to:
32-bit WORD Numerals:           |012345678901234567890|
WRITE(017AE003FH);            => 17AE003F
WRITEF("_4", 017AE003FH);    => 17AE 003F
WRITEF(".4", 017AE003FH);     => 17AE.003F
WRITEF("_2", 017AE003FH);     => 17 AE 00 3F
WRITEF("
.2", 017AE003FH);    => 17.AE.00.3F
Changed lines 32-34 from:
[-output should always show the full number of digits required by MAX(ADDRESS)-]

!!!Output for type BITSET
to:
[-NB: The size of type WORD may not be 32 bits.-]

!!!Output for type ADDRESS
Changed lines 36-40 from:
Bitset Values:                 |012345678901234567890|
WRITE(03FH); (*8-bit BITSET*)
=> 00111111
WRITEF(03FH, 4);            => {0011 1111}
WRITEF(03FH, 4, ".");         => {0011.1111}
WRITEF(03FH, 4, ":");        => {0011:1111}
to:
64-bit ADDRESS Numerals:        |012345678901234567890|
WRITE(0DEADBEEFH);
          => 00000000DEADBEEF
WRITEF(0DEADBEEFH, 8);        => 00000000 DEADBEEF
WRITEF(0DEADBEEFH, 8, ":");
   => 00000000:DEADBEEF
WRITEF(0DEADBEEFH, 4, ".");  => 0000.0000.DEAD.BEEF
Changed lines 43-45 from:
[-output should always show all bits-]

!!!Output for type BOOLEAN
to:
[-NB: The size of type ADDRESS may not be 64 bits.-]

!!!Output for type BITSET
[@
Bitset Values:                  |012345678901234567890|
WRITE(03FH); (*8-bit BITSET*) => 00111111
WRITEF(03FH, 4);              => {0011 1111}
WRITEF(03FH, 4, ".");        => {0011.1111}
WRITEF(03FH, 4, ":");        => {0011:1111}
@]

[-NB: Output will always show all bits-]
2010-01-23 04:20 by benjk -
Changed line 19 from:
WRITEF(".2", 017AE003FH);     => 17.AE.00.3F
to:
WRITEF(".2", 017AE003FH);    => 17.AE.00.3F
2010-01-23 04:19 by benjk -
Changed line 19 from:
WRITEF(".2", 017AE003FH);  => 17.AE.00.3F
to:
WRITEF(".2", 017AE003FH);     => 17.AE.00.3F
2010-01-23 04:19 by benjk -
Changed lines 16-19 from:
WRITEF("_4", 017AE003FH);      => 17AE 003F
WRITEF(".4", 017AE003FH);  => 17AE.003F
WRITEF("_2", 017AE003FH);        => 17 AE 00 3F
WRITEF(".2", 017AE003FH, 2);  => 17.AE.00.3F
to:
WRITEF("_4", 017AE003FH);    => 17AE 003F
WRITEF(".4", 017AE003FH);     => 17AE.003F
WRITEF("_2", 017AE003FH);    => 17 AE 00 3F
WRITEF(".2", 017AE003FH);  => 17.AE.00.3F
2010-01-23 04:18 by benjk -
Changed lines 5-7 from:
WRITEF(03FH, "x");            => 0x3F
WRITEF(03FH, "H");            => 03FH
WRITEF(03FH, "B");            => 00111111B
to:
WRITEF("x", 03FH);            => 0x3F
WRITEF("H", 03FH);            => 03FH
WRITEF("B", 03FH);            => 00111111B
Changed lines 16-19 from:
WRITEF(017AE003FH, 4);       => 17AE 003F
WRITEF(017AE003FH, 4, ".");   => 17AE.003F
WRITEF(017AE003FH, 2);        => 17 AE 00 3F
WRITEF(017AE003FH, 2, ".");  => 17.AE.00.3F
to:
WRITEF("_4", 017AE003FH);      => 17AE 003F
WRITEF(".4", 017AE003FH);  => 17AE.003F
WRITEF("_2", 017AE003FH);        => 17 AE 00 3F
WRITEF(".2", 017AE003FH, 2);  => 17.AE.00.3F
2010-01-18 11:48 by benjk -
Changed line 3 from:
8-bit BYTE Numerals:            |0123456789012345678|
to:
8-bit BYTE Numerals:            |012345678901234567890|
Changed line 14 from:
32-bit WORD Numerals:          |0123456789012345678|
to:
32-bit WORD Numerals:          |012345678901234567890|
Changed line 26 from:
64-bit ADDRESS Numerals:        |0123456789012345678|
to:
64-bit ADDRESS Numerals:        |012345678901234567890|
Changed line 37 from:
Bitset Values:                  |0123456789012345678|
to:
Bitset Values:                  |012345678901234567890|
Changed line 48 from:
Boolean Values:                |0123456789012345678|
to:
Boolean Values:                |012345678901234567890|
Changed line 65 from:
Character Strings:              |0123456789012345678|
to:
Character Strings:              |012345678901234567890|
Changed line 74 from:
Octet Numerals:                |0123456789012345678|
to:
Octet Numerals:                |012345678901234567890|
Changed line 83 from:
Unsigned Whole Numerals:        |0123456789012345678|
to:
Unsigned Whole Numerals:        |012345678901234567890|
Changed line 93 from:
Signed Whole Numerals:          |0123456789012345678|
to:
Signed Whole Numerals:          |012345678901234567890|
Changed line 104 from:
Real Numerals:                  |0123456789012345678|
to:
Real Numerals:                  |012345678901234567890|
2010-01-17 23:17 by benjk -
Changed line 38 from:
WRITE(03FH); (*8-bit BITSET*) => {00111111}
to:
WRITE(03FH); (*8-bit BITSET*) => 00111111
2010-01-17 18:54 by benjk -
Changed line 69 from:
WRITEF("foobar", ASCII.LF);  => "foobar\n"
to:
WRITEF("foobar", ASCII.LF);  => foobar\n
2010-01-17 18:53 by benjk -
Added lines 61-69:
@]

!!!Output for ARRAY OF CHAR and ARRAY OF UNICHAR
[@
Character Strings:              |0123456789012345678|
WRITE("foobar");              => foobar
WRITEF("foobar", "'");        => 'foobar'
WRITEF("foobar", '"');        => "foobar"
WRITEF("foobar", ASCII.LF);  => "foobar\n"
2010-01-17 18:37 by benjk -
Changed line 95 from:
Real Numerals:                   |0123456789012345678|
to:
Real Numerals:                  |0123456789012345678|
2010-01-17 18:37 by benjk -
Changed line 84 from:
Signed Whole Numerals:           |0123456789012345678|
to:
Signed Whole Numerals:          |0123456789012345678|
2010-01-17 18:15 by benjk -
Added lines 53-60:
@]

!!!Output for types CHAR and UNICHAR
[@
Characters:                    |0123456789012345678|
WRITE("A");                  => A
WRITEF("A", "'");            => 'A'
WRITEF("A", '"');            => "A"
2010-01-17 18:05 by benjk -
Added line 9:
Added line 21:
Added line 32:
Added line 43:
2010-01-17 18:05 by benjk -
Changed lines 9-10 from:
output should always show the full number of digits required by MAX(BYTE)
to:
[-output should always show the full number of digits required by MAX(BYTE)-]
Changed lines 20-21 from:
output should always show the full number of digits required by MAX(WORD)
to:
[-output should always show the full number of digits required by MAX(WORD)-]
Changed lines 30-31 from:
output should always show the full number of digits required by MAX(ADDRESS)
to:
[-output should always show the full number of digits required by MAX(ADDRESS)-]
Changed line 40 from:
output should always show all bits
to:
[-output should always show all bits-]
2010-01-17 18:02 by benjk -
Deleted line 1:
output should always show the full number of digits required by MAX(BYTE)
Changed lines 9-10 from:
to:
output should always show the full number of digits required by MAX(BYTE)
Deleted line 11:
output should always show the full number of digits required by MAX(WORD)
Changed lines 20-21 from:
to:
output should always show the full number of digits required by MAX(WORD)
Deleted line 22:
output should always show the full number of digits required by MAX(ADDRESS)
Changed lines 30-31 from:
to:
output should always show the full number of digits required by MAX(ADDRESS)
Deleted line 32:
output should always show all bits
Changed lines 40-41 from:

!!!Output for type BITSET
to:
output should always show all bits

!!!Output for type BOOLEAN
2010-01-17 18:01 by benjk -
Added line 33:
output should always show all bits
2010-01-17 18:00 by benjk -
Changed lines 32-50 from:
!!!!Output for type OCTET
to:
!!!Output for type BITSET
[@
Bitset Values:                  |0123456789012345678|
WRITE(03FH); (*8-bit BITSET*) => {00111111}
WRITEF(03FH, 4);              => {0011 1111}
WRITEF(03FH, 4, ".");        => {0011.1111}
WRITEF(03FH, 4, ":");        => {0011:1111}
@]

!!!Output for type BITSET
[@
Boolean Values:                |0123456789012345678|
WRITE(TRUE);                  => TRUE
WRITE(FALSE);                => FALSE
WRITEF(TRUE, "Y");            => YES
WRITEF(FALSE, "Y");          => NO
@]

!!!Output for type OCTET
2010-01-17 17:38 by benjk -
Changed line 34 from:
Octet Numerals:                 |0123456789012345678|
to:
Octet Numerals:                |0123456789012345678|
2010-01-17 17:38 by benjk -
Changed line 34 from:
Octet Numerals:                     |0123456789012345678|
to:
Octet Numerals:                  |0123456789012345678|
2010-01-17 17:37 by benjk -
Added line 2:
output should always show the full number of digits required by MAX(BYTE)
Added line 12:
output should always show the full number of digits required by MAX(WORD)
Added line 23:
output should always show the full number of digits required by MAX(ADDRESS)
Added lines 30-38:
@]

!!!!Output for type OCTET
[@
Octet Numerals:                    |0123456789012345678|
WRITE(03FH);                  => 3F
WRITEF(03FH, "x");            => 0x3F
WRITEF(03FH, "H");            => 03FH
WRITEF(03FH, "B");            => 00111111B
2010-01-17 17:32 by benjk -
Added line 7:
WRITEF(03FH, "B");            => 00111111B
2010-01-17 17:26 by benjk -
Added line 34:
WRITEF(12345, 8, "x");        => 0x00003039
Added line 45:
WRITEF(-12345, 8, "x");      => 0x0000CFC7
2010-01-17 17:24 by benjk -
Added lines 1-56:
!!!!Output for type BYTE
[@
8-bit BYTE Numerals:            |0123456789012345678|
WRITE(03FH);                  => 3F
WRITEF(03FH, "x");            => 0x3F
WRITEF(03FH, "H");            => 03FH
@]

!!!!Output for type WORD
[@
32-bit WORD Numerals:          |0123456789012345678|
WRITE(017AE003FH);            => 17AE003F
WRITEF(017AE003FH, 4);        => 17AE 003F
WRITEF(017AE003FH, 4, ".");  => 17AE.003F
WRITEF(017AE003FH, 2);        => 17 AE 00 3F
WRITEF(017AE003FH, 2, ".");  => 17.AE.00.3F
@]

!!!Output for type ADDRESS
[@
64-bit ADDRESS Numerals:        |0123456789012345678|
WRITE(0DEADBEEFH);            => 00000000DEADBEEF
WRITEF(0DEADBEEFH, 8);        => 00000000 DEADBEEF
WRITEF(0DEADBEEFH, 8, ":");  => 00000000:DEADBEEF
WRITEF(0DEADBEEFH, 4, ".");  => 0000.0000.DEAD.BEEF
@]

!!!Output for types CARDINAL and LONGCARD
[@
Unsigned Whole Numerals:        |0123456789012345678|
WRITE(12345);                => 12345
WRITEF(12345, 8);            =>    12,345
WRITEF(12345, 8, "*");        => ***12,345
WRITEF(12345, 8, "H");        => 00003039H
@]

!!!Output for types INTEGER and LONGINT
[@
Signed Whole Numerals:          |0123456789012345678|
WRITE(12345);                =>  12345
WRITE(-12345);                => -12345
WRITEF(-12345, 8);            => -  12,345
WRITEF(-12345, 8, "*");      => -***12,345
WRITEF(-12345, 8, "H");      => 0000CFC7H
@]

!!!Output for types REAL, LONGREAL, BCD and LONGBCD
[@
Real Numerals:                  |0123456789012345678|
WRITE(12345.67);              =>  1.234567000E+04
WRITE(-12345.67);            => -1.234567000E+04
WRITEF(-12345.67, 8);        => -  12,345.67000
WRITEF(-12345.67, 8, 2);      => -  12,345.67
WRITEF(-12345.67, 8, 2, "*"); => -***12,345.67
WRITEF(-12345.67, 8, 3, "E"); => -12.345,670E+03
@]