lisp: создание репла для parenscript - PullRequest
1 голос
/ 09 января 2020

Я работал над тем, чтобы выучить Parenscript , но я обнаружил, что учебное пособие - это скорее руководство по работе с веб-сервером.

Уже существует или возможно создать REPL, чтобы я мог видеть фактический javascript, который выводится при вызове методов Parenscript?

1 Ответ

1 голос
/ 13 января 2020

Существует очевидное:

(loop (print (ps:ps* (read))))

Но я предпочитаю иметь форму, которую я могу редактировать в буфере, и просто macroexpand-1 (C-c ret на открытии) :

(defmacro js-func (name &body body)
  (let ((code (ps* `(progn ,@body))))
    `(defun ,name ()
       ,code))))
...