Standard ML Signatures for a Protocol Stack

Abstract

This paper describes the design of a protocol stack implemented in Standard ML. Standard ML's signatures are a language construct which can be used to specify or constrain the interface of a module. The design includes both a generic signature which generalizes all the protocol modules, and individual signatures specific to each protocol module. The specific signatures all inherit from the generic signature. The implementation of each protocol is parametrized, so protocols can be composed into custom protocol stacks. The parameter to each protocol is constrained only by the generic signature, and this lets any protocol instance satisfying a specific signature be used as the parameter to any other protocol. As a result, the design and implementation are highly modular, and syntactic compatibility between modules is checked by the compiler. To provide some context for the discussion of the signatures, some of the details of the implementation are also presented.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Oct 01, 1993
Accession Number
ADA272060

Entities

People

  • Edoardo Biagioni
  • Peter P Lee
  • Robert Harper

Organizations

  • Carnegie Mellon University

Tags

DTIC Thesaurus Topics

  • C Programming Language
  • Communication Systems
  • Communications Protocols
  • Computations
  • Computer Networks
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Debugging
  • Language
  • Network Protocols
  • Operating Systems
  • Programming Languages
  • Software Development
  • Standards
  • Structured Programming

Fields of Study

  • Computer science

Readers

  • Computational Modeling and Simulation
  • Database Systems and Applications
  • Sensor Fusion and Tracking Systems.