racket() takes no arguments
时间: 2023-12-30 17:05:29 浏览: 105
`racket()` is a function that takes no arguments. If you encounter an error message that says `racket() takes no arguments`, it means that you are passing an argument to the `racket()` function, but this function does not expect any arguments.
To fix this error, you should remove the argument that you are passing to the `racket()` function. Alternatively, you can define a new function that takes the argument you want to pass and then call `racket()` inside that function.
相关问题
Racket语言介绍
Racket是一种动态类型、基于需求的编程语言,它支持多种编程范式,包括函数式编程(functional)、命令式编程(imperative),以及更现代的如元编程(metaprogramming)。[^1]
**入门Racket编程**:
1. **选择语言**: 如果你是第一次使用DrRacket,可能会看到默认语言不是Racket。可以通过Language|Choose Language...菜单选择#lang Racket声明的编程语言。
2. **#lang行**: Racket代码通常以`#lang <language>`开头,指定你要使用的语言方言(如 racket 或 lisp)。
3. **基本结构**:
- **变量与数据结构**: Racket有丰富的数据类型,如列表(`'(1 2 3)`)、原子(`'a`)、集合等。你可以定义并操作这些数据结构。
4. **函数式编程**:
- **函数**: Racket鼓励函数式编程风格,通过高阶函数、递归和匿名函数来解决问题。
- **示例**:
```racket
(define (add x y) (+ x y))
(add 1 2) ; 结果: 3
```
5. **命令式编程**:
- **控制流**: 使用`if`、`cond`进行条件判断,`begin`和`do`实现循环和顺序执行。
- 示例:
```racket
(if (> 10 5) "Yes" "No") ; 结果: "Yes"
```
6. **模块与组织代码**:
- 使用`module`关键字创建模块,可以封装代码并方便复用。
```racket
#lang racket
(module+ exports
(define adder (λ (x y) (+ x y)))
)
```
最后,为了简单编程,可以从基础语法开始学习,逐步构建项目,比如实现一些计算逻辑或解决特定问题。[^2]
Racket 环境搭建
要在Emacs中搭建Racket开发环境,你可以按照以下步骤进行:
1. **下载和安装Racket**[^1]:
- 访问Racket官方网站(https://racket-lang.org/)下载适合你的操作系统的版本,比如针对Mac的安装包。
- 安装完成后,通常会有一个名为`racket`和`raco`的可执行文件,用于运行Racket。
2. **创建软链接以添加到PATH**:
- 使用命令行工具创建软链接,使`racket`和`raco`可以在终端全局访问:
```shell
ln -s /Applications/Racket\ v6.2/bin/racket /usr/local/bin/racket
ln -s /Applications/Racket\ v6.2/bin/raco /usr/local/bin/raco
```
这样可以避免每次启动Emacs时都需要指定完整路径。
3. **安装`racket-mode` in Emacs**:
- 打开Emacs,进入ELPA(Emacs Lisp Package Archive)库:
```shell
M-x package-list-packages RET
```
- 搜索`racket-mode`并安装它。
- 启动一个新的Racket缓冲区,通过输入`(require racket/base)`来测试Racket支持是否已经设置好。
4. **配置Emacs**:
- 可能需要在`.emacs`或`.emacs.d/init.el`文件中添加以下内容来启用Racket mode:
```elisp
(use-package racket
:init
(setq auto-mode-alist `(("\\.rkt$" . racket-mode)))
:config
(global-set-key "\C-cl" 'racket-compile-and-run)
)
```
现在,你应该能够在Emacs中轻松地编写、编译和运行Racket代码了。
阅读全文