我使用shebang符号创建了一个guile Scheme脚本。
以下是代码:
#!/usr/local/bin/guile \
-e main -s
!#
(define (fact-iter product counter max-count)
(if (> counter max-count)
product
(fact-iter (* counter product) (+ counter 1) max-count)))
(define (factorial n)
(fact-iter 1 1 n))
(define (main args)
(factorial args)
)
文件名:factScheme.guile
我尝试直接在终端中运行它" factScheme.guile"我得到 bash factScheme.guile:找不到命令
如果我使用" ./ factScheme.guile"我得到权限被拒绝。
如果有人能告诉我如何在ubuntu的终端中逐步运行一个guile方案脚本,我将不得不这样做。
我在代码中提到的目录中有诡计。我
答案 0 :(得分:2)
您需要使factScheme.guile
文件可执行:
chmod +x factScheme.guile
您的程序还有其他问题:您需要将第一个(非程序名)参数转换为数字,并且需要显示结果。因此:
(display (factorial (string->number (cadr args))))
P.S。 Guile程序通常使用.scm
文件后缀。