Now it's not so easy anymore to understand the first three input parameters, so I would suggest to somehow encourage developers (or make it a required formal rule) to append the parameter name in each line as a comment.
CREATE OR REPLACE FUNCTION pgr_aStarCost(
---------------- remove the names on compulsory parameters
TEXT, # edges_sql (required)
BIGINT, # start_vid(required)
BIGINT, # end_vid(required)
directed BOOLEAN DEFAULT true,
I understand, that PostgreSQL does not allow us to use the same attribute name twice for in IN and OUT parameters, if we want to use named parameters. But isn't this something that could be solved in future versions of PostgreSQL? Looks more like a bug than a feature, because why would someone want to use the parameter name of one, that is defined as "OUT"?