Changes between Version 60 and Version 61 of IR2


Ignore:
Timestamp:
05/02/21 15:51:07 (5 years ago)
Author:
siegel
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • IR2

    v60 v61  
    206206  | 'NULL'
    207207  | '$proc_null'
    208   | '$mem_empty'
    209   | '$seq_empty'
    210   | '$map_empty'
    211   | '$set_empty'
    212   | '$rel_empty'
    213208  | '(' type-name ')' expr  /* cast */
    214   | '(' type-name ')' '{' expression-list? '}'  /* concrete array or struct */
     209  | '(' type-name ')' '{' expression-list? '}'  /* concrete array, struct, $seq, $set, $mem */
     210  | '(' type-name ')' '{' expr-pair-list? ')' /* concrete map */
    215211  | '(' type-name ')' '$lambda' '(' '$int' identifier-list ')' expr  /* array literal, aka array lambda */
    216212  | expr '..' expr '#' expr  /* range literal */
     
    236232  | expr '?' expr ':' expr  /* if-then-else expression */
    237233  ;
     234expr-pair-list: expr-pair (',' expr-pair)* ;
     235expr-pair: '{' expr ',' expr '}' ;
    238236
    239237}}}
     
    282280
    283281* need concrete sequence
     282
    284283{{{
    285284<T> $seq<T> $seq_add( $seq<T> a, T e); // sequence obtained by adding element e to the end of a