static int d ( Func<int,int> g ) { 
    return g(g(1));              }
static int p (int x) {
    Func<int,int> f = y => x + y;
    return d (f);                }
Betrachte Aufruf p(3)
 
Das innere Unterprogramm f
 
Dazu Closure konstruieren: 
f
 
Wenn Unterprogramme als Argumente übergeben werden,
steht der statische Vorgänger im Stack.
 
(ansonsten muß man den Vorgänger-Frame auf 
andere Weise retten, siehe später)
 
2015-01-26