首页
/ Enso 2025.1.2 版本发布:数据流编程语言的全面升级

Enso 2025.1.2 版本发布:数据流编程语言的全面升级

2025-06-08 19:10:56作者:凤尚柏Louis

Enso 是一款创新的数据流编程语言和开发环境,它将可视化编程与传统的文本编程完美结合,旨在为数据科学家、分析师和开发者提供更高效、更直观的编程体验。Enso 独特的图形化界面允许用户通过连接节点来构建数据处理流程,同时保留了传统编程语言的强大功能和灵活性。

核心功能升级

1. 增强的组件浏览器体验

2025.1.2 版本对组件浏览器进行了重大改进,现在可以显示组件组的列表,并为每个组件提供简短的文档摘要。这使得用户在查找和使用组件时能够获得更丰富的信息,显著提升了开发效率。

对于数值和文本节点的创建也进行了优化。当用户仅输入数字时,系统会智能匹配相关组件,而不再优先显示包含数字的名称。此外,未闭合的文本字面量现在会自动闭合,减少了常见的语法错误。

2. 文档编辑功能强化

文档面板现在支持更丰富的文本编辑功能:

  • 新增了编号和嵌套列表的渲染支持
  • 添加了编辑顶级Markdown元素的按钮
  • 引入了"插入链接"功能按钮
  • 支持通过按钮快速设置文本为粗体或斜体

这些改进使得在Enso中编写和维护文档变得更加便捷和专业。

3. 云文件浏览器优化

云文件浏览器获得了多项增强功能:

  • 首次打开项目时会自动显示并高亮当前设置的文件
  • 在写入新文件的组件中会显示文件名输入框
  • 支持在"写入"组件中创建新目录
  • 允许重命名现有目录
  • 当尝试覆盖现有文件时会显示警告

这些改进使得文件操作更加直观和安全,特别是在处理云端数据时。

标准库重大更新

1. 数据库连接增强

新版本显著扩展了数据库连接能力:

  • 实现了通用JDBC连接支持
  • 为Snowflake连接器添加了密钥对认证支持
  • 新增了通过外部驱动程序的通用JDBC连接功能
  • 为Postgres、SQLite、Snowflake和SQLServer添加了add_group_number方法

这些改进使得Enso能够连接更多类型的数据库,并提供了更灵活的认证方式。

2. 表格处理功能升级

表格处理能力得到多方面增强:

  • 新增Table.offsetColumn.offset方法
  • 实现了Table.generate_rows功能
  • 为Postgres和Snowflake添加了Regex_match支持
  • 改进了Vector.zip方法,新增skip_nothingreport_unmatched参数

特别是对于分隔符文件读取,现在当遇到比预期更多列的行时,可以自动添加额外的列到结果中,提高了数据处理的灵活性。

3. 表达式语言扩展

表达式语言获得了多项新功能:

  • 支持基本算术运算
  • 添加了正则表达式支持
  • 新增pi()e()函数
  • 所有round方法现在使用Rounding_Mode替代use_bankers标志

这些扩展使得在Enso中编写复杂的数据处理逻辑更加方便和强大。

语言与运行时改进

1. 类型系统增强

类型系统获得了多项重要改进:

  • 引入了交集类型和类型检查
  • 实现了交集类型的对称、传递和自反相等性
  • 无构造函数的类型现在可以设为公开
  • 改进了Any实例方法的调度机制

这些改进使得类型系统更加完善和强大,有助于编写更健壮的代码。

2. 语法与错误处理优化

  • 单行内联参数定义现在必须使用括号,否则会报语法错误
  • 改进了命名参数不匹配时的错误信息
  • 操作符块现在应用于整个前导表达式,而不仅仅是行上的最后一个项
  • 注册一个值作为多个托管资源现在会报错

这些改变使得语言更加严谨,有助于减少常见的编程错误。

可视化与用户体验

1. 图表可视化改进

  • 表格可视化现在使用服务器端过滤和排序,支持懒加载,大幅提升了大数据集的性能
  • 禁用了热图和直方图可视化(当前版本)
  • 连接类型的下拉菜单现在使用图标直观展示连接工作原理

2. 节点与连接交互优化

  • 修复了删除节点或连接后错误选择节点的问题
  • 输出端口"加号"按钮在有现有出站连接时会被隐藏
  • 警告和错误消息不再遮挡输出端口,会在悬停时变为半透明
  • 为图形编辑器背景添加了右键上下文菜单

3. 文本编辑增强

  • 支持编辑多行文本字面量
  • 重做栈在与文本字面量交互时不再丢失
  • 修复了颜色选择器对选中节点的问题

部署与性能

  • 原生镜像模式现在默认启用
  • 项目本地库可以添加到polyglot/lib目录
  • 新增进度API

总结

Enso 2025.1.2版本带来了全方位的改进,从核心语言功能到用户界面体验都有显著提升。特别是对数据科学家和分析师而言,增强的数据库连接能力、改进的表格处理功能和扩展的表达式语言使得数据处理工作更加高效。同时,文档编辑和组件浏览器的优化也大大提升了开发体验。

这个版本标志着Enso在成为数据科学和可视化编程领域领先工具的道路上又迈出了坚实的一步。无论是新手还是资深开发者,都能从这个版本中获得更好的编程体验和更高的工作效率。

登录后查看全文
热门项目推荐

热门内容推荐

最新内容推荐

项目优选

收起
openHiTLS-examplesopenHiTLS-examples
本仓将为广大高校开发者提供开源实践和创新开发平台,收集和展示openHiTLS示例代码及创新应用,欢迎大家投稿,让全世界看到您的精巧密码实现设计,也让更多人通过您的优秀成果,理解、喜爱上密码技术。
C
52
461
kernelkernel
deepin linux kernel
C
22
5
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
349
381
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
7
0
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
131
185
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
873
517
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
336
1.09 K
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
179
264
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
608
59
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
83
4