Me dio algo de nostalgia el ejemplo que expones. No porque le tuviera mucho cariño a FoxPro (también lo usé pero desde los tiempos en que todavía no existía la versión "visual"), sino por lo emocionante que era sacarle provecho hasta la última de sus limitadas capacidades como lenguaje (aquello de 5 niveles de llamadas como máximo era una majadería).
En Delphi sí que has visto ya algo parecido y que además requiere mucho menos código: los parámetros con valor predeterminado.