我想读取STDIN的输入,然后只读它是什么:如果输入是一个列表,那么读取的是一个列表.但是,read-line函数似乎总是返回一个字符串!例如:in clisp interactive envrironment:
(read-line)
Run Code Online (Sandbox Code Playgroud)
我输入:
("(define M ::int )" "(define X ::int )")
Run Code Online (Sandbox Code Playgroud)
它会给我一个字符串:
"(\"(define M ::int )\" \"(define X ::int )\")" ;
Run Code Online (Sandbox Code Playgroud)
我想要的仍然是原始列表: ("(define M ::int )" "(define X ::int )")
那么如何让读取线读入输入的内容呢?
小智 2
(let ((a read)))
(eval a))
(+ 2 2 2)
=> 6
Run Code Online (Sandbox Code Playgroud)
他们将其称为“READ EVAL PRINT LOOP”是有原因的。