It sounds like you're saying that JMP is wrapping the entire column-formula in a loop that iterates "Row()" over the rows of the table, calculating a value for each row.
That *would* make sense, except for this expression:
Col Min(Col Max(:height, :age, :sex), :age)
... which by that logic, when e.g. Row() is set to i=1, then it would calculate Col Max() as the largest value in the :height column of the whole table where :age[i] == :age[1] and :sex[i] == :sex[1], which returns a single number. Then it tries to calculate Col Min() of that single number, which by definition can only ever be that number. I'm really struggling to make that make sense.
I keep thinking that Col Max() must be returning a list, then the Col Min() could be looking at all the rows of that list where :age[i] == :age[1].
But my idea here requires that JMP do something similar to what perl does, basically keeping track of whether something is being called in scalar or list context, i.e. if a function is used in a way that expects a list back, it returns a list, otherwise it returns a scalar. That way Col Max() here could return a list for Col Min(), which in turn would return a scalar value.
I'm guessing I'm missing something here and can't put my finger on it.