Filters








5,236 Hits in 4.2 sec

From definitional interpreter to symbolic executor

Adrian D. Mensing, Hendrik van Antwerpen, Casper Bach Poulsen, Eelco Visser
2019 Proceedings of the 4th ACM SIGPLAN International Workshop on Meta-Programming Techniques and Reflection - META 2019  
The idea is that language designers define their language as a monadic definitional interpreter, where the monad of the interpreter defines the meaning of branch points.  ...  Developing a symbolic executor for a language is a matter of changing the monadic interpretation of branch points.  ...  Acknowledgments We thank the anonymous reviewers for their insightful suggestions for improvements and future research directions, and Sven Keidel for his timely and helpful comments.  ... 
doi:10.1145/3358502.3361269 dblp:conf/oopsla/MensingAPV19 fatcat:bducjjfqnvaoxmciy4hhj4nazy

Lightweight monadic programming in ML

Nikhil Swamy, Nataliya Guts, Daan Leijen, Michael Hicks
2011 SIGPLAN notices  
Moreover, we have proved that this simplification is efficient (linear in the number of constraints) and coherent: while our algorithm induces a particular rewriting, all related rewritings will have the  ...  An ML program using Beh effectively has two monads: the implicit monad, which applies to normal ML computations, and the userdefined monad Beh.  ...  Acknowledgements The authors would like to thank Gavin Bierman and Matt McCutchen for their early contributions to this work, and to Gavin for comments on this draft.  ... 
doi:10.1145/2034574.2034778 fatcat:unn6y5ztczftncqtevuhqhqdn4

Lightweight monadic programming in ML

Nikhil Swamy, Nataliya Guts, Daan Leijen, Michael Hicks
2011 Proceeding of the 16th ACM SIGPLAN international conference on Functional programming - ICFP '11  
Moreover, we have proved that this simplification is efficient (linear in the number of constraints) and coherent: while our algorithm induces a particular rewriting, all related rewritings will have the  ...  An ML program using Beh effectively has two monads: the implicit monad, which applies to normal ML computations, and the userdefined monad Beh.  ...  Acknowledgements The authors would like to thank Gavin Bierman and Matt McCutchen for their early contributions to this work, and to Gavin for comments on this draft.  ... 
doi:10.1145/2034773.2034778 dblp:conf/icfp/SwamyGLH11 fatcat:why65xdo4jggnbr2t3ytx7zvsu

Supermonads: one notion to bind them all

Jan Bracker, Henrik Nilsson
2016 SIGPLAN notices  
Unfortunately, because the shape of the associated type constructors do not match the standard Haskell monad interface, each such implementation provides its own type class and versions of associated library  ...  In this paper we introduce supermonads: an encoding of monadic notions that captures several different generalizations along with a version of the standard library of monadic functions that work uniformly  ...  We also thank the anonymous reviewers for their helpful suggestions and feedback.  ... 
doi:10.1145/3241625.2976012 fatcat:wweztmvxm5dwrdakv6pzdh64ui

Supermonads: one notion to bind them all

Jan Bracker, Henrik Nilsson
2016 Proceedings of the 9th International Symposium on Haskell - Haskell 2016  
Unfortunately, because the shape of the associated type constructors do not match the standard Haskell monad interface, each such implementation provides its own type class and versions of associated library  ...  In this paper we introduce supermonads: an encoding of monadic notions that captures several different generalizations along with a version of the standard library of monadic functions that work uniformly  ...  We also thank the anonymous reviewers for their helpful suggestions and feedback.  ... 
doi:10.1145/2976002.2976012 dblp:conf/haskell/BrackerN16 fatcat:geruwnxfwzhg3iscayuxs3arom

Type Class Instances for Type-Level Lambdas in Haskell [chapter]

Thijs Alkemade, Johan Jeuring
2016 Lecture Notes in Computer Science  
We propose a number of small changes to the constraint solver that will allow type-level lambdas to be used in type class instances.  ...  We would like to make the order of type arguments to a type constructor irrelevant to how type class instances can be specified.  ...  Type checking is divided into two phases: first type inference, where constraints are generated, then these constraints are solved.  ... 
doi:10.1007/978-3-319-39110-6_4 fatcat:vutbnufmdza6zpijparaiog3ke

Monadic Decomposition in Integer Linear Arithmetic [chapter]

Matthew Hague, Anthony W. Lin, Philipp Rümmer, Zhilin Wu
2020 Lecture Notes in Computer Science  
Monadic decomposability is a notion of variable independence, which asks whether a given formula in a first-order theory is expressible as a Boolean combination of monadic predicates in the theory.  ...  We provide a new application of our results to string constraint solving with length constraints.  ...  Applications of Decomposition Monadic Decomposition in String Solving The development of effective techniques for solving string constraints has received a lot of attention over the last years, motivated  ... 
doi:10.1007/978-3-030-51074-9_8 fatcat:j44agpgbabanljtqr7zswqwama

Monadic Decomposability of Regular Relations

Pablo Barceló, Chih-Duo Hong, Xuan-Bach Le, Anthony W. Lin, Reino Niskanen, Michael Wagner
2019 International Colloquium on Automata, Languages and Programming  
Monadic decomposibility -the ability to determine whether a formula in a given logical theory can be decomposed into a boolean combination of monadic formulas -is a powerful tool for devising a decision  ...  Our main contribution is to fully settle the complexity of this decision problem by developing new techniques employing infinite Ramsey theory. The complexity for DFA (resp.  ...  Acknowledgements We thank Leonid Libkin for the useful discussion.  ... 
doi:10.4230/lipics.icalp.2019.103 dblp:conf/icalp/BarceloHLLN19 fatcat:exrlvgpuznbsjd7mszt3d3enra

Monadic constraint programming

TOM SCHRIJVERS, PETER STUCKEY, PHILIP WADLER
2009 Journal of functional programming  
Search transformers give a powerful and unifying approach to viewing search in constraint programming, and the resulting constraint programming system is first class and extremely flexible. 1.  ...  In this paper we give a monadic definition of constraint programming where the solver is defined as a monad threaded through the monadic search tree.  ...  Acknowledgments We are grateful to the anonymous reviewers of this paper whose comments and suggestions have significantly improved the presentation as well as Ben Moseley, Serge Le Huitouze, Pieter Wuille  ... 
doi:10.1017/s0956796809990086 fatcat:u5lpxlckkbh2fam7udd3vejixa

Quantified class constraints

Gert-Jan Bottu, Georgios Karachalias, Tom Schrijvers, Bruno C. d. S. Oliveira, Philip Wadler
2017 Proceedings of the 10th ACM SIGPLAN International Symposium on Haskell - Haskell 2017  
Quantified class constraints have been proposed many years ago to raise the expressive power of type classes from Horn clauses to the universal fragment of Hereditiary Harrop logic.  ...  We show the merit of quantified class constraints in terms of more expressive modeling and in terms of terminating type class resolution.  ...  This research was partially supported by the Flemish Fund for Scientific Research (FWO).  ... 
doi:10.1145/3122955.3122967 dblp:conf/haskell/BottuKSOW17 fatcat:hje37wkz7ffvde2utp4yp7d5dq

Quantified class constraints

Gert-Jan Bottu, Georgios Karachalias, Tom Schrijvers, Bruno C. d. S. Oliveira, Philip Wadler
2017 SIGPLAN notices  
Quantified class constraints have been proposed many years ago to raise the expressive power of type classes from Horn clauses to the universal fragment of Hereditiary Harrop logic.  ...  We show the merit of quantified class constraints in terms of more expressive modeling and in terms of terminating type class resolution.  ...  This research was partially supported by the Flemish Fund for Scientific Research (FWO).  ... 
doi:10.1145/3156695.3122967 fatcat:q4sqqrp3znffzcumuiia7237k4

Declarative Programming [chapter]

Phil Molyneux
1993 Managing with Information Technology  
function, 3 infinite data structure, 6 input/output, 12 IO monad, 12 Index backtracking, 18 binary leaf tree, 11 breadth-first search, 26 call-time choice, 21 class constraint, 8 constraint equality  ...  Finite-domain constraints express equations and in-equations over natural numbers with a bounded domain. They can be used to solve many kinds of combinatorial problems efficiently.  ...  Now it is only left to verify that function composition is indeed associative: B.2 Monad laws for Tree instance This is a proof of the monad laws for the Monad instance instance Monad Tree where return  ... 
doi:10.1007/978-1-4471-3299-8_1 fatcat:wcy5wl6whrc6zllofpbutta6yy

Declarative Programming [chapter]

2013 Encyclopedia of Systems Biology  
function, 3 infinite data structure, 6 input/output, 12 IO monad, 12 Index backtracking, 18 binary leaf tree, 11 breadth-first search, 26 call-time choice, 21 class constraint, 8 constraint equality  ...  Finite-domain constraints express equations and in-equations over natural numbers with a bounded domain. They can be used to solve many kinds of combinatorial problems efficiently.  ...  Now it is only left to verify that function composition is indeed associative: B.2 Monad laws for Tree instance This is a proof of the monad laws for the Monad instance instance Monad Tree where return  ... 
doi:10.1007/978-1-4419-9863-7_100335 fatcat:224vgmt73vbvzepwfux4ufd24e

The constrained-monad problem

Neil Sculthorpe, Jan Bracker, George Giorgidze, Andy Gill
2013 SIGPLAN notices  
In Haskell, there are many data types that would form monads were it not for the presence of type-class constraints on the operations on that data type.  ...  Using several examples, we show that a monadic computation can be restructured into a normal form such that the standard monad class can be used.  ...  We also thank Heinrich Apfelmus and Ryan Ingram for observing that we could use the Operational and MonadPrompt libraries to perform the monadic normalization, respectively.  ... 
doi:10.1145/2544174.2500602 fatcat:r4sdardtqvdwdbjnno46hpt52i

The constrained-monad problem

Neil Sculthorpe, Jan Bracker, George Giorgidze, Andy Gill
2013 Proceedings of the 18th ACM SIGPLAN international conference on Functional programming - ICFP '13  
In Haskell, there are many data types that would form monads were it not for the presence of type-class constraints on the operations on that data type.  ...  Using several examples, we show that a monadic computation can be restructured into a normal form such that the standard monad class can be used.  ...  We also thank Heinrich Apfelmus and Ryan Ingram for observing that we could use the Operational and MonadPrompt libraries to perform the monadic normalization, respectively.  ... 
doi:10.1145/2500365.2500602 dblp:conf/icfp/SculthorpeBGG13 fatcat:f34hqo2bqvcdtfoga7yjt2ndeu
« Previous Showing results 1 — 15 out of 5,236 results