I was trying around and noticed this can be done: return ({ [0]="yes", [1]="no" })[ rc ] ..but this not (had tried before): return { [0]="yes", [1]="no" }[ rc ] Is there a syntactical reason, or is it just an implementation detail? -ak