Structured programming using processes

  • Authors:
  • Jay Nelson

  • Affiliations:
  • DuoMark International, Inc., Los Angeles, CA

  • Venue:
  • ERLANG '04 Proceedings of the 2004 ACM SIGPLAN workshop on Erlang
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Structured Programming techniques are applied to a personal accounting software application implemented in erlang as a demonstration of the utility of processes as design constructs. Techniques for enforcing strong encapsulation, partitioning for fault isolation and data flow instrumentation, reusing code, abstracting and adapting interfaces, simulating inputs, managing and distributing resources and creating complex application behavior are described. The concept of inductive decomposition is introduced as a method for modularizing code based on the dynamic behavior of the system over time, rather than the static structure of a program. This approach leads to code subsumption, behavior abstraction, automated testing, dynamic data versioning and dynamic code revision all of which contribute to more reliable, fault-tolerant software.