Filters








33 Hits in 2.9 sec

Coeffects: Unified Static Analysis of Context-Dependence [chapter]

Tomas Petricek, Dominic Orchard, Alan Mycroft
2013 Lecture Notes in Computer Science  
We consider three examples of context-dependence analysis: liveness analysis, tracking the use of implicit parameters (similar to tracking of resource usage in distributed computation), and calculating  ...  Informed by these cases, we present a unified calculus for tracking context dependence in functional languages together with a categorical semantics based on indexed comonads.  ...  We thank Gavin Bierman, Tarmo Uustalu, Varmo Vene and reviewers of earlier drafts. This work was supported by the EPSRC and CHESS.  ... 
doi:10.1007/978-3-642-39212-2_35 fatcat:oicnyrke7fhd3abwz4auvoy3gm

Coeffects

Tomas Petricek, Dominic Orchard, Alan Mycroft
2014 SIGPLAN notices  
The examples presented in this paper are based on analysis of established language features (liveness, linear logics, dataflow, dynamic scoping) and we argue that such context-aware properties will also  ...  The recently introduced notion of coeffects captures the latter, whole-context properties, but it failed to capture fine-grained per-variable properties.  ...  Semantics Coeffects provide a unified description of context dependence. In the previous sections, we used this to define a unified coeffect calculus.  ... 
doi:10.1145/2692915.2628160 fatcat:52dvuoq3gvelrbv3v2anawzxqe

Coeffects

Tomas Petricek, Dominic Orchard, Alan Mycroft
2014 Proceedings of the 19th ACM SIGPLAN international conference on Functional programming - ICFP '14  
The examples presented in this paper are based on analysis of established language features (liveness, linear logics, dataflow, dynamic scoping) and we argue that such context-aware properties will also  ...  The recently introduced notion of coeffects captures the latter, whole-context properties, but it failed to capture fine-grained per-variable properties.  ...  Semantics Coeffects provide a unified description of context dependence. In the previous sections, we used this to define a unified coeffect calculus.  ... 
doi:10.1145/2628136.2628160 dblp:conf/icfp/PetricekOM14 fatcat:bc3f2kyhg5hatkbb3hxuwgkv4i

A Core Quantitative Coeffect Calculus [chapter]

Aloïs Brunel, Marco Gaboardi, Damiano Mazza, Steve Zdancewic
2014 Lecture Notes in Computer Science  
However, recent works have shown the usefulness of comonads to structure context dependent computations.  ...  This additional structure is used to express comonadic type analysis.  ...  This work benefited from partial support of: ANR, under projects  ... 
doi:10.1007/978-3-642-54833-8_19 fatcat:lfedilzrobewxbj55nogaeodj4

Combining effects and coeffects via grading

Marco Gaboardi, Shin-ya Katsumata, Dominic Orchard, Flavien Breuvart, Tarmo Uustalu
2016 SIGPLAN notices  
They roughly correspond to computations which change the execution context (effects) versus computations which make demands on the context (coeffects).  ...  This can describe both the changes and requirements that a program has on its context, as well as interactions between these effectful and coeffectful features of computation.  ...  This corresponds more closely to static analysis of effects and coeffects.  ... 
doi:10.1145/3022670.2951939 fatcat:koluiqnyonaabf6nbdoymmc2u4

Combining effects and coeffects via grading

Marco Gaboardi, Shin-ya Katsumata, Dominic Orchard, Flavien Breuvart, Tarmo Uustalu
2016 Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming - ICFP 2016  
They roughly correspond to computations which change the execution context (effects) versus computations which make demands on the context (coeffects).  ...  This can describe both the changes and requirements that a program has on its context, as well as interactions between these effectful and coeffectful features of computation.  ...  This corresponds more closely to static analysis of effects and coeffects.  ... 
doi:10.1145/2951913.2951939 dblp:conf/icfp/GaboardiKOBU16 fatcat:f55lofqgbreupmg26k3zmttuji

PhD Abstracts

GRAHAM HUTTON
2017 Journal of functional programming  
As a service to the community, the Journal of Functional Programming publishes the abstracts from PhD dissertations completed during the previous year.  ...  Our second contribution is the definition of two unified coeffect calculi that capture the common structure of the examples.  ...  In this thesis, we propose the idea of combining static and dynamic analysis for effect systems to improve precision and flexibility.  ... 
doi:10.1017/s0956796817000089 fatcat:p2yk5sbqazcuriv33wdtzekcc4

PhD Abstracts

GRAHAM HUTTON
2015 Journal of functional programming  
As a service to the community, the Journal of Functional Programming publishes the abstracts from PhD dissertations completed during the previous year.  ...  for a reasonable level of safety through static analysis.  ...  Secondly, a general class of static analyses called coeffect systems is introduced to describe the propagation of contextual requirements throughout a program.  ... 
doi:10.1017/s0956796815000167 fatcat:6t25jkfshjfdtj7hv5mxmjcwfm

A unifying type-theory for higher-order (amortized) cost analysis

Vineet Rajani, Marco Gaboardi, Deepak Garg, Jan Hoffmann
2021 Proceedings of the ACM on Programming Languages (PACMPL)  
This paper presents 𝜆-amor, a new type-theoretic framework for amortized cost analysis of higher-order functional programs and shows that existing type systems for cost analysis can be embedded in it.  ...  ), in different styles (effect-based and coeffect-based), and with or without amortization.  ...  The literature on cost analysis is very vast; we summarize and compare to only a representative subset of the literature, covering several prominent styles of cost analysis. Type and effect systems.  ... 
doi:10.1145/3434308 fatcat:wdzunsacrvgr5hwvo35e3c4u4m

A Functional Programming Language with Versions

Yudai Tanabe, Luthfan Anshar Lubis, Tomoyuki Aotani, Hidehiko Masuhara
2021 The Art, Science, and Engineering of Programming  
We show the construction of the type system as an extension of coeffect calculus by mapping versions to computational resources.  ...  The type system guarantees the existence of a valid combination of versions for a program. The calculus enables programming languages to use multiple versions of a package within a program.  ...  Especially, Youyou Cong provided feedback on earlier versions of the paper.  ... 
doi:10.22152/programming-journal.org/2022/6/5 fatcat:kei5vpc2gjcszj5mocpk4h3rjy

Embedding effect systems in Haskell

Dominic Orchard, Tomas Petricek
2014 Proceedings of the 2014 ACM SIGPLAN symposium on Haskell - Haskell '14  
Recent theoretical work has unified fine-grained effect systems with monads using a monad-like structure indexed by a monoid of effect annotations (called parametric effect monads).  ...  Along the way, we relate the examples to other concepts, such as Haskell's implicit parameters and coeffects.  ...  this manuscript, and participants of Fun in the Afternoon 2014 (Facebook, London) for comments on a talk based on an early version.  ... 
doi:10.1145/2633357.2633368 dblp:conf/haskell/OrchardP14 fatcat:mgydh7itgffr3divcfvz3usva4

Embedding effect systems in Haskell

Dominic Orchard, Tomas Petricek
2014 SIGPLAN notices  
Recent theoretical work has unified fine-grained effect systems with monads using a monad-like structure indexed by a monoid of effect annotations (called parametric effect monads).  ...  Along the way, we relate the examples to other concepts, such as Haskell's implicit parameters and coeffects.  ...  this manuscript, and participants of Fun in the Afternoon 2014 (Facebook, London) for comments on a talk based on an early version.  ... 
doi:10.1145/2775050.2633368 fatcat:zkwtxyxrrjbr5lcgtqcltiubsm

Effects, capabilities, and boxes: from scope-based reasoning to type-based reasoning and back

Jonathan Immanuel Brachthäuser, Philipp Schuster, Edward Lee, Aleksander Boruch-Gruszecki
2022 Proceedings of the ACM on Programming Languages (PACMPL)  
Capabilities coupled with escape analysis offer safety and natural signatures, but are often overly coarse grained and restrictive.  ...  By introducing a notion of boxed values, we can lift the restrictions of second-class values at the cost of needing to track degree-of-impurity information in types.  ...  } catch { . . . } Type-based escape analysis [Hannan 1998 ] can provide this static guarantee.  ... 
doi:10.1145/3527320 fatcat:djxabuspmrd4bbnwwy4k4peo24

Modal Reasoning = Metric Reasoning, via Lawvere [article]

Ugo Dal Lago, Francesco Gavazzo
2021 arXiv   pre-print
Graded modal types systems and coeffects are becoming a standard formalism to deal with context-dependent computations where code usage plays a central role.  ...  The theory of program equivalence for modal and coeffectful languages, however, is considerably underdeveloped if compared to the denotational and operational semantics of such languages.  ...  Such a theory builds upon some nontrivial and abstract notions, notably the one of a comonadic lax extension, which make the theory a robust and unifying framework for the operational analysis of coeffectful  ... 
arXiv:2103.03871v1 fatcat:x6prnsruf5fdtpyrhgv5fzk4vu

Context-Updates Analysis and Refinement in Chisel [article]

Irina Mariuca Asavoae, Mihail Asavoae, Adrian Riesco
2017 arXiv   pre-print
The context-updates synthesis follows two directions: an overapproximating phase that extracts a set of potential context-update constructs and an underapproximating phase that refines the results of the  ...  first step by testing the behaviour of the context-updates constructs produced at the previous phase.  ...  Through this, we explore the genericity limits of slicing, in particular, and static analysis, in general.  ... 
arXiv:1709.06897v1 fatcat:3cec6fk5p5gl3mvdfru3bphbte
« Previous Showing results 1 — 15 out of 33 results