Öhm.. ich fürchte du hast das falsch verstanden.. x ist Parameter von Result(). Deine Funktion gibt eine TMyFunction zurück, also eigentlich eine function(x: Real): Real;
Woher soll der Compiler das x denn auch nehmen?^^ In den Parametern von f1 steht ja nix.