Abstract
The distributed data problem is characterized by the desire to bring together semantically related data from syntactically unrelated portions of a term. A strategic combinator called transient and a strategic constant called skip is introduced in the context of a higher-order strategic framework. The notion of traversal is lifted to the higher-order as well. The resulting framework allows the manipulation of data to be expressed directly in strategic terms. The impact of this dynamic approach to strategy creation is then explored on several instances of the distributed data problem. Problems considered include three strategic benchmarks as well as two transformations that arise within a class loader for the Java Virtual Machine.
Key words: distributed data problem, strategic programming, higher-order strategic programming, higher-order traversal, one-layer higher-order traversals, transformation, program transformation, rewriting, higher-order rewriting, transient combinator, skip strategy, TL, HATS, table normalization, Java class loader, strategic benchmarks, Java Virtual Machine, Sandia Secure Processor