我尝试编写一个程序,在源代码中添加字符串“hello world”。 source.rkt中文件的名称。它给了我这个错误:
source.rkt:6:31: #%datum: keyword used as an expression in: #:mode
#(118 6)
这是代码:
#lang racket
(provide (all-defined-out))
(define out (open-output-file "source.rkt"
[#:mode 'text
#:exists 'can-update]))
(write "hello world" out)
(close-output-port out)
答案 0 :(得分:6)
括号不是文字。它们意味着可选。因此,正确的语法是:
(define out (open-output-file "source.rkt"
#:mode 'text
#:exists 'can-update))