0

我在记事本上写了这个 Scheme 源文件。我已经安装了策略方案。

(define hello-world
   (lambda ()
         (begin
    (write ‘Hello-World)
            (newline)
    (hello-world))))

我使用 Windows 命令行。我在命令行中输入“gsc hello.scm”。它在我的桌面上吐出一个名为“hello.o2”的文件。我想在我的命令行上看到“Hello-World”弹出。例如,当我用 c++ 编译东西时,它会给我一个名为 a.exe 的文件,我可以在命令行上观察它。

如何使用方案的 gambit 编译器执行此操作?

4

2 回答 2

0

如果您想要一个可以自行运行的可执行文件,您需要做几件事以使其正常工作。

@;gsi-script %~f0 %*
;
(define hello-world
        (lambda ()
                (begin (write `Hello-World) (newline) (hello-world))))

(define (main)
        (hello-world))

第一行仅适用于 DOS/Windows。该顶行的 Unix 版本是

;#!/usr/local/bin/gsi-script -:d0

这些行告诉编译器在编译后如何执行代码。

另外,你需要一个main程序。如果你没有传递任何参数,那么你可以使用我给你的表格。如果需要传递参数,则需要适当地编写主过程,注意所有参数都是作为字符串传递的,可能需要在使用前进行解析或转换。

于 2017-04-07T13:54:51.977 回答
0

您可以通过添加 -exe 编译器开关来创建可执行文件:

gsc -exe hello.scm

将产生 hello.exe 。或者,您可以生成 .o1(或 .o2 等)文件并使用以下命令执行它:

gsc hello.scm
gsi hello
于 2017-01-10T20:56:30.000 回答