pdf文档 Julia 1.11.6 Release Notes

6.73 MB 2007 页 0 评论
语言 格式 评分
中文(繁体)
.pdf
3
摘要
文档详细介绍了Julia 1.11.6版本的新功能、改进和变更。主要包括新语言功能如Memory类型和public关键字,编译器和运行时的优化,多线程调度的改进,以及标准库和包管理器的更新。此外,还涉及命令行选项的变化、构建系统的优化、以及对外部依赖的更新。文档还介绍了已过时或移除的功能,以及与Julia版本管理和环境配置相关的注意事项。
AI总结
《Julia 1.11.6 发布说明》摘要如下: ### 1. **新语言功能** - 引入 `Memory` 类型,作为 `Array` 的低级替代,具有更低的开销和更快的构造速度。 - 新增 `public` 关键字,标记公用 API,区别于 `export`。 - 支持 `ScopedValue`,实现任务间的动态作用域继承。 - `Manifest.toml` 文件支持以 `Manifest-v{major}.{minor}.toml` 格式命名,便于多版本 Julia 共存。 - 增加对 Unicode 15.1 的支持。 ### 2. **语言变化** - 预编译时钩子 (`atexit`) 现在在保存输出文件前运行,便于资源清理。 - 预编译阶段不再生成代码覆盖和内存分配跟踪数据。 - `JULIA_DEPOT_PATH` 中的空路径现在忽略默认用户仓库。 ### 3. **编译器/运行时改进** - 更新垃圾回收策略,基于分配的页面计数。 - 支持在代码块上注解 `Base.@assume_effects`。 ### 4. **命令行选项变化** - Julia 的入口点标准化为 `Main.main(args)`,需通过 `@main` 宏显式启用。 - `--compiled-modules` 和 `--pkgimages` 标志支持 `existing` 模式。 - `--project` 标志支持通过 `@script` 指定项目目录。 ### 5. **多线程改进** - `Threads.@threads` 支持 `:greedy` 调度器,适用于非均匀工作负载。 - 新增 `Base.Lockable` 结构,方便资源和锁的组合。 ### 6. **构建系统更改** - 新增 Makefile 支持使用 PGO 和 LTO 优化策略。 ### 7. **新库函数** - 引入 `StyledStrings` 库,支持文本注解(如语言或颜色)。 - `rand` 函数支持 `Tuple` 和 `Pair` 类型sampling。 - 支持通过字符串或负整数种子 RNG。 ### 8. **标准库更改** - `write(::IO, ::AbstractArray)` 现在写入内存表示,而非递归写入元素。 - 删除 `length(::Stateful)` 方法,因其可能导致不正确结果。 ### 9. **包管理器更新** - 支持 `Project.toml` 中的 `[sources]` 部分,添加非注册包依赖。 - 遵守 `Project.toml` 中的 Julia 版本兼容性约束。 - 允许通过 `--weak` 或 `--extra` 添加弱依赖或额外依赖。 ### 10. **REPL 改进** - 标签补全提示文字颜色更浅,可通过 `hint_tab_completes` 选项禁用。 - 空提示的 `Meta-M` 切换上下文模块。 ### 11. **日期与统计更新** - 未记录 `adjust` 函数现已记录。 - `Statistics` 现为可升级的标准库。 ### 12. **分布式计算调整** - `pmap` 默认使用 `CachingPool`。 ### 13. **弃用或移除** - 删除 `Base.map`、`Iterators.map` 和 `foreach` 的单参数方法。 ### 14. **外部依赖更新** - `libuv` 更新至 v1.48.0。 - 替换 `tput` 为纯 Julia 终端信息解析器,终端信息数据库默认嵌入。 ### 15. **工具改进** - CI 支持自动检测拼写错误。 此版本重点提升了性能、多线程支持、包管理和用户体验,同时增强了语言功能和标准库能力。
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余 1995 页请下载阅读 -
文档评分
请文明评论,理性发言.