We present PAcLANG: an imperative, concurrent, linearlytyped language designed for expressing packet processing applications. PACLANG'S linear type system ensures that no packet is referenced by more than one thread, but allows multiple references to a packet within a thread. We argue (i) that this property greatly simplifies compilation of high-level programs to the distributed memory architectures of modern Network Processors; and (ii) that PACLANG'S type system captures that style in which imperative packet processing programs are already written. Claim (ii) is justified by means of a case-study: we describe a PACLANG implementation of the IPv4 unicast packet forwarding algorithm. PACLANG is formalised by means of an operational semantics and a Unique Ownership theorem formalises its correctness with respect to the type system. © Springer-Verlag 2004.
CITATION STYLE
Ennals, R., Sharp, R., & Mycroft, A. (2004). Linear types for packet processing. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2986, 204–218. https://doi.org/10.1007/978-3-540-24725-8_15
Mendeley helps you to discover research relevant for your work.