The solution is to raise the level of abstraction: identify code idioms in the source (e.g., specific looping constructs in COBOL) and map them to idiomatic constructs in the target (e.g., streams and ...