Filters








149,223 Hits in 4.0 sec

Type Classes and Constraint Handling Rules [article]

Kevin Glynn, Martin Sulzmann, Peter J. Stuckey
2000 arXiv   pre-print
We propose to employ Constraint Handling Rules as a tool to study and develop type class systems in a uniform way.  ...  Type classes are an elegant extension to traditional, Hindley-Milner based typing systems. They are used in modern, typed languages such as Haskell to support controlled overloading of symbols.  ...  In particular, constraint handling rules help us understand the two main issues behind possible type class extensions: Feasible type inference and unambiguous programs.  ... 
arXiv:cs/0006034v1 fatcat:5exatjgonfeljmdxgfbbrldhfa

Type Inference for Static Compilation of JavaScript (Extended Version) [article]

Satish Chandra, Colin S. Gordon, Jean-Baptiste Jeannin, Cole Schlesinger, Manu Sridharan, Frank Tip, Youngil Choi
2016 arXiv   pre-print
An experimental evaluation showed that the inference is powerful, handling the aforementioned benchmarks with no manual type annotation, and that the inferred types enable effective static compilation.  ...  Unlike previous inference techniques for prototype inheritance, our algorithm uses a combination of lower and upper bound propagation to infer types and discover type errors in all code, including uninvoked  ...  Constraint Language Here, we present the constraint language used to express our type inference problem.  ... 
arXiv:1608.07261v3 fatcat:sdfx6u2frvbdxlcukmqttq2ldi

Static Type Inference for the Q language using Constraint Logic Programming

Zsolt Zombori, János Csorba, Péter Szeredi, Marc Herbstritt
2012 International Conference on Logic Programming  
We map the task of type inference onto a constraint satisfaction problem and use constraint logic programming, in particular the Constraint Handling Rules extension of Prolog.  ...  We describe an application of Prolog: a type inference tool for the Q functional language.  ...  Constraint reasoning is performed using Constraint Handling Rules.  ... 
doi:10.4230/lipics.iclp.2012.119 dblp:conf/iclp/ZomboriCS12 fatcat:hpwkeaesuje2zncyn4dr2wwixy

Facilitating reuse in hardware models with enhanced type inference

Manish Vachharajani, Neil Vachharajani, Sharad Malik, David I. August
2004 Proceedings of the 2nd IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis - CODES+ISSS '04  
The result is a type system and type inference algorithm that can encourage reuse, reduce design specification time, and lead to better designs.  ...  It proves that performing type inference for any such system is NP-complete and presents a heuristic that works efficiently in practice.  ...  This simplified constraint involving disjunctive type schemes is handled by the following new rule.  ... 
doi:10.1145/1016720.1016744 dblp:conf/codes/VachharajaniVMA04 fatcat:2m5az3t7gffjradk4jtwl7dlwi

Type-Based Taint Analysis for Java Web Applications [chapter]

Wei Huang, Yao Dong, Ana Milanova
2014 Lecture Notes in Computer Science  
We present SFlow, a context-sensitive type system for secure information flow, and SFlow-Infer, a corresponding worst-case cubic inference analysis.  ...  In this paper, we advocate type-based taint analysis.  ...  The inference creates constraints for all program statements according to the typing rules in Fig. 3 .  ... 
doi:10.1007/978-3-642-54804-8_10 fatcat:aydbrd7xtnd6zkbxf67kpy2azm

Inferring Algebraic Effects

Matija Pretnar, Neil Jones
2014 Logical Methods in Computer Science  
Additionally, we present a set of methods that further simplify the displayed types, some even by deliberately hiding inferred information from the programmer.  ...  Our main aim is to offer the programmer a useful insight into the effectful behaviour of programs.  ...  Inference rules. We infer types and constraints using syntax-directed inference rules of the form Γ; Ξ ⊢ F e : A | C for expressions and Γ; Ξ ⊢ F c : C | C for computations, defined in Figure 5 .  ... 
doi:10.2168/lmcs-10(3:21)2014 fatcat:2dligqbtebgcdgx5zqmm6w3edy

Polymorphic type checking with subtypes in Prolog [chapter]

Thom W. Frühwirth
1990 Lecture Notes in Computer Science  
We used Definite Clause Grammars for parsing and Constraint Handling Rules for the type checking algorithm.  ...  We designed a type description syntax for Q and implemented a parser for both the Q language and its type extension. We then implemented a type checking algorithm using constraints.  ...  Acknowledgements We acknowledge the support of Morgan Stanley Business and Technology Centre, Budapest in the development of the Q type checker system. We are especially grateful to Balázs G.  ... 
doi:10.1007/3-540-52531-9_131 fatcat:quzh2nexxvakdgqos4qa3ofjcq

Linear Constraints [article]

Arnaud Spiwack, Csongor Kiss, Jean-Philippe Bernardy, Nicolas Wu, Richard Eisenberg
2021 arXiv   pre-print
Linear constraints are presented as a qualified type system,together with an inference algorithm which extends GHC's existing constraint solver algorithm.  ...  A linear type system can verify the correct usage of resources such as file handles and manually managed memory. But this verification requires bureaucracy.  ...  The procedure is responsible for inferring both types and constraints. For our type system, type inference can be done independently from constraint inference.  ... 
arXiv:2103.06127v2 fatcat:o53yanqtofffpouoi46dytk53a

Explicit Effect Subtyping [chapter]

Amr Hany Saleh, Georgios Karachalias, Matija Pretnar, Tom Schrijvers
2018 Lecture Notes in Computer Science  
Our typing-directed elaboration comes with a constraint-based inference algorithm that turns an implicitly-typed Eff-like language into our calculus.  ...  To remedy this, we present an explicitly-typed polymorphic core calculus for algebraic effect handlers with a subtyping-based type-and-effect system.  ...  The rules are syntax-directed on the input ImpEff value. The first rule handles term variables x: as usual for constraint-based type inference the rule instantiates the polymorphic type (∀ς.α : τ .  ... 
doi:10.1007/978-3-319-89884-1_12 fatcat:3oyq4seri5btflslc6whehp7gu

CFL-reachability and context-sensitive integrity types

Ana Milanova, Wei Huang, Yao Dong
2014 Proceedings of the 2014 International Conference on Principles and Practices of Programming on the Java platform Virtual machines, Languages, and Tools - PPPJ '14  
We propose DFlowCFL, a new, more precise integrity type system, and DFlowCFL-Infer, the corresponding type inference analysis, which is equivalent to CFL-reachability.  ...  Integrity types can help detect information flow vulnerabilities in web applications and Android apps.  ...  Type Inference Given sources and sinks, type inference derives a valid typing, i.e. an assignment from program variables to type qualifiers that type checks with the typing rules in Fig. 7 .  ... 
doi:10.1145/2647508.2647522 dblp:conf/pppj/MilanovaHD14 fatcat:ihdqbuncevfezonv57nm4nbcye

Type Processing by Constraint Reasoning [chapter]

Peter J. Stuckey, Martin Sulzmann, Jeremy Wazny
2006 Lecture Notes in Computer Science  
We use a light weight constraint reasoning formalism, Constraint Handling Rules, to generate suitable algorithms for many popular extensions to Hindley/Milner types.  ...  Herbrand constraint solving or unification has long been understood as an efficient mechanism for type checking and inference for programs using Hindley/Milner types.  ...  Constraint Handling Rules with Justifications We will translate typing problems to a constraint problem where the meaning of the user-defined constraints is defined by Constraint Handling Rules (CHRs)  ... 
doi:10.1007/11924661_1 fatcat:4elrruxqerhu7hcjke32y4joqe

Constraint specification by example in a Meta-CASE tool

Hazem Kathem Qattous
2009 Proceedings of the doctoral symposium for ESEC/FSE on Doctoral symposium - ESEC/FSE Doctoral Symposium '09  
Constraints are often used in such meta-CASE tools as a technique for governing the syntax and semantics of model elements and the values of their attributes.  ...  The feasibility of the approach will be demonstrated via experiments with a prototype using the meta-CASE tool Diagram Editor Constraints System (DECS) as context.  ...  In DECS, this problem is handled using the rules in the inference engine. Inference rules have been classified into two types, "choice rules" and "action rules", with different behaviour.  ... 
doi:10.1145/1595782.1595787 fatcat:ahuiwhmatjfz3mo353o5na7vri

Global tagging optimization by type inference

Fritz Henglein
1992 ACM SIGPLAN Lisp Pointers  
dynamic type checking operations are due to list operations, most of which are statically eliminated by our type inference algorithm.  ...  Tag handling accounts for a substantial amount of execution cost in latently typed languages such as Common LISP and structured data, especially in lists: Steenkiste and Hennessy report that 80~o of all  ...  Due to the inequality constraint rules and the availability of recursive types all inequality constraint rules remaining in the normalized constraint system can be solved equation ally  ... 
doi:10.1145/141478.141542 fatcat:wprmxfry55gfti35lceaka2hza

Global tagging optimization by type inference

Fritz Henglein
1992 Proceedings of the 1992 ACM conference on LISP and functional programming - LFP '92  
dynamic type checking operations are due to list operations, most of which are statically eliminated by our type inference algorithm.  ...  Tag handling accounts for a substantial amount of execution cost in latently typed languages such as Common LISP and structured data, especially in lists: Steenkiste and Hennessy report that 80~o of all  ...  Due to the inequality constraint rules and the availability of recursive types all inequality constraint rules remaining in the normalized constraint system can be solved equation ally  ... 
doi:10.1145/141471.141542 dblp:conf/lfp/Henglein92 fatcat:36byej6fwzcytpm7ll6hinpym4

Detecting Specification Errors in Declarative Languages with Constraints [chapter]

Ethan K. Jackson, Wolfram Schulte, Nikolaj Bjørner
2012 Lecture Notes in Computer Science  
Declarative specification languages with constraints are used in model-driven engineering to specify formal semantics, define model transformations, and describe domain constraints.  ...  Type inference is experimentally efficient and type judgments are comprehensible by the user.  ...  We shall make use of the extra precision for data constructors by handling them specially during type inference.  ... 
doi:10.1007/978-3-642-33666-9_26 fatcat:wllx2cpnbndnlfoscbeuboypii
« Previous Showing results 1 — 15 out of 149,223 results