MAXScript needs to convert arguments from the internal representation to the actual C++ function. This is commonly done using the def_visible_primitive macro found in the maxscrpt\definsfn.h header.
#include "definsfn.h" def_visible_primitive(IntervalArray, "IntervalArray");
It is standard practice to make the content of both arguments the same (i.e. "IntervalArray" and IntervalArray), which makes debugging a lot easier. During preprocessing, this macro gets expanded to:
Value* IntervalArray_cf(Value**, int); PrimitiveIntervalArray_pf("IntervalArray", IntervalArray_cf);