Transformation of Applicative Specifications into Imperative ...
Transformation of Applicative Specifications into Imperative ... Transformation of Applicative Specifications into Imperative ...
APPENDIX E. ANTLR GRAMMAR ; | NAT { t l = new TypeLiteral (new NAT( ) ) ; } | BOOLEAN { t l = new TypeLiteral (new BOOL( ) ) ; } | CHAR { t l = new TypeLiteral (new CHAR( ) ) ; } | TEXT { t l = new TypeLiteral (new TEXT( ) ) ; } | UNIT { t l = new TypeLiteral (new UNIT( ) ) ; } // Value Expressions value_expr returns [ ValueExpr ve ] { ve = null ; } : ve = infix_expr_pr9 ; value_expr_pair returns [ ValueExprPair vep ] { vep = null ; ValueExpr ve1 = null ; ValueExpr ve2 = null ; } : ve1 = value_expr MAPSTO ve2 = value_expr {vep = new ValueExprPair ( ve1 , ve2 ) ; } ; infix_expr_pr9 returns [ ValueExpr ve ] { ve = null ; ValueExpr ve1 = null ; I n f i x O p e r a t o r r i o = null ; ValueExpr ve2 = null ; ValueExpr ve3 = null ; } : ve1 = infix_expr_pr8 ( r i o = infix_op_pr9 ve2 = infix_expr_pr8 { ve3 = ve1 ; ve1 = new ValueInfixExpr ( ve3 , r i o , ve2 ) ; } ) ∗ { ve = ve1 ; } ; infix_expr_pr8 returns [ ValueExpr ve ] { ve = null ; ValueExpr ve1 = null ; I n f i x O p e r a t o r r i o = null ; ValueExpr ve2 = null ; ValueExpr ve3 = null ; } 490
: ve1 = infix_expr_pr7 ( r i o = infix_op_pr8 ve2 = infix_expr_pr7 { ve3 = ve1 ; ve1 = new ValueInfixExpr ( ve3 , r i o , ve2 ) ; } ) ∗ {ve = ve1 ; } ; infix_expr_pr7 returns [ ValueExpr ve ] { ve = null ; ValueExpr ve1 = null ; I n f i x O p e r a t o r r i o = null ; ValueExpr ve2 = null ; ValueExpr ve3 = null ; } : ve1 = infix_expr_pr6 ( r i o = infix_op_pr7 ve2 = infix_expr_pr6 { ve3 = ve1 ; ve1 = new ValueInfixExpr ( ve3 , r i o , ve2 ) ; } ) ∗ {ve = ve1 ; } ; infix_expr_pr6 returns [ ValueExpr ve ] { ve = null ; ValueExpr ve1 = null ; I n f i x O p e r a t o r r i o = null ; ValueExpr ve2 = null ; ValueExpr ve3 = null ; } : ve1 = infix_expr_pr5 ( r i o = infix_op_pr6 ve2 = infix_expr_pr5 { ve3 = ve1 ; ve1 = new ValueInfixExpr ( ve3 , r i o , ve2 ) ; } ) ∗ {ve = ve1 ; } ; infix_expr_pr5 returns [ ValueExpr ve ] { ve = null ; ValueExpr ve1 = null ; I n f i x O p e r a t o r r i o = null ; ValueExpr ve2 = null ; ValueExpr ve3 = null ; } : ve1 = infix_expr_pr4 ( r i o = infix_op_pr5 ve2 = infix_expr_pr4 491
- Page 456 and 457: APPENDIX D. SPECIFICATION OF TRANSF
- Page 458 and 459: APPENDIX D. SPECIFICATION OF TRANSF
- Page 460 and 461: APPENDIX D. SPECIFICATION OF TRANSF
- Page 462 and 463: APPENDIX D. SPECIFICATION OF TRANSF
- Page 464 and 465: APPENDIX D. SPECIFICATION OF TRANSF
- Page 466 and 467: APPENDIX D. SPECIFICATION OF TRANSF
- Page 468 and 469: APPENDIX D. SPECIFICATION OF TRANSF
- Page 470 and 471: APPENDIX D. SPECIFICATION OF TRANSF
- Page 472 and 473: APPENDIX D. SPECIFICATION OF TRANSF
- Page 474 and 475: APPENDIX D. SPECIFICATION OF TRANSF
- Page 476 and 477: APPENDIX D. SPECIFICATION OF TRANSF
- Page 478 and 479: APPENDIX D. SPECIFICATION OF TRANSF
- Page 480 and 481: APPENDIX D. SPECIFICATION OF TRANSF
- Page 482 and 483: APPENDIX D. SPECIFICATION OF TRANSF
- Page 484 and 485: APPENDIX D. SPECIFICATION OF TRANSF
- Page 486 and 487: APPENDIX D. SPECIFICATION OF TRANSF
- Page 488 and 489: APPENDIX D. SPECIFICATION OF TRANSF
- Page 490 and 491: APPENDIX D. SPECIFICATION OF TRANSF
- Page 492 and 493: APPENDIX E. ANTLR GRAMMAR END = "en
- Page 494 and 495: APPENDIX E. ANTLR GRAMMAR ; d = d e
- Page 496 and 497: APPENDIX E. ANTLR GRAMMAR ; } ( com
- Page 498 and 499: APPENDIX E. ANTLR GRAMMAR ; ) ∗ }
- Page 500 and 501: APPENDIX E. ANTLR GRAMMAR ; } else
- Page 502 and 503: APPENDIX E. ANTLR GRAMMAR prod_bind
- Page 504 and 505: APPENDIX E. ANTLR GRAMMAR ; | | | |
- Page 508 and 509: APPENDIX E. ANTLR GRAMMAR ; { ve3 =
- Page 510 and 511: APPENDIX E. ANTLR GRAMMAR ( | RPARE
- Page 512 and 513: APPENDIX E. ANTLR GRAMMAR | { optio
- Page 514 and 515: APPENDIX E. ANTLR GRAMMAR new RSLLi
- Page 516 and 517: APPENDIX E. ANTLR GRAMMAR infix_op_
- Page 518 and 519: APPENDIX E. ANTLR GRAMMAR : v l = v
- Page 520 and 521: APPENDIX E. ANTLR GRAMMAR } t e s t
- Page 522 and 523: APPENDIX E. ANTLR GRAMMAR } : ’ .
- Page 524 and 525: APPENDIX E. ANTLR GRAMMAR 508
- Page 526 and 527: APPENDIX F. SOURCE CODE System . e
- Page 528 and 529: APPENDIX F. SOURCE CODE } } catch (
- Page 530 and 531: APPENDIX F. SOURCE CODE F.2 Visitor
- Page 532 and 533: APPENDIX F. SOURCE CODE public void
- Page 534 and 535: APPENDIX F. SOURCE CODE public void
- Page 536 and 537: APPENDIX F. SOURCE CODE public void
- Page 538 and 539: APPENDIX F. SOURCE CODE public void
- Page 540 and 541: APPENDIX F. SOURCE CODE public void
- Page 542 and 543: APPENDIX F. SOURCE CODE public void
- Page 544 and 545: APPENDIX F. SOURCE CODE public void
- Page 546 and 547: APPENDIX F. SOURCE CODE StringRSLAs
- Page 548 and 549: APPENDIX F. SOURCE CODE } nameOrWil
- Page 550 and 551: APPENDIX F. SOURCE CODE } public vo
- Page 552 and 553: APPENDIX F. SOURCE CODE } r e s u l
- Page 554 and 555: APPENDIX F. SOURCE CODE public void
: ve1 = infix_expr_pr7<br />
(<br />
r i o = infix_op_pr8 ve2 = infix_expr_pr7<br />
{ ve3 = ve1 ;<br />
ve1 = new ValueInfixExpr ( ve3 , r i o , ve2 ) ; }<br />
) ∗<br />
{ve = ve1 ; }<br />
;<br />
infix_expr_pr7 returns [ ValueExpr ve ] {<br />
ve = null ;<br />
ValueExpr ve1 = null ;<br />
I n f i x O p e r a t o r r i o = null ;<br />
ValueExpr ve2 = null ;<br />
ValueExpr ve3 = null ; }<br />
: ve1 = infix_expr_pr6<br />
(<br />
r i o = infix_op_pr7 ve2 = infix_expr_pr6<br />
{ ve3 = ve1 ;<br />
ve1 = new ValueInfixExpr ( ve3 , r i o , ve2 ) ; }<br />
) ∗<br />
{ve = ve1 ; }<br />
;<br />
infix_expr_pr6 returns [ ValueExpr ve ] {<br />
ve = null ;<br />
ValueExpr ve1 = null ;<br />
I n f i x O p e r a t o r r i o = null ;<br />
ValueExpr ve2 = null ;<br />
ValueExpr ve3 = null ; }<br />
: ve1 = infix_expr_pr5<br />
(<br />
r i o = infix_op_pr6 ve2 = infix_expr_pr5<br />
{ ve3 = ve1 ;<br />
ve1 = new ValueInfixExpr ( ve3 , r i o , ve2 ) ; }<br />
) ∗<br />
{ve = ve1 ; }<br />
;<br />
infix_expr_pr5 returns [ ValueExpr ve ] {<br />
ve = null ;<br />
ValueExpr ve1 = null ;<br />
I n f i x O p e r a t o r r i o = null ;<br />
ValueExpr ve2 = null ;<br />
ValueExpr ve3 = null ;<br />
}<br />
: ve1 = infix_expr_pr4<br />
(<br />
r i o = infix_op_pr5 ve2 = infix_expr_pr4<br />
491