The Idris Tutorial Version 0.11
314.20 KB
71 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
英语 | .pdf | 3 |
摘要 | ||
文档《The Idris Tutorial Version 0.11》介绍了Idris编程语言的基础知识和高级功能。内容涵盖了进入交互环境的方式、语法扩展(如自动隐式参数)、包管理及测试框架的使用。交互环境支持表达式评估、类型检查、定理证明和编译等操作。文档还详细说明了如何通过idris命令行工具进行测试、管理依赖包以及扩展语言功能。 | ||
AI总结 | ||
以下是对《The Idris Tutorial Version 0.11》文档内容的中文总结:
---
### 1. **命令行选项**
Idris提供了多种命令行选项,常用的包括:
- `--exec`: 将文件编译为可执行程序。
- `--check`: 检查文件及其依赖项的类型,但不启动交互环境。
- `--package`: 添加依赖包,例如`--package contrib`用于使用contrib包。
- `--help`: 显示命令行使用说明和选项。
---
### 2. **交互式环境**
进入交互式环境时,输入`idris`即可启动。该环境提供了类似GHCi的界面,支持的操作包括:
- 表达式评估和类型检查。
- 定理证明。
- 编译。
- 编辑。
- 其他多种功能。
示例:加载文件`hello.idr`,检查`main`的类型,并编译为可执行文件`hello`。如果类型检查成功,会生成字节码文件(如`hello.ibc`)以加快下次加载速度。若源文件更改,字节码会重新生成。
---
### 3. **语法扩展**
文档介绍了以下语法扩展及其用法:
- **隐式参数**:可以通过类型检查或上下文推断省略某些参数。
- **自动隐式参数**:使用`auto`注释后,Idris会自动搜索合适的值来填充隐式参数,包括:
- 本地变量。
- 构造函数(递归搜索,最大深度100)。
- **其他扩展**:包括字面programming、外部库接口(通过FFI)、类型提供者、代码生成和宇宙层次。
---
### 4. **测试框架**
Idris提供了一个测试框架,通过`idris --testpkg`选项运行。例如:
- 包文件`maths.ipkg`声明了测试模块`Test.NumOps`中的`testDouble`和`testTriple`。
- 执行`idris --testpkg maths.ipkg`会检查`Maths/NumOps.idr`和`Test/NumOps.idr`,并运行测试。
- 测试通过后会输出`Test Passed`。
---
### 5. **编辑器支持**
Idris支持多种编辑器的插件功能,包括:
- **Vim**:提供命令如`\t`(显示当前名称的类型)、`\e`(评估表达式)、`\r`(刷新和类型检查缓冲区)。
- **Emacs**:提供对应功能。
- 支持其他编辑器可以通过`idris -client`实现。
---
### 总结
文档涵盖了Idris的命令行使用、交互式环境、语法扩展、测试框架以及编辑器支持等内容,是一份全面的教程,适合程序员学习和使用Idris语言进行编程和开发。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
64 页请下载阅读 -
文档评分