If you test your code in a new drawing you will find that the nested functions only become available after their parent functions have been called. This means that you have to use the c:100 function at least once for the c:150 function to become available. And the c:150 function must be called for the c:230 function to become available. And of the three functions only c:230 will behave properly.
The question is what are you trying to do? You should not nest functions without a good reason.
If you want to use an 'offset template' function, consider this example:
(defun OffsetTemplate
(dist
) )
)