Actors: a model of concurrent computation in distributed systems
Actors: a model of concurrent computation in distributed systems
Proc. of the thirteenth spring school of the LITP on Combinators and functional programming languages
Theoretical Computer Science
Communication and concurrency
Proofs and types
Facile: a symmetric integration of concurrent and functional programming
International Journal of Parallel Programming
CML: A higher concurrent language
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
Is there a use for linear logic?
PEPM '91 Proceedings of the 1991 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Lively linear Lisp: “look ma, no garbage!”
ACM SIGPLAN Notices
A sort inference algorithm for the polyadic &pgr;-calculus
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Computational interpretations of linear logic
Theoretical Computer Science - Special volume of selected papers of the Sixth Workshop on the Mathematical Foundations of Programming Semantics, Kingston, Ont., Canada, May 1990
A calculus of mobile processes, I
Information and Computation
Higher-order concurrent programs with finite communication topology (extended abstract)
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Combinatory representation of mobile processes
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The lazy Lambda calculus in a concurrency scenario
Information and Computation
Type-theoretic foundations for concurrent object-oriented programing
OOPSLA '94 Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications
Information and Computation
Toward foundations of concurrent object-oriented programming-types and language design
Theory and Practice of Object Systems
Functional computation as concurrent computation
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The reflexive CHAM and the join-calculus
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Interaction categories and the foundations of typed concurrent programming
Proceedings of the NATO Advanced Study Institute on Deductive program design
A partially deadlock-free typed process calculus
ACM Transactions on Programming Languages and Systems (TOPLAS)
Theory and Practice of Object Systems - Special issue on foundations of object-oriented languages
An Investigation into Functions as Processes
Proceedings of the 9th International Conference on Mathematical Foundations of Programming Semantics
Concurrent Objects in a Process Calculus
TPPP '94 Proceedings of the International Workshop on Theory and Practice of Parallel Programming
Higher-Order Concurrent Linear Logic Programming
TPPP '94 Proceedings of the International Workshop on Theory and Practice of Parallel Programming
An Object Calculus for Asynchronous Communication
ECOOP '91 Proceedings of the European Conference on Object-Oriented Programming
ECOOP '94 Proceedings of the 8th European Conference on Object-Oriented Programming
ICALP '92 Proceedings of the 19th International Colloquium on Automata, Languages and Programming
An Interaction-based Language and its Typing System
PARLE '94 Proceedings of the 6th International PARLE Conference on Parallel Architectures and Languages Europe
Static and Dynamic Processor Allocation for Higher-Order Concurrent Languages
TAPSOFT '95 Proceedings of the 6th International Joint Conference CAAP/FASE on Theory and Practice of Software Development
The Polyadic Pi-calculus (Abstract)
CONCUR '92 Proceedings of the Third International Conference on Concurrency Theory
The Problem of ``Weak Bisimulation up to''
CONCUR '92 Proceedings of the Third International Conference on Concurrency Theory
CONCUR '93 Proceedings of the 4th International Conference on Concurrency Theory
A pi-Calculus Semantics for an Object-Based Design Notation
CONCUR '93 Proceedings of the 4th International Conference on Concurrency Theory
Principal Typing Schemes in a Polyadic pi-Calculus
CONCUR '93 Proceedings of the 4th International Conference on Concurrency Theory
A Polymorphic Type System for the Polyadic pi-calculus
CONCUR '95 Proceedings of the 6th International Conference on Concurrency Theory
CONCUR '96 Proceedings of the 7th International Conference on Concurrency Theory
On Bisimulations for the Asynchronous pi-Calculus
CONCUR '96 Proceedings of the 7th International Conference on Concurrency Theory
Proceedings of the 15th Conference on Foundations of Software Technology and Theoretical Computer Science
Static Analysis of Communication for Asynchronous Concurrent Programming Languages
SAS '95 Proceedings of the Second International Symposium on Static Analysis
Type-Based Analysis of Communication for Concurrent Programming Languages
SAS '97 Proceedings of the 4th International Symposium on Static Analysis
A Typed Calculus of Synchronous Processes
LICS '95 Proceedings of the 10th Annual IEEE Symposium on Logic in Computer Science
A generic type system for the Pi-calculus
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A type system for lock-free processes
Information and Computation - IFIP TCS2000
Resource-Passing Concurrent Programming
TACS '01 Proceedings of the 4th International Symposium on Theoretical Aspects of Computer Software
A Framework for the Formalisation of Pi Calculus Type Systems in Isabelle/HOL
TPHOLs '01 Proceedings of the 14th International Conference on Theorem Proving in Higher Order Logics
A Simple View of Type-Secure Information Flow in the "-Calculus
CSFW '02 Proceedings of the 15th IEEE workshop on Computer Security Foundations
The receptive distributed π-calculus
ACM Transactions on Programming Languages and Systems (TOPLAS)
Channel dependent types for higher-order mobile processes
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A generic type system for the Pi-calculus
Theoretical Computer Science
From process logic to program logic
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
On asynchrony in name-passing calculi
Mathematical Structures in Computer Science
Communicating quantum processes
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Correspondence assertions for process synchronization in concurrent communications
Journal of Functional Programming
Noninterference through flow analysis
Journal of Functional Programming
Formalising Java RMI with explicit code mobility
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Types and typechecking for Communicating Quantum Processes
Mathematical Structures in Computer Science
Component adaptation through flexible subservicing
Science of Computer Programming - Special issue on security issues in coordination models, languages, and systems
A concurrent lambda calculus with futures
Theoretical Computer Science - Applied semantics
What is a free name in a process algebra?
Information Processing Letters
A uniform type structure for secure information flow
ACM Transactions on Programming Languages and Systems (TOPLAS)
Information and Computation
Electronic Notes in Theoretical Computer Science (ENTCS)
A Chart Semantics for the Pi-Calculus
Electronic Notes in Theoretical Computer Science (ENTCS)
L3: A Linear Language with Locations
Fundamenta Informaticae - Typed Lambda Calculi and Applications 2005, Selected Papers
Separation Logic Semantics for Communicating Processes
Electronic Notes in Theoretical Computer Science (ENTCS)
A capability calculus for concurrency and determinism
ACM Transactions on Programming Languages and Systems (TOPLAS)
A Hybrid Type System for Lock-Freedom of Mobile Processes
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
Responsiveness in process calculi
Theoretical Computer Science
On Affine Usages in Signal-Based Communication
APLAS '08 Proceedings of the 6th Asian Symposium on Programming Languages and Systems
Information and Computation
The Calculus of Handshake Configurations
FOSSACS '09 Proceedings of the 12th International Conference on Foundations of Software Science and Computational Structures: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Synchronization as a Special Case of Access Control
Electronic Notes in Theoretical Computer Science (ENTCS)
Formal Methods for Web Services
A Process-Model for Linear Programs
Types for Proofs and Programs
A hybrid type system for lock-freedom of mobile processes
ACM Transactions on Programming Languages and Systems (TOPLAS)
Logical semantics of types for concurrency
CALCO'07 Proceedings of the 2nd international conference on Algebra and coalgebra in computer science
Type abstractions of name-passing processes
FSEN'07 Proceedings of the 2007 international conference on Fundamentals of software engineering
Responsiveness in process calculi
ASIAN'06 Proceedings of the 11th Asian computing science conference on Advances in computer science: secure software and related issues
Timed, distributed, probabilistic, typed processes
APLAS'07 Proceedings of the 5th Asian conference on Programming languages and systems
Substructural type systems for program analysis
FLOPS'08 Proceedings of the 9th international conference on Functional and logic programming
Session types for orchestration charts
COORDINATION'08 Proceedings of the 10th international conference on Coordination models and languages
Lolliproc: to concurrency from classical linear logic via curry-howard and control
Proceedings of the 15th ACM SIGPLAN international conference on Functional programming
Fundamenta Informaticae - Dependently Typed Programming
A linear account of session types in the pi calculus
CONCUR'10 Proceedings of the 21st international conference on Concurrency theory
Secrecy and authenticity types for secure distributed messaging
ARSPA-WITS'10 Proceedings of the 2010 joint conference on Automated reasoning for security protocol analysis and issues in the theory of security
CONCUR'11 Proceedings of the 22nd international conference on Concurrency theory
A Resource Analysis of the π-calculus
Electronic Notes in Theoretical Computer Science (ENTCS)
Internal and external token-based synchronization in object-oriented languages
JMLC'06 Proceedings of the 7th joint conference on Modular Programming Languages
L3: a linear language with locations
TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
A capability calculus for concurrency and determinism
CONCUR'06 Proceedings of the 17th international conference on Concurrency Theory
A new type system for deadlock-free processes
CONCUR'06 Proceedings of the 17th international conference on Concurrency Theory
Achieving fault tolerance by a formally validated interaction policy
Rigorous Development of Complex Fault-Tolerant Systems
Session types for object-oriented languages
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
A unified theory of program logics: an approach based on the π-calculus
VoCS'08 Proceedings of the 2008 international conference on Visions of Computer Science: BCS International Academic Conference
State inference for dynamically changing interfaces
Computer Languages
Information and Computation
L$^3$: A Linear Language with Locations
Fundamenta Informaticae - Typed Lambda Calculi and Applications 2005, Selected Papers
Proceedings of the 14th symposium on Principles and practice of declarative programming
On message deliverability and non-uniform receptivity
Fundamenta Informaticae
Intensional and extensional characterisation of global progress in the π-calculus
CONCUR'12 Proceedings of the 23rd international conference on Concurrency Theory
Name-Passing Calculi: From Fusions to Preorders and Types
LICS '13 Proceedings of the 2013 28th Annual ACM/IEEE Symposium on Logic in Computer Science
Strong Normalization in the π-calculus with Intersection and Union Types
Fundamenta Informaticae - Intersection Types and Related Systems ITRS
Hi-index | 0.00 |
The economy and flexibility of the pi-calculus make it an attractive object of theoretical study and a clean basis for concurrent language design and implementation. However, such generality has a cost: encoding higher-level features like functional computation in pi-calculus throws away potentially useful information. We show how a linear type system can be used to recover important static information about a process's behavior. In particular, we can guarantee that two processes communicating over a linear channel cannot interfere with other communicating processes. After developing standard results such as soundness of typing, we focus on equivalences, adapting the standard notion of barbed bisimulation to the linear setting and showing how reductions on linear channels induce a useful “partial confluence” of process behaviors. For an extended example of the theory, we prove the validity of a tail-call optimization for higher-order functions represented as processes.