Synchronizable Series Expressions. Part 1. User's Manual for the OSS Macro Package.

Abstract

The benefits of programming in a functional style are well known. In particular, algorithms that are expressed as compositions of functions operating on series/vectors/streams of data elements are much easier to understand and modify than equivalent algorithms expressed as loops. Unfortunately, many programmers hesitate to use series expressions, because they are typically implemented very inefficiently. A Common Lisp macro package (OSS) has been implemented which supports a restricted class of series expressions, obviously sychronizable series expressions, which can be evaluated very efficiently by automatically converting them into loops. Using this macro package, programmers can obtain the advantages of expressing computations as series expressions without incurring any run-time overhead. Keywords: Compilation; Program optimization; Enumerators; Online transducers; Offline transducers; Series functions; Debugging.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Nov 01, 1987
Accession Number
ADA190493

Entities

People

  • Richard C. Waters

Organizations

  • Massachusetts Institute of Technology

Tags

Communities of Interest

  • Counter IED

DTIC Thesaurus Topics

  • Algorithms
  • Artificial Intelligence
  • Computations
  • Computer Programming
  • Corporations
  • Debugging
  • Guarantees
  • Hash Tables
  • High Level Language Architecture
  • Indicators
  • Intellectual Property
  • Lisp Programming Language
  • Military Research
  • Numbers
  • Sequences
  • Side Effects
  • Standards

Fields of Study

  • Computer science
  • Engineering

Readers

  • Calculus or Mathematical Analysis
  • Computer Programming and Software Development.
  • Computer Science.