Переопределение синтаксических ключевых слов в r6rs

Подобно питонному ответу от Кристофера Чиче выше, вы также можете использовать встроенный сервер, который поставляется с различными версиями PHP.

php -S localhost:8888 & 

Это было более полезно для меня, так как мое приложение имеет привязки к внутреннему скрипту php, а также к интерфейсу d3.

1
задан tanascius 22 July 2010 в 08:10
поделиться

1 ответ

R6RS больше подходит для достижения вашей цели путем определения библиотеки, которую вы хотите настроить, исключения частей, которые вы хотите настроить, а затем определения этих частей в вашей собственной библиотеке. Вот пример:

myrnrs.sls

(library
 (myrnrs)

 (export set!)

 (import
  (except (rnrs) set!)
  (rename (rnrs) (set! rnrs-set!)))

 (define set! "Hello, world."))

test.scm

(import
 (except (rnrs) set!)
 (myrnrs))
 (display set!)(newline)    

К сожалению, здесь нет ничего похожего на all-from-except, как в Racket; поэтому вы можете создать библиотеку, переопределяющую set!, но вам придется импортировать rnrs и затем вводить экспорт для всех этих привязок в дополнение к переопределению set! Подробнее о здесь; по иронии судьбы я тоже хотел создать библиотеку без set!

2
ответ дан 2 September 2019 в 22:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: