An Imperative Pure Calculus
Author(s) -
A. Capriccioli,
Marco Servetto,
Elena Zucca
Publication year - 2016
Publication title -
electronic notes in theoretical computer science
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.242
H-Index - 60
ISSN - 1571-0661
DOI - 10.1016/j.entcs.2016.03.007
Subject(s) - computer science , simple (philosophy) , programming language , rewriting , extension (predicate logic) , construct (python library) , semantics (computer science) , block (permutation group theory) , aliasing , code (set theory) , theoretical computer science , calculus (dental) , algorithm , algebra over a field , mathematics , artificial intelligence , pure mathematics , medicine , dentistry , philosophy , geometry , set (abstract data type) , epistemology , undersampling
We present a simple calculus where imperative features are modeled by just rewriting source code terms, rather than by modifying an auxiliary structure which mimics physical memory. Formally, this is achieved by the block construct, introducing local variable declarations, which also plays the role of store when such declarations have been evaluated. In this way, we obtain a language semantics which is more abstract, and directly represents at the syntactic level constraints on aliasing, allowing simpler reasoning about related properties. We illustrate this possibility by a simple extension of the standard type system which assigns a capsule tag to expressions that will reduce to (values representing) isolated portions of store
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom