Структура и интерпретация компьютерных программ
Автор | Гарольд Абельсон , Джералд Джей Сассман , Джули Сассман |
---|---|
Предмет | Информатика |
Жанр | Учебник |
Издатель | С Прессой |
Дата публикации | 1984 г. (1-е изд.), 1996 г. (2-е изд.), 2022 г. ( изд. JavaScript ) |
Страницы | 657 |
ISBN | 0-262-51087-1 (2-е изд.) |
Класс ЛК | QA76.6 .A255 1996 г. |
Веб-сайт | сжать |
«Структура и интерпретация компьютерных программ» ( SICP ) — учебник по информатике, написанный Массачусетского технологического института профессорами Гарольдом Абельсоном и Джеральдом Джеем Сассманом совместно с Джули Сассман. она известна как «Книга волшебников» В хакерской культуре . [1] Он обучает фундаментальным принципам компьютерного программирования , включая рекурсию , абстракцию , модульность , а также языков программирования проектирование и реализацию .
MIT Press опубликовало первое издание в 1984 году, а второе издание - в 1996 году. Раньше оно использовалось в качестве учебника для вводного курса MIT по информатике . SICP фокусируется на обнаружении общих закономерностей для решения конкретных проблем и создании программных систем , использующих эти закономерности. [2]
MIT Press опубликовала версию JavaScript в 2022 году. [3]
Содержание [ править ]
В книге описываются концепции информатики с использованием Scheme , диалекта Lisp . Он также использует виртуальную регистровую машину и ассемблер для реализации интерпретаторов и компиляторов Lisp .
Темы в книгах:
Глава 1: Построение абстракций с помощью процедур [ править ]
- Элементы программирования
- Процедуры и процессы, которые они порождают
- Формулирование абстракций с помощью процедур высшего порядка
Глава 2: Построение абстракций с помощью данных [ править ]
- Введение в абстракцию данных
- Иерархические данные и свойство замыкания
- Символические данные
- Множественные представления абстрактных данных
- Системы с общими операциями
Глава 3: Модульность, объекты и состояние [ править ]
- Назначение и локальное состояние
- Модель среды оценки
- Моделирование с изменяемыми данными
- Параллелизм : время имеет решающее значение
- Потоки
4 Металингвистическая абстракция Глава :
- Метациркулярный оценщик
- Вариации схемы – ленивая оценка
- Вариации схемы – недетерминированные вычисления
- Логическое программирование
Глава 5: Вычисления с помощью регистровых машин [ править ]
- Проектирование регистровых машин
- Симулятор регистровой машины
- Распределение хранилища и сбор мусора
- Оценщик явного управления
- Сборник
Персонажи [ править ]
В книге появляется несколько вымышленных персонажей:
- Lisp Алисса П. Хакер, хакер
- Бен Битдиддл
- Сай Д. Фект , «реформированный программист на языке C»
- Ева Лу Атор
- Лем Э. Твикит
- Луи Ризонер, свободный мыслитель
Лицензия [ править ]
Книга распространяется по лицензии Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0). [4]
Курсовая работа [ править ]
Книга использовалась в качестве учебника для бывшего вводного курса программирования Массачусетского технологического института, 6.001. [5] с осени 1984 года до последнего семестра, осенью 2007 года. [6] Другие школы также использовали книгу в качестве учебника. [7]
Прием [ править ]
Байт рекомендовал SICP в 1986 году «профессиональным программистам, которые действительно интересуются своей профессией». В журнале заявили, что книгу читать нелегко, но она познакомит опытных программистов как со старыми, так и с новыми темами. [8]
Влияние [ править ]
SICP оказал влияние на образование в области информатики, и несколько более поздних книг были вдохновлены его стилем.
- «Структура и интерпретация классической механики» (SICM) , еще одна книга Джеральда Джея Сассмана и Джека Уиздома, в которой схема используется в качестве учебного элемента.
- Проектирование программного обеспечения для гибкости , Крис Хэнсон и Джеральд Джей Сассман
- «Как разрабатывать программы» (HtDP) , которая должна стать более доступной книгой для вводного курса информатики и устранить предполагаемые несоответствия в SICP.
- Essentials of Programming Languages (EoPL) , книга для курсов языков программирования.
См. также [ править ]
- Структура и интерпретация компьютерных программ, издание JavaScript
- Составители: принципы, методы и инструменты , также известные как Книга Дракона .
Ссылки [ править ]
- ^ Раймонд, Эрик С.; Стил, Гай (1991). Новый хакерский словарь . Интернет-архив. Кембридж, Массачусетс: MIT Press. ISBN 978-0-262-68069-1 .
- ^ Харви, Б. (2011 г.), «Почему SICP имеет значение?» , 150-летие Массачусетского технологического института , Boston Globe .
- ^ Структура и интерпретация компьютерных программ: JavaScript Edition , MIT Press, 2022 г.
- ^ «СИКП» . МТИ Пресс. Архивировано из оригинала 26 декабря 2017 г. Проверено 11 ноября 2007 г. .
- ^ «Электротехника и информатика; 6.001 Структура и интерпретация компьютерных программ» . OpenCourseWare . Массачусетский технологический институт. Весна 2005 года . Проверено 21 июня 2020 г.
- ^ Гай, Дональд, «Конец эпохи», Приемная комиссия Массачусетского технологического института (комментарий в блоге), заархивировано из оригинала 21 августа 2018 г. , получено 5 августа 2008 г. ,
я разговаривал с профессором Сассманом по телефону... Он сказал что на самом деле он пытался заменить 6.001 последние десять лет (и я где-то читал, что за этим шагом стоял и профессор Абельсон). Понимание принципов больше не является обязательным для ознакомления с предметом. Он считает версию 6.001 устаревшей.
- ^ «Университеты и колледжи, использующие SICP» . МТИ Пресс. Архивировано из оригинала 23 апреля 2022 г. Проверено 30 марта 2022 г.
- ^ Килов, Хаим (ноябрь 1986 г.). Журнал Byte, том 11, номер 12: Представление знаний . п. 70.