Julia 1.8.2 Documentation
5.04 MB
1563 页
0 评论
| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .pdf | 3 |
| 摘要 | ||
文档详细阐述了Julia语言的文档系统,包括访问和编写文档的方法,如在REPL中使用问号获取帮助,IDE中的文档访问方式,以及文档字符串的语法。同时,文档介绍了调试Julia C代码的方法,包括内存分配调试、线程检测和DTrace工具的使用。还涵盖了Base模块的子模块,如Base.Broadcast和Base.Docs,同时提供了如何报告Julia崩溃问题和使用外部工具进行系统调用跟踪的指南。 | ||
| AI总结 | ||
以下是对《Julia 1.8.2 Documentation》内容的总结,按照文档的结构和内容层次进行梳理,核心观点和关键信息已突出:
---
### **1. 访问文档**
- 在REPL或IJulia中,输入`?`后跟函数、宏或字符串宏名称,按回车即可查看文档。
- 示例:`?cos`、`?@time`、`?r""`
- 主流Julia环境支持直接访问文档:
- VS Code:悬停函数名或使用侧边栏搜索。
- Pluto:打开右下角的"Live Docs"面板。
- Juno:使用`Ctrl-J, Ctrl-D`查看光标下的对象文档。
---
### **2. 编写文档**
- 使用docstring(字符串文档)可以轻松为函数、类型和其他对象添加文档。
- 语法:在对象(函数、宏、类型)之前放置一个字符串即可。
- 示例:
```julia
"Tell whether there are too foo items in the array."
foo(xs::Array) = ...
```
---
### **3. 开发和调试Julia的C代码**
#### **调试工具**
- **内存检查**:使用Clang的Memory Sanitizer(MSAN),编译时设置`SANITIZE_MEMORY=1`。
- **线程检查**:使用Clang的Thread Sanitizer(TSAN),编译时设置`SANITIZE_THREAD=1`。
- **DTrace和bpftrace**:动态 instrumentation工具,可实时开启或关闭instrumentation,适用于Linux、Mac OS/Darwin和FreeBSD。
- 在Linux上安装`systemtap`包以支持DTrace。
- Julia 1.8添加了对probes的支持。
#### **崩溃和错误分析**
- **崩溃报告**:收集包括版本信息、崩溃迹象和系统信息在内的调试信息。
- **错误类型**:
- 启动过程中的崩溃:使用`strace`(Linux)或`dtruss`(Mac)跟踪问题。
- 一般崩溃:使用`rr`生成执行轨迹(仅Linux)。
#### **构建调试版本**
- 使用`make debug`构建带有ASAN支持的`julia-debug`。
---
### **4. Julia REPL**
#### **启动和退出**
- 启动:`julia`命令或双击可执行文件。
- 退出:空行输入`Ctrl-D`或执行`exit()`。
#### **操作模式**
- **Julian模式**:默认模式,输入Julia表达式并执行。
- 示例:`julia> string(1 + 2)`输出"3"。
- 特性:结果保存在变量`ans`,末尾分号可抑制输出。
- **帮助模式**:输入`?`进入,查找文档或帮助信息。
#### **历史和其他功能**
- 支持搜索历史、制表符补全、帮助模式和Shell模式。
---
### **5. I/O和网络**
- **多媒体I/O**:
- `display(x)`:显示对象的多媒体表示。
- `show`:自定义多媒体表示,支持MIME类型。
- `pushdisplay`:注册自定义显示后端。
- **屏幕尺寸**:`displaysize([io::IO])`返回屏幕尺寸, 默认为(24, 80),可通过环境变量`LINES`和`COLUMNS`设置。
---
### **6. Base子模块**
- 关键子模块包括:
- `Base.Broadcast`:广播实现。
- `Base.Docs`:文档元数据支持。
- `Base.Meta`:元编程工具。
- `Base.Threads`:多线程支持。
- `Base.Sys`:硬件和操作系统信息。
- `Base.GC`:垃圾回收工具。
---
### **7. 学习资源**
- 官方学习资源列表可从Julia官网的学习页面获取。
- REPL帮助模式:输入`?`并搜索关键词或函数。
---
### **8. 工具和调试**
- **LLVM选项**:`LLVM`和`libLLVM`版本信息。
- **调试工具**:
- `rr`:时间旅行调试工具,适用于Linux。
- `strace`和`dtruss`:跟踪系统调用。
- **版本信息**:
- 执行`versioninfo()`获取详细运行时信息。
---
### **9. Julia版本信息**
- 示例输出:
```
Julia Version 1.8.2
Commit 36034abf260 (2022-09-29 15:21 UTC)
Platform Info: OS: Linux (x86_64-linux-gnu)
CPU: 2 × Intel(R) Xeon(R) Platinum 8272CL CPU @ 2.60GHz
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-13.0.1 (ORCJIT, skylake-avx512)
Threads: 1 on 2 virtual cores
```
---
以上是《Julia 1.8.2 Documentation》的核心内容总结,涵盖了文档访问、编写、调试工具、REPL功能、I/O操作、子模块功能及版本信息等内容。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
1556 页请下载阅读 -
文档评分














PyWebIO v1.8.2 Documentation