User talk:Mbishop: Difference between revisions

Content added Content deleted
m (→‎Algol language file: use html entities for algol characters)
Line 18: Line 18:
** Extension library names - Algol68 has additional OPerators, constants and PROCedures that I can generate a list if you like.
** Extension library names - Algol68 has additional OPerators, constants and PROCedures that I can generate a list if you like.


There are 4 different main contexts.
There are several different main contexts.
* Code - BEGIN ~ END or ( ~ )
* Code - BEGIN ~ END or ( ~ )
* A COmment - either CO ~ CO or COMMENT ~ COMMENT or ¢ ~ ¢ (two cents worth)
* A COmment - either CO ~ CO or COMMENT ~ COMMENT or ¢ ~ ¢ (two cents worth)
Line 24: Line 24:
* STRINGs - "double quotes", where """" is a strings containing 1 double quote.
* STRINGs - "double quotes", where """" is a strings containing 1 double quote.
* FORMATs - $ddd,g(2),l$, the tricky one is that $f(code)d$, where f(code) is indeed contains Algol68 code returning an INT.
* FORMATs - $ddd,g(2),l$, the tricky one is that $f(code)d$, where f(code) is indeed contains Algol68 code returning an INT.
Also bold words can be places in single quotes if bolding is not
available on a particular computer:
* 'IF' ~ 'THEN' ~ 'ELSE' ~ 'FI' - this is called quote stropping.
There are several other forms of stropping, but for simplicity you can probably ignore these.


If you want to make things really interesting, Algol68 was internationalised in
If you want to make things really interesting, Algol68 was internationalised in
Line 36: Line 40:
The ∨, ∧, ¬, ≠, ≤, ≥, ×, ÷, ⌷, ↑, ↓, ⌊, ⌈ and ⊥ characters can be found on the [[:wikipedia:IBM 2741]] keyboard with the [[:wikipedia:APL programming language#APL symbols and keyboard layout|APL]] "golf-ball" print head inserted, these became available in the mid 1960s while ALGOL 68 was being drafted.
The ∨, ∧, ¬, ≠, ≤, ≥, ×, ÷, ⌷, ↑, ↓, ⌊, ⌈ and ⊥ characters can be found on the [[:wikipedia:IBM 2741]] keyboard with the [[:wikipedia:APL programming language#APL symbols and keyboard layout|APL]] "golf-ball" print head inserted, these became available in the mid 1960s while ALGOL 68 was being drafted.


Notes:
Note that Unicode character "DECIMAL EXPONENT SYMBOL 23e8" is also permitted. eg In Algol "1 million" can be 1 000 000 or 1e6 or even 1⏨6.
* Unicode character "DECIMAL EXPONENT SYMBOL 23e8" is also permitted. eg In Algol "1 million" can be 1 000 000 or 1e6 or even 1⏨6.
* binary/nibble/octal/hexidecimal literals are of the form 2r01, 4r01230123, 8r01234567, 16r0123456789abcdef respectively.


===BOLD symbols and reserved words as typically printed===
====BOLD symbols and reserved words as typically printed====
There are 61 such reserved words ( some with "brief symbol" equivalents ) in the standard sub-language:
There are 61 such reserved words ( some with "brief symbol" equivalents ) in the standard sub-language:
Declaration sections†:
Declaration sections†:
Line 63: Line 69:


{† Apologies to C.H. Lindsey et al. for these descriptions, they are not the
{† Apologies to C.H. Lindsey et al. for these descriptions, they are not the
official ALGOL 68 naming conventions, rather C hybrids.}
official ALGOL 68 naming conventions, rather my C-style hybrid names.}

=== More specific details and examples ===


====Monadic operators====
====Monadic operators====
Line 110: Line 118:


====Assignation and identity relations etc====
====Assignation and identity relations etc====
These are technically not operators, rather they are considered "[http://vestein.arb-phys.uni-dortmund.de/~wb/Rev1/rr52.html units associated with names]"
{|border="1" style="border-collapse: collapse;"
{|border="1" style="border-collapse: collapse;"
!bgcolor=#cccccc|'''prio'''rity
!bgcolor=#cccccc|'''prio'''rity