Julia 1.11.1 Documentation
6.68 MB
1989 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
英语 | .pdf | 3 |
摘要 | ||
该文档详细介绍了Julia 1.11.1版本的功能、改进和新特性。文档系统允许用户通过REPL或集成开发环境轻松访问函数、宏和类型的文档,支持文档字符串的编写和查找。发行说明中提到了大量的更新,比如Statistics成为可升级的标准库,pmap默认使用CachingPool,libuv库更新到v1.48.0,以及工具链改进,包括自动拼写检查。Scoped Values是Julia 1.11中引入的新特性,允许在动态作用域内设置变量值,简化了并行计算中的状态管理。 | ||
AI总结 | ||
《Julia 1.11.1 Documentation》文档内容总结如下:
### 1. 访问文档
- 可以通过REPL或IJulia中输入`?`后加上函数或宏的名称查看文档,例如`?cos`、`@time`或`r""`。
- 各种Julia环境提供了不同的文档访问方式:
- **VS Code**:悬停在函数名上即可查看文档,侧边栏的Julia面板可用于搜索。
- **Pluto**:在右下角的“Live Docs”面板中查看。
- **Juno**:使用快捷键`Ctrl-J, Ctrl-D`查看光标处对象的文档。
- 提供API判断文档是否存在:`Docs.hasdoc(module, name)`,或获取模块中未文档化的名称:`Docs.undocumented_names(module; all)`。
### 2. 编写文档
- Julia内置文档系统支持轻松编写函数、类型等的文档,通过在对象前添加字符串作为docstring。
- 示例:`"Tell whether there are too foo items in the array." foo(xs::Array) = ...`。
- 注意事项:docstring与对象之间不能有空行或注释。
- **重要改进**:Statistics成为可升级的标准库。
### 3. Julia 1.11的新功能与改进
- **Distributed**:`pmap`默认使用`CachingPool`。
- **Deprecated或移除**:`Base.map`、`Iterators.map`和`foreach`的单参数方法已移除。
- **外部依赖更新**:
- `libuv`从v1.44.2更新到v1.48.0。
- 替换`tput`为纯Julia的终端信息解析器。
- 默认引用终端信息数据库`terminfo`以提升REPL用户体验。
- **Tooling改进**:CI自动检测拼写错误,忽略已修复的错误。
### 4. 安装Julia
- 使用预编译二进制或从源代码编译安装。
- 建议从MATLAB、R、Python、C/C++或Common Lisp过渡时阅读注意事项,避免常见陷阱。
### 5. Getting Started
- 启动REPL:双击Julia可执行文件或命令行输入`julia`。
- REPL交互:输入表达式如`1 + 2`,按回车执行,结果显示为`3`。
- 退出REPL:按`Ctrl-D`或输入`exit()`。
- 变量`ans`保存最后一个表达式的值,仅在交互式会话中有效。
### 6. 单元测试
- 自Julia 1.11起,包预编译阶段不再收集覆盖率。
### 7. UUID
- **`uuid1()`**:生成基于时间的UUID,使用`Random.RandomDevice`作为默认RNG。
- 示例:`uuid1(rng::AbstractRNG)`生成唯一标识符。
- 特性:即使调用`Random.seed!(seed)`,结果也不会重复。
- **`uuid4()`**:生成基于随机数或伪随机数的UUID,遵循RFC 4122。
### 8. 作用域值
- **`ScopedValue`**:在Julia 1.11引入,提供动态绑定。
- 创建:`ScopedValue(1)`。
- 示例:`with(a => 2) do ... end`在新动态范围内设置值。
-_macro:`@with`用于更简洁的语法。
文档还提到了一些调试和报告崩溃的信息,包括版本和环境信息的报告,如:
```julia
julia> using InteractiveUtils
julia> versioninfo()
```
这些信息对于维护者诊断问题至关重要。 |
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余
1977 页请下载阅读 -
文档评分