Публикации по теме 'sicp'


SICP в elisp: 1.1.1 Выражения
Одним из простых способов начать программирование является изучение некоторых типичных взаимодействий с интерпретатором диалекта Scheme языка Lisp. Представьте, что вы сидите за компьютерным терминалом. Вы вводите выражение, а интерпретатор отвечает, отображая результат вычисления этого выражения. Одним из видов примитивного выражения, которое вы можете ввести, является число. (Точнее, выражение, которое вы набираете, состоит из цифр, представляющих число по основанию 10.) Если вы..

Вопросы по теме 'sicp'

Каково объяснение упражнения 1.6 в SICP?
Я только начинаю работать с SICP (самостоятельно, это не для класса), и я несколько дней бился с Упражнением 1.6, и я просто не могу понять это. Это тот, где Алисса переопределяет if в терминах cond , например: (define (new-if predicate...
10304 просмотров

Создайте полиномиальный объект из числа, используя класс изменения
Я написал полиномиальный класс в соответствии со строками, описанными в SICP 2.5.3 (за исключением использования defclass). Я хотел бы иметь возможность легко складывать и умножать многочлены и обычные числа, но я не могу заставить класс изменения...
504 просмотров
schedule 03.06.2022

Проблемы Dr Racket с SICP
Я работаю через SICP. В настоящее время в первой главе у меня возникают проблемы с тем, чтобы Racket позволил мне переопределить «примитивы». Например, у меня сложилось впечатление, что я могу произвольно выполнить (define + 5) , и это было бы...
10710 просмотров
schedule 24.04.2022

Нетерпеливая оценка/прикладной порядок и ленивая оценка/нормальный порядок
Насколько я знаю, активная оценка/применительный порядок оценивает все аргументы функции перед ее применением, с другой стороны, ленивая оценка/нормальный порядок оценивает аргументы только тогда, когда это необходимо. Итак, в чем разница между...
4939 просмотров
schedule 10.11.2022

Почему apply так важно для оценщика lisp?
Я прочитал главу 4 SICP и только что обнаружил, что в первом разделе перечислены наиболее важные функции для реализации оценщика, eval и apply , я понимаю, что eval очень важен, но почему apply так важен? Для некоторых языков полностью...
1866 просмотров
schedule 19.02.2023

Упражнение SICP 3.8 - Почему процедура работает? (думаю дело в экологии)
Упражнение 3.8 в SICP описывается как удар: Когда мы определяли модель вычисления в разделе 1.1.3, мы говорили, что первым шагом в вычислении выражения является вычисление его подвыражений. Но мы никогда не указывали порядок, в котором должны...
744 просмотров
schedule 21.12.2022

Выполнение программ LISP в GNU Emacs
В последнее время я учился использовать GNU Emacs и довольно заинтересовался использованием того же текстового редактора, что и мой текстовый редактор, для замены текстовых редакторов в моей Linux Mint Olivia. Я также смотрел видеоролики...
884 просмотров
schedule 07.08.2022

Почему я не могу найти форму `when` при использовании neil / sicp?
Я решал упражнение 3.23 из раздела 3.3.2 протокола SICP , который представляет собой реализацию deque. Поскольку Racket не поддерживает set-car! и set-cdr! ,, я использую #lang planet neil/sicp из Поддержка SICP для DrRacket , и написал...
145 просмотров
schedule 05.12.2022

Маленькие языки, похожие на язык изображений в SICP
Раздел 2.2.4 SICP описывает небольшой "язык изображений" для создания сложных шаблонов изображений. Язык определяет один примитив painter для рисования изображения в заданном кадре и функции для преобразования и комбинирования painters для...
256 просмотров
schedule 21.09.2022

SICP cons-поток
относительно SICP 3.5 моя собственная реализация выглядит следующим образом (define (delay exp) (lambda () exp)) (define (force delayed-obj) (delayed-obj)) (define (cons-stream a b) (cons a (delay b))) (define (stream-car stream) (car...
1702 просмотров
schedule 05.10.2022

что не так в этой схеме кода?
Я изучаю sicp. это вопрос ex 1.3. Я не могу понять, почему этот код является проблемой. помогите пожалуйста .. ТТ вот код. (define (test a b c) (cond ((and (< a b) (< a c)) (+ (* b b) (* c c)) (and (< b a)...
1280 просмотров
schedule 05.07.2023

Что такое фиксированная точка?
Я пересматриваю некоторые из предыдущих лекций по SICP . Меня немного смущает понятие фиксированной точки. Процедура фиксированной точки: должен ли я думать об этом таким образом, «это способ найти фиксированную точку данной функции». Итак, f(2)...
862 просмотров

Три вопроса w.r.t. модель среды оценки
Я читаю книгу SICP здесь об императивной модели программирования. Я не смог понять иллюстрацию в двух пунктах: В.р.т. стрелка от square к «паре» (два круга): что означает эта стрелка? Хотя в этом разделе стрелка означает «окружающая...
308 просмотров
schedule 13.12.2023

SICP, стиль прохождения продолжения и батут Clojure
Я работаю с SICP, и упражнение 2.29-b дало мне возможность повеселиться со стилем передачи продолжений при обходе мобильных и ответвлений. Короче говоря, у каждого мобильного телефона есть левая и правая ветви, которые состоят из длины и либо...
947 просмотров

отличия аппликативного порядка/вызова по значению и нормального порядка/вызова по имени
Задний план Я изучаю sicp по онлайн-курсу и запутался в его конспектах лекций. В конспектах лекций аппликативный порядок, похоже, равен cbv, а нормальный порядок — cbn. Спутанность сознания Но в вики указано, что помимо порядков оценки...
1244 просмотров

Является ли num связанной переменной или свободной?
def function() num = 1 num += 1 return num Является ли num связанной переменной или свободной? P.S. Этот код написан на питоне. Там нет прежнего кода впереди этого.
91 просмотров
schedule 22.12.2022

в чем разница между (определить (добавить x y) (+ x y)) и (определить добавить (лямбда (x y) (+ x y)))?
Сейчас я пишу интерпретатор схемы с помощью С++. У меня вопрос по поводу определения и лямбда. (define (add x y) (+ x y)) расширяется как (define add (lambda (x y) (+ x y))) по lispy.py какая разница между этими двумя...
157 просмотров
schedule 23.06.2022

Потоки SICP как сигналы в Python
Я нашел несколько хороших примеров ( здесь , здесь ) реализации потоков, подобных SICP, в Python. Но я все еще не уверен, как обращаться с примером, подобным integral , найденному в SICP 3.5.3 " Потоки как сигналы ." Найденный там код схемы...
286 просмотров
schedule 05.04.2023

Итерационная программа для добавления списков в схему
Я читаю раздел 2.2 в SICP, где в книге представлена ​​процедура добавления двух списков. Я пытаюсь реализовать добавление с помощью итерации. Это мой код: (define (append list1 list2) (define (append-iter item1 reversed-item1 result) (if...
243 просмотров
schedule 06.12.2022

Почему (c1) возвращает 1, 2, 3 и т. д., а не #‹procedure:make_counter.rkt:8:5›?
Это из курса SICP для раздела модели окружающей среды: (define make-counter (lambda (n) (lambda () (set! n (+ n 1)) n))) Ниже интерпретатор говорит, что (make-counter 0) — это процедура: >...
105 просмотров
schedule 09.03.2023