30周年之际,Ruby语言带着全新的4.0版本,给开发者送上了年终大礼。
(相关资料图)
增隔离命名空间新的JIT编译器,还有重设计的Ractor API,这款开源语言迎来一系列更新。
Ruby是一种开源的面向对象脚本语言,在20世纪90年代由日本人松本行弘开发,遵守GPL协议和Ruby License。
其主要特性就是简单快捷,变量没有类型、任何东西都有值,不需要注释就可以读懂。
对于这次更新,网友们给予了高度评价,表示要是没有Ruby更新,连圣诞节都不完整了。
那么,30岁的Ruby,这次都迎来了哪些更新呢?
全新编译器ZJIT
Ruby 4.0中,Rails at Scale团队正式推出了名为ZJIT的全新即时编译器(Just-In-Time Compiler)。
这是一种一种传统的方法级编译器,核心架构采用了静态单赋值(SSA,Static Single Assignment)形式的中间表示,旨在突破现有YJIT编译器的性能上限。
传统的Ruby解释器是逐行执行代码,效率较低,而JIT编译器则是将热点代码转换成机器码。
其中,YJIT的设计理念聚焦于局部,它将编译视域限制在微小的基本块(Basic Block)中。
这种策略虽然能快速生成机器码并降低内存占用,但由于缺乏对代码整体结构的认知,难以进行跨越整个方法的全局优化。
相对而言,ZJIT引入了SSA中间表示技术。在这种架构下,编译器会分析完整的方法体并构建全局数据流图,确保每个变量在逻辑上仅被赋值一次。
这种全局分析能力赋予了ZJIT执行常量折叠(在编译期直接计算固定结果)和死代码消除(移除无效计算步骤)等深度优化的潜力,这些都是YJIT受限于架构而难以高效实现的。
在处理Ruby的动态类型特性时,两者也采用了截然不同的路径。
YJIT倾向于通过版本化机制保留多条代码路径以适应不同的变量类型。
ZJIT则采用了侧向退出(Side-exits)机制。
它会基于当前类型稳定的假设生成单一且激进优化的机器码,一旦运行时检测到变量类型不再符合预期(例如整数变为字符串),程序会立即触发侧向退出,终止当前优化代码的执行并安全回退到解释器。
这种机制允许编译器在假设成立的前提下剥离大量冗余检查。
尽管ZJIT目前的综合性能尚未完全超越成熟的YJIT,但其基于SSA的严谨架构可以突破局部优化带来的瓶颈,为Ruby在未来实现更复杂的代码分析和更高的峰值性能奠定了基础。
隔离命名空间Ruby::Box
Ruby::Box是一个专门用于隔离代码执行环境的容器类,目的是解决长期困扰Ruby开发者的“全局污染”问题,并为构建更安全、模块化的应用提供原生支持。
这涉及到Ruby的一个核心特性——开放类(Open Class)。
在传统的Ruby环境中,任何代码都可以随时修改系统内置的类(例如给String类添加新方法),这种行为被称为“猴子补丁”(Monkey Patching)。
虽然这种特性赋予了语言极大的灵活性,但在大型项目中,如果不同的第三方库同时修改了同一个类,就会引发严重的命名冲突。
Ruby::Box通过彻底的命名空间隔离(Namespace Isolation)解决了这一难题。
当代码在某个Box中运行时,它对内置类的修改、定义的全局变量或顶层常量,都被严格限制在当前Box的内部作用域中,完全不会“泄漏”到外部环境或其他Box中。
从架构设计的角度来看,Ruby::Box被定义为Module的子类,这意味着它本质上也是一种模块。
在Ruby4.0的运行模型中,所有的用户主程序默认运行在名为“main”的Box中。而当开发者通过Ruby::Box.new创建新的隔离环境时,系统会基于包含最原始、纯净Ruby环境的“root”Box进行复制。
为了确保高性能,这一过程采用了写时复制(Copy-on-Write)技术,这使得创建新Box的内存开销极低,同时保证了各个环境之间的独立性。
此外,Ruby::Box还提供了文件级的作用域控制能力。通常情况下,一个.rb文件的加载和执行可以被限定在一个单一的Box中,这意味着该文件内的所有方法定义和常量解析都在该Box的上下文中完成。
这对于开发插件系统、多租户应用或者需要运行不可信代码(沙箱环境)的场景具有革命性意义。它允许开发者在保留Ruby动态特性的前提下,构建出更加健壮、安全且易于维护的系统架构。
重设计的Ractor API
在Ruby4.0的更新中,为了解决Ruby3.x时代Ractor通信中存在的“多路通信混乱”和“消息窃取”等诸多痛点,Ractor API也迎来了一次重大的重构。
其核心在于引入了Ractor::Port机制,让并行编程变得更加直观和安全。
在早期版本中,Ractor主要依赖“推”(Push)和“拉”(Pull)两种模式。当多个Ractor向同一个目标发送消息时,接收方往往难以分辨消息的来源,就像所有信件都被塞进了一个没有标签的公共邮箱。
而在新版设计中,Ractor::Port充当了专用信道的角色,任何人都可以向这个端口发送消息,但只有端口的创建者才有权从里面取出消息。这种“多对一”的单向通道设计,完美契合了Actor模型的语义。
具体的改进主要体现在三个方面:
首先是消息的定向投递与安全性。通过Ractor::Port,消息不再是广播式的混乱投递,而是精准地发送到指定的端口。这彻底杜绝了“消息窃取”现象,即A模块发送的消息意外被B模块的接收函数截获。
其次是摒弃了复杂的同步原语。新版本废弃了Ractor.yield和Ractor#take等容易引发死锁和竞争条件的旧方法,转而使用更清晰的Ractor#send配合端口机制。
同时,为了处理Ractor的生命周期,引入了与线程类似的Ractor#join(等待结束)和Ractor#value(获取返回值)方法。
特别是Ractor#value,它设计为只能被一个Ractor调用一次,这种限制允许系统在不复制对象的情况下安全地传递返回值,极大地提升了效率。
最后是高效的多路复用。新的Ractor.select方法经过重写,现在支持同时监听多个Ractor::Port。
当任何一个端口收到消息时,select会立即返回该端口和对应的消息。这比传统的轮询机制要高效得多,并且解决了过去在复杂并发场景下难以协调多个数据源的问题。
总的来说,Ractor::Port的引入通过更轻量级的实现和更严谨的通信契约,为Ruby开发者提供了一套既符合直觉又具备高性能的并发工具箱。
其他更新
除了上面三个比较大的方面,这次Ruby 4.0还有一系列其他更新:
- 语法更符合直觉:逻辑运算符现在可以写在换行后的行首,不再强制要求放在上一行行末;
- 核心库“转正”:Set和Pathname从标准库升级为核心库,开发者无需再手动编写require语句;
- 调试体验升级:当发生参数传递错误时,ErrorHighlight功能现在不仅会高亮显示“调用出错”的代码行,还会同时显示“方法定义”的代码行,方便开发者快速对照排查;
- 紧跟Unicode标准:完整支持Unicode17.0标准,能原生识别和处理最新的Emoji17.0表情符号;
- 更严格的空值检查:为了防止空值意外转换成空数组从而掩盖代码逻辑中的Bug,nil对象不再响应to_a方法;
- 性能底层优化:Class.new(创建新类)的速度在所有场景下都得到了显著提升;垃圾回收机制(GC)现在能独立管理不同大小的内存池,有效降低了内存占用;
- 更灵活的数组查询:Array类新增了rfind方法,可以高效地从数组末尾开始向前查找符合条件的元素;
- 自定义对象展示:Kernel#inspect方法新增了定制功能,开发者可以通过定义instance_variables_to_inspect来决定在打印对象调试信息时显示哪些变量,避免输出过多无关信息。
那么,你觉得更新后的Ruby,有没有更好用呢?
[1]https://www.ruby-lang.org/en/news/2025/12/25/ruby-4-0-0-released/[2]https://docs.ruby-lang.org/en/master/Ruby/Box.html[3]https://railsatscale.com/2025-12-24-launch-zjit/[4]https://dev.to/ko1/ractorport-revamping-the-ractor-api-98
凡注有"三板富 | 专注于新三板的第一垂直服务平台"或电头为"三板富 | 专注于新三板的第一垂直服务平台"的稿件,均为三板富 | 专注于新三板的第一垂直服务平台独家版权所有,未经许可不得转载或镜像;授权转载必须注明来源为"三板富 | 专注于新三板的第一垂直服务平台",并保留"三板富 | 专注于新三板的第一垂直服务平台"的电头。
- Ruby 4.0正式发布!推出全新编译器+原生隔离环境
- 黄金积存与黄金ETF哪个费率更划算?
- 孩子在学校遭侮辱,如何应对 热资讯
- 黄河古贤水利枢纽工程导流洞贯通 每日热讯
- 有色锌TOP10排行榜:12月26日股票成交额排名一览_报道
- 腈纶哪个公司好(2025年12月26日市值排行榜) 快播报
- 2026年上半年商业航天行情堪忧
- 广东新能源题材名单整理,查收一下!(2025/12/26)_新消息
- 今日热搜:霍启刚郭晶晶带娃买蜜雪冰城!奶茶先给爷爷喝,这家风才是真豪门
- 焦点!财报观察:建工建材概念股毛利润排行榜(三季度)
- 每日动态!国家卫健委:全国4845所二、三级公立综合医院均能提供儿科服务
- 走过2025丨每个人都是主角 今日讯
- 丰田租赁“全周期”服务上新,附加保险权益,主打用车无忧!
- 实时焦点:价格周报|冬至过后生猪需求减少 价格下滑
- 深圳市闻庆日用品有限公司成立 注册资本65万人民币|每日视点
- 当前热点太极集团:股东拟实施吸收合并 公司控制权保持稳定
- 热门看点:“太空小鼠”返回地面后孕育6只宝宝,它们有着更强保护欲
- 康美药业:12月26日获融资买入2461.05万元 今日热文
- 5万公里 中国高铁运营里程新突破
- 地塞米松上市龙头,你知道多少?(2025/12/26) 每日速递
- 赛前“读城”充电,金牌导游“李白”上线!乒超运动员在南京解锁文化“副本”
- 2025年5G设备龙头股梳理,请查阅!(2025/12/26)
- 央行:实施好适度宽松的货币政策 把促进经济稳定增长、物价合理回升作为货币政策的重要参考
- 今年前11个月我国交通出行人数达618.7亿人次_新动态
- 因商标权权属、侵权纠纷,水井坊起诉福州台江区锦昇食品商行
- 今日关注:开普云“蛇吞象”收购金泰克:标的公司业绩波动大 连环资本运作引争议
- 上金所再发通知!提醒做好2026年元旦期间市场风险控制 时快讯
- 科技部:开展创新积分制政策实施“揭榜挂帅”
- 【安心购彩守护行动宣传周】“合买彩票,经得起人性的考验吗?”
- 佛山市禅城区悦创建材店(个体工商户)成立 注册资本1万人民币|重点聚焦
- 2024年我国GDP最终核实为1348066亿元-当前聚焦
- 大国重器砺剑深蓝 福建舰首次海上训练彰显硬核实力
- 今日热文:马竞2025年进112球,创西蒙尼执教球队14年来自然年进球数纪录
- 焦点热文:午评:周线收官,下午回踩之后小幅反弹
- 速读:云南两条高速公路今天通车运营
- 濂溪区冯记重庆鲜面店(个体工商户)成立 注册资本10万人民币
- 广东宏大:12月25日持仓该股ETF资金净流入363.74万元,3日累计净流入62.82万元
- 快看点丨2025年!3只中成药龙头股名单(建议收藏)
- CBA动态:丁伟任总教练,天津主帅周金利离职,琼斯有望加盟福建
- 今日热议:惠及11个停车场 可免费领取 元旦来武林商圈停车有福利
- 工贸部和动物渔业资源部探讨强化苏丹畜牧业价值链
- 宁夏:民政数字化“托”起大民生
- 【环球财经】吉尔吉斯斯坦总统:吉经济已进入稳定高质增长轨道
- 有机涂层板概念股票是哪些,附:上市公司名单(2025/12/25)
- 有色钒龙头股票:共2家,速来围观!(2025/12/25)
- 中广核广东太平岭核电厂1号机组启动首次核燃料装载|焦点热闻
- 大众公用:截至2025年9月30日,公司直接及间接持有大众交通26.87%的股份 快消息
- 头部硅片企业今日大幅上调报价?硅片厂商人士:受上游硅料涨价影响所致 当前焦点
- 市场监管总局:针对“南极磷虾油”问题将强化食品委托生产监管
- 税收数据显示:我国数实融合发展态势良好
- 广州新塘站今年累计发送旅客达445万人次 速递
- 焦点热讯:当圣诞遇见个人养老 华夏基金养老投教焕新
- 格力博(301260.SZ):与智元机器人的合作正稳步推进,核心聚焦美国高端市场的场景适配与技术验证
- 新消息丨机器人ETF鹏华(159278)涨超3.7%,机器人企业迎来并购潮
- “没干什么大事,都是我应该做的”(援手)
- 当前焦点!生意社:12月25日镇江联成苯酐报价上涨
- 四川一女子因医生优先救治重症患者,嫌等待时间过长扇医生耳光后逃逸,警方:拘留5日_时快讯
- 微头条丨2025年12月25日山西潞安化工聚酯级乙二醇起拍价3380元/吨
- 宁德时代与思源电气签署储能合作备忘录 目标合作电量50GWh
- 神秘“AI小屋”落成,面向崇明广大未成年人 新动态
- 西安:“大唐之旅”焕新升级 焦点讯息
- 每日看点!《时代》杂志评选100部最伟大的长篇小说
- 播报:古老秦腔 创新“出圈”(神州看点·古调新声)
- 热推荐:志高机械:12月24日获融资买入81.35万元
- 每日观点:A股:二只上海6G股票龙头股先收藏起来(2025/12/24)
- WCBA|北京首钢园女篮主场意外不敌石家庄英励|今头条
- 中岩大地:公司按照规定严格履行信息披露义务
- 个股行情日常战斗激烈,赚钱效应一般
- 海南海药:公司与通用技术集团无股权关系
- 小熊电器: 关于控股股东的一致行动人减持股份预披露公告-播报
- 力合科创:2026年1月9日召开2026年第一次临时股东会 最资讯
- 今日热文:《网售工业产品质量安全专项治理行动方案(2025—2027年)》印发
- 济源五龙口镇河头幼儿园成功入选第三批河南省食育试点校(园)
- 每日消息!欧元兑日元或反弹至历史高点184.95,14日相对强弱指数62.20支撑看涨动能
- 第三季度家居家私概念上市公司排行榜|毛利润榜单
- 精选!韩国三星电子一研发楼冒烟 未造成人员伤亡
- PriceSeek提醒:华鲁恒升硫酸铵出厂价下调_每日热文
- 生意社:12月24日江苏地区苯酐市场走势强势盘整-每日观察
- 四川长虹等“一种岗位素质能力提升路径的生成方法及装置”专利获授权 每日聚焦
- “独好优品”首发仪式暨小红花家乡公益行启动仪式在会昌举行
- 景东小李废品收购站(个体工商户)成立 注册资本1万人民币-即时
- 观察:你的2026跨年计划,定了吗?
- 焦点滚动:绵阳市高新区大石头制氧设备经营部(个体工商户)成立 注册资本10万人民币
- 金融机具排名靠前的股票有哪些?(12月24日成交额榜)-焦点
- 涨停雷达:氢能装备+热电运营+无锡国资+数据中心 华光环能触及涨停
- 12月23日动力煤CCI指数环比下降-速读
- 90余只货基七日年化收益率跌破1% 当前焦点
- 合肥市图书馆“梦想图书馆”走进旌德兴隆镇中心小学|今日播报
- 【ETF动向】12月23日建信深证基本面60ETF基金跌0.19%
- 普利制药索赔迎来重大进展,投资者一审胜诉
- 【焦点热闻】不是萨林杰,不是奎因,威金顿赛后夸广东一人:他是很优秀的队员
- 【独家】德力股份:公司控股股东将变更为翼元航空
- 合肥芯成芯创电子科技有限公司成立 注册资本10万人民币-每日速递
- 243个事项,南京企业群众可“在家办”
- 热点!佰维存储:完成回购0.2998%公司股份
- 【聚看点】宇通重工:公司海外市场正在持续扩展
- 12月23日顺酐产业链情报 每日讯息
- CCTV5直播山东男篮VS广东,高诗岩PK徐杰,邱彪引争议,杜锋教学
- 上市公司通信模块企业龙头:共5家!(2025/12/23)|观点
- 12月23日涨停复盘:68只股涨停 鹭燕医药5连板
公司
焦点
精彩推送
- 义利天下丨义乌老板娘,把中国无人机铺向世界版图 精彩看点
- 快讯:外交部:再次提醒中国公民暂勿前往柬泰边境地区
- N纳百川涨超244% 触发临停
- 每日热闻!中国诚通、中国建材集团成立企管合伙企业,出资额23亿
- 每日快讯!生意社:12月23日河北正元液氨报价下调
- 东吴证券:给予三花智控买入评级|每日报道
- 每日快看:这一概念又飙涨,封关红利持续释放!最新筹码大幅集中股名单发布
- 俱乐部人士:阿洛伊西了解浙江队,对中超各队特点分析很透彻-今亮点
- 柬内政部称一名中国公民在柬泰冲突中受伤
- 酒价内参12月23日价格发布 洋河梦之蓝M6+上涨5元_今头条
- 自己卷自己!12306显示广州-湛江列车打折了,从200多降到131元…-新资讯
- 12月23日生意社柴油基准价为6084.80元/吨-讯息
- 跌破1499!飞天茅台“飞不动了”
- 净利润增速第一的青岛银行中期分红又要泡汤了?
- 为什么总有人说“上班以后越来越胖”?
- 保诚(02378.HK)12月19日耗资977.6万英镑回购85.6万股|信息
- 焦点快播:减重近30公斤,营养干预全程护航,她三次胚停后终于成功妊娠
- 支原体概念企业,名单大盘点!(2025/12/22)
- 顺丰不接抖音退货了
- PriceSeek重点提醒:亚通石化石油焦报价上调130元/吨
- 中远海控(01919)12月22日斥资5660.34万港元回购415万股-快播报
- 科贝:滕森可能伤缺3个月,弗里克将与德科讨论是否买中卫-每日时讯
- 视焦点讯!新能源概念龙头一览(2025/12/22)
- 多家优衣库门店,被曝偷拍!
- 消息!网红医生“烧伤超人阿宝”被举报,补缴84万元税款,本人回应:没有偷税漏税;医生艾芬称将继续举报
- 华西集团投资公司更名为产业投资公司 注册资本增至50亿元|焦点滚动
- 快看点丨黄金ETF与实物黄金投资该如何选?
- 潼关黄金午后涨逾6% 拟2.6亿元收购陇鑫建设发展全部股权
- 广东鸿图:公司严格按照监管规则合法合规履行信息披露义务,不存在应披未披事项 热点聚焦
- 垃圾处理十强企业名单(三季度概念股票每股收益排名) 焦点日报
- HDI股票龙头股共四只,你应该知道!(2025/12/22)_焦点热议
- 涨停雷达:两岸融合+漳州国资+新型城市服务商 漳州发展触及涨停
- PriceSeek重点提醒:2025年11月丁腈橡胶出口环比降12.27%
- 12月22日连豆粕早盘下跌
- 万通发展控股股东嘉华控股所持全部股份被轮候冻结|重点聚焦
- 私募巨头Permira与华平投资牵头收购Clearwater(CWAN.US) 估值达84亿美元 今日快看
- 消息炸裂,这个方向多看!(附策略)
- 今日热议:围绕科技主线 公募定增相关投资目前浮盈逾百亿元
- 微资讯!百度旗下基金入股开物纪智能科技公司
- 种业上市企业龙头股(2025/12/19)
- 观点:年底最难做时期即将过去,但还需熬一两周
- 不止汤圆饺子!广西人的温暖冬至,还藏着多少香甜美食?
- (年终特稿)群“超”并起 中国体育“民间力量”激发新活力
- 天天资讯:电影《疯狂动物城2》票房破38亿元
- 热消息:高效絮凝剂商品报价动态(2025-12-21)
- 机构评级|西部证券给予科沃斯“增持”评级 未给出目标价
- 受天气影响,安徽、湖北等地多个路段封闭管控-热推荐
- 防护服龙头,2只龙头请收藏(2025/12/19)-每日看点
- 实时:西藏拉鲁湿地获“世界海拔最高的城市天然湿地”称号
- 中国女子围棋名人战:周泓余夺得“名人”头衔
- 就业节气海报|冬至:复盘蓄能,谋启新程
- 数九寒天将至 温暖守护先行
- 今日热门!我国成功发射通信技术试验卫星二十三号
- 私募基金存续规模达22.09万亿元|新资讯
- 煤矿前十排名(2025年12月19日相关企业成交额排名前十名)
- 冲击“Physical AI 第一股”!五一视界(06651)与摩尔线程(688795.SH)深度合作 构建下一代物理AI仿真体系|讯息
- 王力宏演唱会上!机器人高难度空翻获马斯克称赞
- 爆冷,雷霆赛季第三败!赛后亚历山大先一步退场爱德华兹接受采访_实时焦点
- 新华医疗拟预挂牌转让湖北新华医疗60%股权及相关债权
- 今日热门!化肥TOP10排行榜:2025年12月19日股票成交量排名一览
- 贵阳,2025“年度城市”! 当前资讯
- 中国软件600536股票分红(2025年12月20日)
- 中关村科技租赁:拟开展售后回租交易 转让价款4300万元 新要闻
- 每日讯息!华新精科:12月19日获融资买入311.84万元
- 【独家】A股生物制药概念龙头,名单收好!(2025/12/19)
- 观热点:上期所原油期货夜盘收涨1.05%,沪银主力合约收涨3.02%
- 前沿资讯!梁伟铿/王昶总决赛小组赛2胜1负
- 热推荐:湘电股份:公司开发的辅助起动航空永磁发电系统已完成样机研制
- 焦点资讯:专家观点:“耐心资本”推动投资结构向新质生产力集中
- 视频|朋友圈吉语转盘抽奖,时光邮局写五年期许,扬子晚报的宠粉热情,你感受到了吗?
- 热点聚焦:康养文旅驱动粤桂协作 八步区探索乡村振兴新路径
- 南卫协回应“南京导航集体失灵”:GNSS卫星信号受到临时干扰压制
- 渤海银行:完成发行35亿元金融债券_焦点精选
- 家族信托规模前十榜单:规范发展下的头部机构实力比拼
- 破发股ST思科瑞跌4% 2022上市募13.88亿中国银河保荐
- 际华集团:公司圆满完成国家历次军警被装重大专项保障任务,具备全产业链被装产品生产保障能力
- 茉莉花开 幸福课堂 | 新洲村开展 “迎冬至,包饺子”主题实践活动
- 百度旗下基金等入股开物纪智能科技公司
- 报道:江门市精印达设计制版有限公司成立 注册资本100万人民币
- 近11战1胜10负!哈登缺阵快船惨败雷霆 近两战合计净负39分
- 北京市举行涉台公共服务“走流程”成果展示
- 今日热议:两部委联合印发《国家鼓励发展的重大环保技术装备目录(2025年版)》
- 快播:北京地铁17号线中段即将开通 届时17号线将实现全线贯通
- 当前热议!北京雪地惊现蚊子爬行,蚊子能抗寒了?
- 12月19日生意社菜籽粕基准价为2440.00元/吨
- 男孩上学途中坠河 众人接力救援
- 头条:周大福再涨价!一条金手链将多收9000元
- 不装了!公开支持保罗+曝光快船混乱内幕,科林斯,你大胆啊-焦点热讯
- 【独家焦点】[快讯]振江股份:振江股份关于股东自愿承诺不减持公司股份
- 10年石墨大梦一场空,大富科技无奈转让
- 焦点!一文读懂A股抗流感上市公司龙头股(2025/12/18)
- 卫宁健康董事高管减持计划期满,王利减持37.5万股
- 因侵害外观设计专利权纠纷,杰克科技起诉台州市豪森缝纫机厂(普通合伙)
- 四方新材:截至目前公司未涉及实际控制人或控股股东的股权转让事宜 聚焦
- 新华指数|12月18日山东港口大商中心钢坯、热轧C料价格微幅上涨|焦点讯息
- 冰天雪地,如何乐享户外运动|今亮点
- 青龙管业(002457.SZ):签订5526.7万元买卖合同_精选
- 凌振中获批担任泰康人寿贵州六盘水中心支公司总经理
- 每日播报!王石太难了!为了配合田朴珺拍新别墅内景,把头发都染成黑色的了
- 巨力索具:已为国内可回收火箭提供关键产品支持