next up previous contents index
Next: Examples using pre-defined primitives Up: Linking Logic with the Previous: Linking Logic with the   Contents   Start


Syntax of A++ including pre-defined primitive abstractions


$\displaystyle \flq expression\frq\ $ $\displaystyle ::=$ $\displaystyle \flq abstraction\frq\ \vert$ (6)
    $\displaystyle \flq reference\frq\ \vert$  
    $\displaystyle \flq synthesis\frq\ \vert$  
    $\displaystyle \flq predefined\: abstraction\frq\ $  
$\displaystyle \flq abstraction\frq\ $ $\displaystyle ::=$ $\displaystyle '(' \: define \: \flq variable\frq\ \: \flq expression\frq\ \: ')' \: \vert$ (7)
    $\displaystyle '(lambda (' \: \{ \flq variable \frq\ \} \: ')'$  
    $\displaystyle \flq expression\frq\ \: \{ \: \flq expression\frq\ \} \: ')'$  
$\displaystyle \flq reference\frq\ $ $\displaystyle ::=$ $\displaystyle \flq variable\frq\ $ (8)
$\displaystyle \flq synthesis\frq\ $ $\displaystyle ::=$ $\displaystyle '(' \: \flq operator \: expression\frq\ \: \{ \flq expression\frq\ \} \: ')'$ (9)
$\displaystyle \flq variable\frq\ $ $\displaystyle ::=$ $\displaystyle \flq symbol\frq\ $ (10)
$\displaystyle \flq operator \: expression\frq\ $ $\displaystyle ::=$ $\displaystyle \flq abstraction\frq\ \: \vert \: \flq reference\frq\ \: \vert \: \flq synthesis\frq\ \vert$ (11)
    $\displaystyle \flq predefined \: operation\frq\ $  
$\displaystyle \flq predefined\: abstraction\frq\ $ $\displaystyle ::=$ $\displaystyle \flq predefined \: value\frq\ \vert$ (12)
    $\displaystyle \flq predefined \: operation\frq\ $  
$\displaystyle \flq predefined \: value\frq\ $ $\displaystyle ::=$ $\displaystyle \flq vmzero\frq\ \vert \flq vmtrue\frq\ \vert \flq vmfalse\frq\ \vert$ (13)
    $\displaystyle \flq double \: quoted \: string\frq\ \vert \flq single \: quoted \: string\frq\ $  
$\displaystyle \flq double \: quoted \: string\frq\ $ $\displaystyle ::=$ $\displaystyle '''' \flq string\frq\ ''''$ (14)
$\displaystyle \flq single \: quoted \: string\frq\ $ $\displaystyle ::=$ $\displaystyle ''' \flq string\frq\ $ (15)
$\displaystyle \flq predefined \: operation\frq\ $ $\displaystyle ::=$ $\displaystyle \flq incr\frq\ \vert \flq print\frq\ \vert \flq load\frq\ \vert \flq equalx\frq\ \vert \flq quit\frq\ $ (16)


next up previous contents index
Next: Examples using pre-defined primitives Up: Linking Logic with the Previous: Linking Logic with the   Contents   Start

Georg P. Loczewski 2004-03-05


Impressum und Datenschutz