Filters








19,069 Hits in 3.7 sec

Complete Laziness: a Natural Semantics

François-Régis Sinot
2008 Electronical Notes in Theoretical Computer Science  
This gives a clear, formal and implementation-independent operational semantics to completely lazy evaluation, in a natural (or bigstep) style similar to Launchbury's.  ...  In this paper, we generalise Launchbury's semantics in order to capture "complete laziness", as coined by Holst and Gomard in 1991, which is slightly more than fully lazy sharing, and closer to on-the-fly  ...  Conclusion In this paper we have presented a natural semantics to model completely lazy evaluation.  ... 
doi:10.1016/j.entcs.2008.03.058 fatcat:lgufilz7nnbznh7tjmjlvyfpma

A natural semantics for lazy evaluation

John Launchbury
1993 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '93  
Furthermore, because a heap is explicitly modelled, the semantics provides a suitable framework for studies about space behaviour of terms under lazy evaluation.  ...  We define an operational semantics for lazy evaluation which provides an accurate model for sharing.  ...  Conclusion In this paper we have presented a natural semantics which models lazy evaluation as it is commonly implemented. The model works on the level of terms, using a heap to capture shariug.  ... 
doi:10.1145/158511.158618 dblp:conf/popl/Launchbury93 fatcat:7pvp5sukefehrm73ohl3rdss64

A Locally Nameless Representation for a Natural Semantics for Lazy Evaluation [chapter]

Lidia Sánchez-Gil, Mercedes Hidalgo-Herrero, Yolanda Ortega-Mallén
2012 Lecture Notes in Computer Science  
We propose a locally nameless representation for Launchbury's natural semantics for lazy evaluation. Names are reserved for free variables, while bound variable names are replaced by indices.  ...  Moreover, we prove that the choice of names during the evaluation of a term is irrelevant as long as they are fresh enough.  ...  Fig. 7 . 7 Free variables Fig. 9 . 9 Natural semantics Fig. 10 . 10 Locally nameless natural semantics 6. J. Launchbury. A natural semantics for lazy evaluation.  ... 
doi:10.1007/978-3-642-32943-2_8 fatcat:mxli3r47rra53j5vl2pongedu4

New completeness results for lazy conditional narrowing

Mircea Marin, Aart Middeldorp
2004 Proceedings of the 6th ACM SIGPLAN international conference on Principles and practice of declarative programming - PPDP '04  
We show the completeness of the lazy conditional narrowing calculus (LCNC) with leftmost selection for the class of deterministic conditional rewrite systems (CTRSs).  ...  From the completeness proof we obtain several insights to make the calculus more deterministic.  ...  Completeness issues for the lazy narrowing calculus lnc have been extensively studied in [11] and [10] .  ... 
doi:10.1145/1013963.1013979 dblp:conf/ppdp/MarinM04 fatcat:njruej4qqra4jbzsqtk6lhthz4

Lazy narrowing: Strong completeness and eager variable elimination

Aart Middeldorp, Satoshi Okui, Tetsuo Ida
1996 Theoretical Computer Science  
. $[19, 18] $ for the lazy narrowing calculus $\mathrm{L}\mathrm{N}\mathrm{C}$ .  ...  Because narrowing is a rather complicated operation, several authors studied calculi in which narrowing is replaced by more simple inference rules.  ...  Consider e.g. the TRS $\mathcal{R}$ consisting of the following three rewrite rules, specifying subtraction on natural numbers: $0-y$ $arrow$ $0$ $x-0$ $arrow$ $x$ $\mathrm{s}(x)-\mathrm{s}(y)$ $arrow$  ... 
doi:10.1016/0304-3975(96)00071-0 fatcat:csqbkmjo65eitdlfj7euhyn2gq

Maximal Laziness

Eelco Dolstra
2009 Electronical Notes in Theoretical Computer Science  
Instead, a straight-forward translation of call-by-name semantic rules yields a call-by-need interpreter, reducing the gap between the language specification and its implementation.  ...  Laziness is a useful property because it allows the programmer to abstract over the ordering of computations, and  ...  It shows that maximal sharing is efficient enough to allow the evaluation of a practical purely functional DSL to be completely memoised, giving rise to the highly useful property of maximal laziness.  ... 
doi:10.1016/j.entcs.2009.09.042 fatcat:jms7fe4c7bairikpz64kvuq4ve

Lazy TSO Reachability [chapter]

Ahmed Bouajjani, Georgel Calin, Egor Derevenetc, Roland Meyer
2015 Lecture Notes in Computer Science  
We propose here to give up completeness. Our contribution is a new algorithm for TSO reachability: it uses the standard SC semantics and introduces the TSO semantics lazily and only where needed.  ...  Altogether, this yields an iterative under-approximation that we prove sound and complete for bug hunting, i.e., a semi-decision procedure halting for positive cases of reachability.  ...  Unlike [2] , we do not target completeness. Instead, we argue that our lazy TSO reachability checker is useful for a fast detection of bugs that are due to the TSO semantics.  ... 
doi:10.1007/978-3-662-46675-9_18 fatcat:3rms3wi2trdcrp2yf233pc4ojm

Lazy Assertions [chapter]

Olaf Chitil, Dan McNeill, Colin Runciman
2004 Lecture Notes in Computer Science  
We explore the subtle semantics of lazy assertions and describe sequential and concurrent variants of a method for checking lazy assertions. All variants are implemented in Haskell.  ...  So in a lazy functional language assertions should be lazy -not forcing evaluation, but only examining what is evaluated by other parts of the program.  ...  Acknowledgements Thanks to Dean Herington, Claus Reinke and Simon Peyton Jones for their contributions to a discussion on the Haskell mailing list about how to achieve data-driven concurrency.  ... 
doi:10.1007/978-3-540-27861-0_1 fatcat:5n4rapwgfzdgboq4hxergt6rci

Lazy XSL transformations

Steffen Schott, Markus L. Noga
2003 Proceedings of the 2003 ACM symposium on Document engineering - DocEng '03  
To demonstrate that lazy evaluation preserves the semantics of XSLT, we reduce XSLT to the lambda calculus via a functional language.  ...  We introduce a lazy XSLT interpreter that provides random access to the transformation result. This allows efficient pipelining of transformation sequences.  ...  Because the global nature of keys inhibits lazy evaluation, we exclude them from consideration.  ... 
doi:10.1145/958222.958224 fatcat:oqmew5ltbzbfzgw3kr6c55p3pe

Lazy XSL transformations

Steffen Schott, Markus L. Noga
2003 Proceedings of the 2003 ACM symposium on Document engineering - DocEng '03  
To demonstrate that lazy evaluation preserves the semantics of XSLT, we reduce XSLT to the lambda calculus via a functional language.  ...  We introduce a lazy XSLT interpreter that provides random access to the transformation result. This allows efficient pipelining of transformation sequences.  ...  Because the global nature of keys inhibits lazy evaluation, we exclude them from consideration.  ... 
doi:10.1145/958220.958224 dblp:conf/doceng/SchottN03 fatcat:w37tzlyrpbcqdcfjferj6vyzfy

Stepping Lazy Programs [article]

Stephen Chang and John Clements and Eli Barzilay and Matthias Felleisen
2011 arXiv   pre-print
Our novel lazy semantics introduces lazy evaluation as a form of parallel program rewriting.  ...  It represents a compromise between Launchbury's store-based semantics and a simple, axiomatic description of lazy computation as sharing-via-parameters.  ...  Clearly, doing so contradicts both the natural implementations (which use a mix of graph rewriting and memoizing) and the widely used Launchbury semantics (which uses a store-based semantics to mimic memoizing  ... 
arXiv:1108.4706v1 fatcat:mjtxojqhyrhgteqlyv6eu4vawu

Lazy TSO Reachability [article]

Ahmed Bouajjani, Georgel Calin, Egor Derevenetc, Roland Meyer
2015 arXiv   pre-print
We propose here to give up completeness. Our contribution is a new algorithm for TSO reachability: it uses the standard SC semantics and introduces the TSO semantics lazily and only where needed.  ...  Altogether, this yields an iterative under-approximation that we prove sound and complete for bug hunting, i.e., a semi-decision procedure halting for positive cases of reachability.  ...  Unlike [2] , we do not target completeness. Instead, we argue that our lazy TSO reachability checker is useful for a fast detection of bugs that are due to the TSO semantics.  ... 
arXiv:1501.02683v1 fatcat:adu677ebovbfdi7f2bbrrm4leq

Pattern driven lazy reduction

P. A. Subrahmanyam, J-H. You
1984 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages - POPL '84  
A novel lazy evaluation mechanism, pattern-driven lazy reduction, is developed that serves as a unifying evaluation mechanism for both functional and logic programs.  ...  The reduction of a function call can be viewed as "semantically" unifying the function call with the leR hand side of a defining equation, and applying the unifier to the right hand side.  ...  Notice that by adopting an equational model the notion of lazy evaluation extends to any algebraic data type in a very natural way without increasing language complexity.  ... 
doi:10.1145/800017.800534 dblp:conf/popl/SubrahmanyamY84 fatcat:wsdkv4wnafgkhkwctcr5n2epeu

Lazy Programs Leak Secrets [chapter]

Pablo Buiras, Alejandro Russo
2013 Lecture Notes in Computer Science  
In this work, we describe a novel exploit of lazy evaluation to reveal secrets in IFC systems.  ...  We illustrate our claim with an attack for LIO, a concurrent IFC system for Haskell. We propose a countermeasure based on restricting the implicit sharing caused by lazy evaluation.  ...  In his paper, Breitner shows how to extend Launchbury's natural semantics for lazy evaluation [7] with deepDup.  ... 
doi:10.1007/978-3-642-41488-6_8 fatcat:ti2yk2sokrehxdligq6j7vzs64

A Natural Implementation of Plural Semantics in Maude

Adrián Riesco, Juan Rodríguez-Hortalá
2010 Electronical Notes in Theoretical Computer Science  
Recently, a new semantics for non-deterministic lazy functional(-logic) programming has been presented, in which the treatment of parameter passing was different to previous proposals like call-time choice  ...  Besides, in order to improve the performance of the prototype, an implementation of the natural rewriting on-demand strategy has been developed, therefore taking the first steps towards obtaining a framework  ...  can be assigned to a lazy functional language after introducing non-determinism.  ... 
doi:10.1016/j.entcs.2010.08.039 fatcat:xxpaotptqzbbjho4ojmr5bgf3q
« Previous Showing results 1 — 15 out of 19,069 results