作者:麻廿_965 | 来源:互联网 | 2022-11-05 14:06
我用Racket编写了一个程序(源代码在顶部的.rkt
文件中#lang racket
)。我还用(主要)便携式R7RS Scheme写了一个库。我可以以干净的方式在程序中使用该库吗?
我的目标是使该库在Scheme实现之间具有广泛的可移植性(至少是与R7RS兼容的实现,理想情况下还应是其他实现)。Racket有一个第三方R7RS填充程序,但据我所知,它要求我#lang r7rs
在源文件的顶部键入内容。我猜想该#lang
指令会使Racket之外的Scheme感到困惑。
我可以将库的核心放在一个或多个可移植的.scm
源文件中,然后.rkt
使用#lang r7rs
指令告诉Racket以某种方式包括可移植文件的文件来包含一个文件吗?Racket是否了解某种库定义文件,例如.sld
用在雪地上的库定义文件?
我试图浏览整个Racket文档,但在任何地方都找不到。我也没有找到通用的计划可移植性常见问题解答或最佳做法文档。