returnやめてEiffel式に暗黙のresult変数への代入にしませんか。

・returnだと値を返すためだけにジャンプの使用を強制される
・複雑になると戻り値用の変数はどうせ宣言しないといけないので面倒
・構造体などで呼び出し元が領域を確保した場合それをそのまま使えて効率イイ

関数からの脱出はラベル付きbreakの一種にしてbreak 関数名; にしてしまえばreturnは不要に。
何なら「result = X; break 関数名; 」の構文糖として「return X; 」も残せばいいし。