Questions
&gt; Why are programming environments still so primitive?<p>Because we as an industry made a strategic decision in the late 20th century to value run-time efficiency over all other quality metrics, a decision which has manifested itself in the primacy of C and its derivatives.  Everything else has been sacrificed in the name of run time efficiency, including, notably, security.  Development convenience was also among the collateral damage.<p>&gt; Why can&#x27;t I debug a function without restarting my program?<p>Because you use C or one of its derivatives instead of Lisp or one of its derivatives.  In Common Lisp you can not only debug a function without restarting your program, you can <i>redefine classes</i> without restarting your program.  It is truly awesome.  You should try it some time.