несколько хороших ссылок для вас
оба являются учебными пособиями. Курсы с видеолекциями доступны на сайте MIT opencourseware.
http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/index.htm
Я думаю, что документация для plt-схемы довольно хороша http://docs.plt-scheme.org/ стоит прочитать
, а также: писать код, писать код, писать код
Я прошел курс языков программирования в колледже, который был полностью выполнен на Scheme, и мы использовали учебник «Языки программирования: применение и интерпретация» Шрирама Кришнамурти, одного из тех, кто помогал писать DrScheme. Учебник находится в свободном доступе в Интернете. Я нашел книгу действительно полезной и информативной, когда я пытался понять загадочный мистицизм Схемы.
Жаль, что я не выучил Лисп, когда мне было 16 лет. (В этом возрасте я начал заниматься коммерческим программированием.) Я не изучал его, пока мне не было почти 40 лет. Там, где я когда-то был слепым, теперь я могу видеть. (Ну, я все равно вижу несколько дюймов впереди себя.)
Я поддерживаю идею, которую кто-то еще здесь опубликовал об изучении Emacs.
Один из хороших способов выучить любой язык - это решить проблемы на projecteuler.net.
SICP (Structure and Interpretation of Computer Programs), конечно, отличная книга, но она не является необходимым хорошим введением в программирование на Scheme. Хотя, после некоторого понимания Scheme, чтение SICP рекомендуется.
Было бы полезно научиться использовать Emacs в качестве редактора. В качестве реализации Scheme я бы рекомендовал что-то вроде CHICKENscheme. Его руководство описывает, например, как развертывать программы.
Альтернативой может быть среда разработки Scheme, например JazzScheme.
Хорошей книгой для изучения Scheme будет The Scheme Programming Language.
Может быть, это не лучший ответ, но одна из вещей, которые я обнаружил за эти годы, - это то, что вовлекается много новых программистов. слишком много направлений. Если вы только начинаете, лучшее, что вы можете сделать (мое мнение), - это действительно хорошо изучить один язык программирования. Если возможно, я бы попытался сделать это языком, на котором вы работаете, если вы не работаете в сфере программирования, я бы попытался выбрать язык с лучшими перспективами получения работы.После того, как вы овладеете одним этим языком, изучение других языков поможет укрепить ваш и без того прочный фундамент и поможет вам стать исключительным программистом.
Не поймите меня неправильно, изучение Scheme - это прекрасное занятие, но пока вы не овладеете одним языком, вам будет труднее подняться по служебной лестнице и получить эту идеальную работу. В конце концов, большинство компаний хотят нанять гуру, убедитесь, что вы находитесь в этой группе.
Если среда Java уже удобна для вас, то, вероятно, лучшим способом является использование реализаций Scheme, которые работают поверх JVM. Для образовательных целей SISC более чем достаточно:
В качестве альтернативы вы можете использовать Kawa или Bigloo.
Если вы готовы изучать функциональные способы и не обязательно привязаны к Scheme, то, вероятно, Clojure будет правильным выбором.
Что ж, я ничем не могу вам помочь с инструментами. Я попробовал реализовать MIT и тоже немного заблудился, но я хотел бы порекомендовать книгу, которая является отличным источником знаний о программировании в целом и использует схему для иллюстрации идей. Если вы еще не сталкивались с этим, проверьте SICP
Хорошее введение для начинающих в Lisp Common Lisp First Contact
Не тяжеловесный курс, как SICP, упомянутый выше, но мягкое введение к синтаксису, особенностям и странностям Common Lisp в красиво отформатированном PDF-файле оптимизирован для чтения с экрана.
Попробуйте книгу The Little Schemer , она предоставляет нетрадиционный, но простой в использовании учебник по Scheme, и, в частности, учит вас, как «думать» рекурсивно, то есть необходим для понимания Scheme (и других языков функционального программирования).