Маленький Типер

В книге "Маленький Typer" я только начинаю использовать DrRacket. Из видео Дэвида Кристиансена я ввел:

(claim two-plus-two-is-four
  (= Nat (+ 2 2) 4))

который вернул ошибку:

 claim : this function is not defined.

Зачем?

1 ответ

Решение

Сначала вам нужно установить pie, В DrRacket вы можете сделать это с помощью: Файл > Диспетчер пакетов... > Что я имею в виду, набрав pie в поле источника пакета и нажав Установить.

В качестве альтернативы, если вы используете командную строку, вы можете установить ее с помощью команды:

raco pkg install pie

Во-вторых, если вы используете DrRacket, вам нужно убедиться, что в нижнем левом углу окна выбран "Определить язык из источника" (в командной строке это значение по умолчанию).

В-третьих, поставить #lang pie в верхней части вашего файла.

#lang pie

(claim two-plus-two-is-four
  (= Nat (+ 2 2) 4))

Это все еще не работает, потому что + не встроенный; это может быть определено с точки зрения других вещей, которые являются встроенными (это обсуждено на страницах 72 - 77 книги).

Другие вопросы по тегам