range function did not work for floating point arguments.
If either from or step is floating point type, then a range of
floating point numbers must be produced.
if stack->stack reference is copied into heap, then it must be updated
to heap->stack.