Efficient annotated terms

  • Authors:
  • Mark Brand;Hayco A. Jong;Paul Klint;Pieter A. Olivier

  • Affiliations:
  • -;-;-;-

  • Venue:
  • Efficient annotated terms
  • Year:
  • 2000
  • CASL: From Semantics to Tools

    TACAS '00 Proceedings of the 6th International Conference on Tools and Algorithms for Construction and Analysis of Systems: Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

How do distributed applications exchange tree-like data structures? We introduce the abstract data type of Annotated Terms (ATerms) and discuss their design, implementation and application. A comprehensive procedural interface enables creation and manipulation of ATerms in C or Java. The ATerm implementation is based on maximal subterm sharing and automatic garbage collection. A binary exchange format for the concise representation of ATerms (sharing preserved) allows the fast exchange of ATerms between applications. In a typical application---parse trees which contain considerable redundant information---less than 2 bytes are needed to represent a node in memory, and less than 2 bits are needed to represent it in binary format. The implementation of ATerms scales up to the manipulation of ATerms in the giga-byte range.