Higher level programming and efficient automatic parallelization: a functional data flow approach with FASAN. daptive numerical algorithms work recursively on tree-like dynamic data structures rather than, iteratively on static arrays. Our approach to parallelize such an algorithm with potentially irregular data structure is a functional program in the coordinating language FASAN. We will show how this concise program can be transformed into a data flow graph which allows both concurrent evaluation and pipelines of sequential functions if combined with the stream semantics of the language. The key issue is the representation of hierarchical data structures as wrapper streams. This concept avoids superfluous communication and synchronization. As an example, we describe the coordinating part of a recursive finite element application.