Was heisst denn hier sparen? Wenn die Variable als Parameter definiert ist, dann wird sie auch immer mit übergeben und ist immer vorhanden. Was nun die Prozedur mit den Parametern macht ist ihr ganz alleine überlassen. Wenn nun nil das Kennzeichen ist, dass nichts damit gemacht werden soll (bzw. nicht befüllt werden soll) dann ist es einfach so. Bei Int64 könntest du zum Beispiel einfach 0 übergeben. Aber das hängt halt immer von der Prozedur ab, was sie mit dem Parameter macht.
Also so ganz verstehen wir hier nicht, was du damit erreichen willst