我正在尝试找到一种在球拍中使用多种语言模型来编写程序的方法。例如,我用球拍写了一个c程序,如下所示:
#lang c
#include <stdio.h>
int main() {
int a = 1;
printf("%d\n", a);
return 0;
}
那么有没有可能在球拍程序中把python代码放在上面的c代码之后,这样球拍程序看起来就像:
#lang c
#include <stdio.h>
int main() {
int a = 1;
printf("%d\n", a);
我试图在运行时加载和使用来自不同模块的函数。问题是dynamic-require的范围,Any,似乎不能被cast到一个更具体的(函数)类型。 test.rkt: #lang typed/racket
(module other-module typed/racket
(provide f)
(: f : Integer -> Integer)
(define (f x)
(* x 2)))
; g has type Any because dynamic-require returns a value of type Any
(define g (dynami
我正在使用Perl CGI,我正在寻找如何在标题中包含viewport元,即以下html行:
<meta name = "viewport"
content = "width = device-width, initial-scale = 1, user-scalable = yes">
我的脚本的头文件如下:
use strict;
use warnings;
use utf8;
use DBI;
use CGI qw (-any);
use Switch;
my $ cgi = new CGI;
print $ cgi-> he
当我在上尝试这些指令时,在我输入“球拍-f as.scm”之后,我得到了"-bash:球拍:未找到命令“。
我还尝试了在Linux上下载Arc的说明:我从download.racket-lang.org下载了racket,当我在Arc/Nu部分找到“./ ”时,终端的输出是"env: racket: No these file or directory“。
Arc Language Wiki (链接到上面)表明官方的安装说明已经过时了,并且很少说明如何在OS X上安装Arc。我尝试在谷歌上搜索“命令未找到”和“没有这样的文件或目录”问题的一般解决方案,但找不到任何让我解决问题的
我是一个新的计划/球拍学生,所以请原谅任何明显的语法错误。
今天在课堂上提到方案列表'(a, b, c)应该是无效的,但当我们运行它时,它返回:
>'(a . b . c)
(b a c)
这没有任何意义。Afaik,解释器应该创建一个带有car 'a和cdr 'b的cons单元格,并且'c‘应该是无效的。也就是说,解释器在这里做了一些非常奇怪的事情。这适用于#lang scheme,#lang球拍等。我们使用DrRacket作为解释器。
有趣的是,
>'(a . b . c . d)
抛出异常并终止。
我非常好奇,希望能够理解这
我和BSL有个问题。我想将我的代码分成单独的辅助文件,然后使用
(require "auxiliary-function.rkt")
在开始时,将分隔的代码导入定义区域。然而,它并不像想象的那样起作用。虽然没有给出显式错误,但似乎DrRacket没有在单独的文件中看到代码,而我所看到的只是错误
<auxiliary-function-name>: this function is not defined
显然,
(provide x)
不包括在BSL中。我读过和的答案,但仍然不清楚如何使其工作。这在BSL中是可能的吗?
谢谢!
我被要求用球拍写一个程序,以便将算术运算符的行为从前缀更改为后缀。更准确地说:我希望这段代码:(a b +)的行为像:(+ a b) 我想使用define-syntax-rule来改变+运算符的行为,但我有一个问题,在使用define-syntax-rule时,我们首先写入宏的名称,然后再写参数。我的问题是:有没有办法在球拍函数中写出开头的参数和最后的名字?
我正在尝试运行SICP4.1 ()中描述的程序,但是在按照书中的建议重新定义函数apply时遇到了一些困难。代码如下:
#lang planet neil/sicp
;; -----------------------------------------------------------------------------
;; 4.1.1 The Core of the Evaluator
;; -----------------------------------------------------------------------------
;; Eval
(define a
我正在尝试使用emacs中的geiser-mode来运行球拍代码。我已经能够安装geiser-mode并启动了球拍。
然而,当我运行一个定义两次时,我得到了以下错误。此名称以前已定义,不能重新定义
下面是一个简单的例子
(define a (* 1 4))
a
运行两次
在调试器中
#a: this name was defined previously and cannot be re-defined
#in: a