Theoretical Computer Science
Theoretical Computer Science - International Joint Conference on Theory and Practice of Software Development, P
Proofs and types
A syntactic approach to type soundness
Information and Computation
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Typed memory management in a calculus of capabilities
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Operational interpretations of linear logic
Theoretical Computer Science - Special issue on linear logic, 1
A type system for expressive security policies
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Enforcing high-level protocols in low-level software
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Adoption and focus: practical linear types for imperative programming
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Language Primitives and Type Discipline for Structured Communication-Based Programming
ESOP '98 Proceedings of the 7th European Symposium on Programming: Programming Languages and Systems
MFCS '93 Proceedings of the 18th International Symposium on Mathematical Foundations of Computer Science
A Term Calculus for Intuitionistic Linear Logic
TLCA '93 Proceedings of the International Conference on Typed Lambda Calculi and Applications
An Interaction-based Language and its Typing System
PARLE '94 Proceedings of the 6th International PARLE Conference on Parallel Architectures and Languages Europe
Towards a theory of type structure
Programming Symposium, Proceedings Colloque sur la Programmation
A Mixed Linear and Non-Linear Logic: Proofs, Terms and Models (Extended Abstract)
CSL '94 Selected Papers from the 8th International Workshop on Computer Science Logic
Program equivalence in a linear functional language
Journal of Functional Programming
Experience with safe manual memory-management in cyclone
Proceedings of the 4th international symposium on Memory management
ACM Transactions on Programming Languages and Systems (TOPLAS)
A step-indexed model of substructural state
Proceedings of the tenth ACM SIGPLAN international conference on Functional programming
Language support for fast and reliable message-based communication in singularity OS
Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
Type checking a multithreaded functional language with session types
Theoretical Computer Science
L3: A Linear Language with Locations
Fundamenta Informaticae - Typed Lambda Calculi and Applications 2005, Selected Papers
Functional translation of a calculus of capabilities
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
Proceedings of the first ACM SIGPLAN symposium on Haskell
Safe programming with pointers through stateful views
PADL'05 Proceedings of the 7th international conference on Practical Aspects of Declarative Languages
Lolliproc: to concurrency from classical linear logic via curry-howard and control
Proceedings of the 15th ACM SIGPLAN international conference on Functional programming
A linear account of session types in the pi calculus
CONCUR'10 Proceedings of the 21st international conference on Concurrency theory
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Verifying stateful programs with substructural state and hoare types
Proceedings of the 5th ACM workshop on Programming languages meets program verification
The essence of monotonic state
Proceedings of the 7th ACM SIGPLAN workshop on Types in language design and implementation
Relational parametricity for a polymorphic linear lambda calculus
APLAS'10 Proceedings of the 8th Asian conference on Programming languages and systems
Superficially substructural types
Proceedings of the 17th ACM SIGPLAN international conference on Functional programming
Uniqueness and reference immutability for safe parallelism
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Mixin’ Up the ML Module System
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the ACM SIGPLAN 2014 Workshop on Programming Languages meets Program Verification
Mechanizing Metatheory Without Typing Contexts
Journal of Automated Reasoning
Hi-index | 0.00 |
We present System F°, an extension of System F that uses kinds to distinguish between linear and unrestricted types, simplifying the use of linearity for general-purpose programming. We demonstrate through examples how System F° can elegantly express many useful protocols, and we prove that any protocol representable as a DFA can be encoded as an F° type. We supply mechanized proofs of System F°'s soundness and parametricity properties, along with a nonstandard operational semantics that formalizes common intuitions about linearity and aids in reasoning about protocols. We compare System F° to other linear systems, noting that the simplicity of our kind-based approach leads to a more explicit account of what linearity is meant to capture, allowing otherwise-conflicting interpretations of linearity (in particular, restrictions on aliasing versus restrictions on resource usage) to coexist peacefully. We also discuss extensions to System F^o aimed at making the core language more practical, including the additive fragment of linear logic, algebraic datatypes, and recursion.