Различия между Common Lisp и Scheme завышены. Они есть, и некоторые из них важны, но для реальной работы у вас не будет проблем с изучением одного, а затем и другого. Когда я обычно писал обоим, я мог без проблем переключаться между ними.
Если вы планируете начать с SICP, я бы начал изучать схему. Если вы планируете начать с вашего проекта и решите, что вам нужен Common Lisp, то я бы начал изучать Common Lisp. После этого очень легко выучить второй диалект.
Есть несколько вещей, которые следует учитывать. Тип проекта является наиболее важным: схема отлично подходит для проектов языкового дизайна. Если ваш проект является интерпретатором / компилятором / синтаксическим анализатором / и т. Д. Для нового, странного типа языка (или просто языковой функции), тогда Scheme идеален. С другой стороны, Common Lisp очень эффективен в тех областях, где вам нужно много уже встроенных базовых утилит, но вы точно не знаете, что именно вы создаете заранее - в результате вы получаете большинство DSL. время. Вот почему это было так популярно в искусственном интеллекте. (Это тот код, для которого я его использовал.)
Во-вторых, PLT имеет IDE схемы с низкой степенью обучения, называемое DrScheme. Common Lisp имеет подключаемый модуль Emacs с высокой степенью обучения, который называется Slime . По моему опыту, Slime более мощный, но для этого требуется достаточное обучение, чтобы вы, вероятно, учитывали его, если это проект продолжительностью в семестр (особенно если вы еще не используете Emacs).