使用 Geiser 和 babel 在组织模式下评估 mit 方案代码块



我正在尝试复制"小阴谋家"中的代码,因为我遵循并遇到了错误。

.emacs 文件:

;; Melpa package contains geiser
(require 'package)
(add-to-list 'package-archives
             '("melpa-unstable" . "http://melpa.org/packages/" t)
(package-initialize)
;; Setup geiser and babel
(require 'scheme)
(require 'python)
(setq geiser-active-implementations '(mit))
(custom-set-variables
 '(scheme-program-name "mit-scheme"))
(org-babel-do-load-languages
 'org-babel-load-languages
 '((scheme . t)
   (python . t)
   (sh . t)))

我运行M-x geiser。这打开了一个功能齐全的 Mit REPL。但是当我评估我的方案 src 代码块时,会发生以下情况:

#+BEGIN_SRC scheme
(define lat?
  (lamda (l)
    (cond
     ((null? l) #T)
     ((atom? (car l)) (lat? (cdr l)))
     (else #f))))
(lat? (bacon and eggs))
#+END_SRC
#+RESULTS:
: An error ocurred.

我在运行 C-c C-c 时处于组织模式。

更新:我已经将环境从我的Ubuntu VM切换到Cygwin。我遵循了uileiknarf的Cygwin Emacs指南,取得了巨大的成功。我的学习经历回到了正轨!

您的scheme代码应该是这样的:

(define lat?
  (lambda (l)
    (cond
     ((null? l) #t)
     ((not (pair? (car l)))
      (lat? (cdr l)))
     (else #f))))
(lat? '(bacon and eggs))

可能这将运行而不会出错。

最新更新