-;;; A version of the form in H. Shevis' soar-mode.el package. Less robust.
-;;; (defun shen-compile-sexp (start end)
-;;; "Compile the s-expression bounded by START and END in the inferior shen.
-;;; If the sexp isn't a DEFUN form, it is evaluated instead."
-;;; (cond ((looking-at "(defun\\s +")
-;;; (goto-char (match-end 0))
-;;; (let ((name-start (point)))
-;;; (forward-sexp 1)
-;;; (process-send-string "inferior-shen"
-;;; (format "(compile '%s #'(lambda "
-;;; (buffer-substring name-start
-;;; (point)))))
-;;; (let ((body-start (point)))
-;;; (goto-char start) (forward-sexp 1) ; Can't use end-of-defun.
-;;; (process-send-region "inferior-shen"
-;;; (buffer-substring body-start (point))))
-;;; (process-send-string "inferior-shen" ")\n"))
-;;; (t (shen-eval-region start end)))))
-;;;
-;;; (defun shen-compile-region (start end)
-;;; "Each s-expression in the current region is compiled (if a DEFUN)
-;;; or evaluated (if not) in the inferior shen."
-;;; (interactive "r")
-;;; (save-excursion
-;;; (goto-char start) (end-of-defun) (beginning-of-defun) ; error check
-;;; (if (< (point) start) (error "region begins in middle of defun"))
-;;; (goto-char start)
-;;; (let ((s start))
-;;; (end-of-defun)
-;;; (while (<= (point) end) ; Zip through
-;;; (shen-compile-sexp s (point)) ; compiling up defun-sized chunks.
-;;; (setq s (point))
-;;; (end-of-defun))
-;;; (if (< s end) (shen-compile-sexp s end)))))
-;;;
-;;; End of HS-style code
+;; A version of the form in H. Shevis' soar-mode.el package. Less robust.
+;; (defun shen-compile-sexp (start end)
+;; "Compile the s-expression bounded by START and END in the inferior shen.
+;; If the sexp isn't a DEFUN form, it is evaluated instead."
+;; (cond ((looking-at "(defun\\s +")
+;; (goto-char (match-end 0))
+;; (let ((name-start (point)))
+;; (forward-sexp 1)
+;; (process-send-string "inferior-shen"
+;; (format "(compile '%s #'(lambda "
+;; (buffer-substring name-start
+;; (point)))))
+;; (let ((body-start (point)))
+;; (goto-char start) (forward-sexp 1) ; Can't use end-of-defun.
+;; (process-send-region "inferior-shen"
+;; (buffer-substring body-start (point))))
+;; (process-send-string "inferior-shen" ")\n"))
+;; (t (shen-eval-region start end)))))
+;;
+;; (defun shen-compile-region (start end)
+;; "Each s-expression in the current region is compiled (if a DEFUN)
+;; or evaluated (if not) in the inferior shen."
+;; (interactive "r")
+;; (save-excursion
+;; (goto-char start) (end-of-defun) (beginning-of-defun) ; error check
+;; (if (< (point) start) (error "region begins in middle of defun"))
+;; (goto-char start)
+;; (let ((s start))
+;; (end-of-defun)
+;; (while (<= (point) end) ; Zip through
+;; (shen-compile-sexp s (point)) ; compiling up defun-sized chunks.
+;; (setq s (point))
+;; (end-of-defun))
+;; (if (< s end) (shen-compile-sexp s end)))))
+;;
+;; End of HS-style code