Запускайте файлы схемы SICP как тесты с быстрым отказом

После нескольких лет программирования, похоже, пора наконец атаковать SICP . Однако вместо того, чтобы редактировать и запускать все в Emacs, я бы предпочел использовать другой редактор и простой make-файл для выполнения всех упражнений. Это не кажется полностью каноническим, потому что я не мог найти никаких ссылок на что-то столь же простое, как запуск файла, пока что-то «не сработает». Итак, как мне запустить Scheme в оболочке , чтобы он загружал файл, оценивал каждое выражение в последовательности и завершался ненулевым кодом выхода, как только он встречает оператор, который оценивается как #f или с нулевым кодом выхода, если весь файл был успешно оценен? На данный момент наиболее близкий к решению:

$ cat ch1.scm
...
(= 1 2)
$ scheme --load ch1.scm
...
Loading "ch1.scm"... done

1 ]=>

Изменить: Другими словами, есть ли способ сделать остановка оценки во время загрузки ch1.scm, если какое-либо из выражений в нем оценивается как #f ?

9
задан l0b0 8 August 2011 в 02:22
поделиться