Tenho me familiarizado com o LISP para fins de auto-aperfeiçoamento. Uma das coisas que notei é que o LISP está muito mais dentro do paradigma da Matemática do que o C. A estrutura da sintaxe e do design parece ecoar diretamente o modelo matemático real de um algoritmo. Não faz sentido para mim por que bons programas de CS baseados em matemática estudam C em vez de LISP. Penso que o LISP emprega mais diretamente conceitos matemáticos do que C. Não estou dizendo que você não pode modelar estruturas matemáticas no C. Estou apenas observando que o LISP parece estar muito conectado para matemáticos.
Eu li muitos dos discursos de Joel Spolsky sobre as escolas JAVA e o que não - e eu concordo com sua avaliação -, mas minha escola não ensinou JAVA por esse mesmo motivo. Eles eram rigorosos no ensino de conceitos fundamentais como ponteiros, design de algoritmos, recursão e até instruções de montagem. No entanto, eles fizeram tudo isso em C e c ++. Alguém sabe as razões para isso e / ou sua história?