Постарайтесь не увлекаться такими деталями, как скобки и car / cdr. Большая часть того, что вы изучаете, так или иначе переводится на другие языки. Не беспокойтесь о том, сможете ли вы вывести Scheme на рынок, скорее всего, вы будете изучать другие, более востребованные языки, в других классах. То, что вы изучаете здесь, важнее.
Если вы изучаете схему, вы можете узнать все о том, как реализованы объектные системы (подсказка: объектная система не всегда относится к типу, с которым связаны методы и переменные экземпляра ...). Хотя такого рода знания не помогут в 95% вашей повседневной работы, для 5% вашей работы вы будете зависеть от этих знаний.
Кроме того, вы можете узнать о совершенно разных стилях вычислений, таких как потоковая / ленивая оценка или даже логическое программирование. Вы также можете узнать больше о том, как интерпретируются компьютерные программы в целом; от основ в том, как оценивается программный код, до более глубоких аспектов, таких как создание собственного интерпретатора и компилятора). Знание такого рода информации - вот что отличает хорошего программиста от великого программиста.
Схема на самом деле не является функциональным языком, она более независима от метода. Возможно, что еще важнее, Scheme - отличный язык для выбора, если вы хотите изучить различные методы вычислений. Например, высокопараллельный функциональный язык «термит» был построен поверх схемы.
Короче говоря, смысл в схеме обучения заключается в том, чтобы вы могли изучить основы программирования.
Если вам нужна помощь в том, чтобы сделать программирование в схеме более приятным, не бойтесь спрашивать. Многие программисты зацикливаются (например) на скобках, когда есть совершенно отличные способы работы с исходным кодом схемы, которые делают скобки чем-то лелеяющим, а не ненавидящим. Например, emacs с режимом paredit, каким-то образом режимом взаимодействия со схемой и режимом подсветки-скобок довольно хорош.