lisp-1はシンボルが関数と変数に分かれていなくて名前が衝突しやすくなった
そのせいで伝統的な方法のマクロだとlisp-2以上に気を付けなくならなくなった
だから衛生的マクロが必要になったけど複雑さとリソース不足のせいで何十年もかけてるのにまだちゃんと決まってない

最大の原因はlisp-1だろ