写点什么

Mozilla 众项目勾画出网页脚本的未来

  • 2007-08-14
  • 本文字数:968 字

    阅读完需:约 3 分钟

以 Mozilla 为中心的 5 个不同的子项目最近新话题不断。它们都是非常有实力的项目,预示着浏览器脚本语言未来的发展方向。可以看以下的介绍,来熟悉一下这些项目:

SpiderMonkey 是 Mozilla JavaScript 引擎的代号。它是第一个 Javascript 引擎,Netscape 浏览器就用了它,所以并不新鲜。

Tamarin 是 Adobe 去年11 月时免费捐献给Mozilla 的ActionScript 引擎。Tamarin 是个即时(Just-In-Time)编译器,它可以把Javascript 解释成机器语言,并具有更好的垃圾回收机制。同时它也支持ECMAScript 3,并有希望会支持ECMAScript 4(JS2)规范。

ActionMonkey 正在集成 SpiderMonkey 和 Tamarin 两个项目。二者集成后的产品将会成为 Mozilla 2 平台的引擎。这将会给 Firefox 和其它基于 Mozilla 的应用带来性能上的改进,并兼具 Tamarin 支持最新规范的优点。

ScreamingMonkey 是让 Tamarin 引擎运行在非 Mozilla 浏览器上的项目。这项目让其它的浏览器(首先是 IE)也能得到 Tamarin 的好处。从此能让其它浏览器共享一个同一起源、快速、标准的引擎。

IronMonkey 项目希望能建立微软通用中间语言(Microsoft’s Common Intermediate Language,CIL)和 ActionScript 字节码(ActionScript Byte Code,ABC)之间的映射关系。这项目可以让用 IronPython 和 IronRuby 编写的程序运行于 Tamarin 之上。当与 ActionMonkey 和 ScreamingMonkey 结合时,就能让 Ruby 或 Python 的代码运行在浏览器上。

所有这些项目确实使我们对浏览器脚本语言的前景感到兴奋。我们期望着各方面的改进,如性能方面的改进,ECMAScript 4 的支持,更少的浏览器兼容技巧(至少在脚本引擎上如是),支持不同的脚本语言。虽然这个前景令人振奋,但并不是每一个人都认同这条道路,至少不是每个人都赞成选择 Tamarin 作为虚拟机。其中有些反馈谈到也许 Java 虚拟机或者是 Mono 是更好的选择。Java 现在已经支持 JRuby 和 Jython,解决了支持“多种不同的语言”的问题,在 Java 虚拟机上运行的 Rhino 引擎也有不错的性能表现。Mono 也同样满足这两个条件。 John Resig 总结了选择 Tamarin 背后的原因:

……简而言之:非技术的原因是,选择 Tamarin 要比选择那些有知识产权和许可证问题的要好;技术上的原因则与编译速度、文件大小、内存需求量有关。

查看英文原文: Mozilla Paints the Future of Web Scripting with Monkeys

2007-08-14 12:03945
用户头像

发布了 27 篇内容, 共 10.6 次阅读, 收获喜欢 15 次。

关注

评论

发布
暂无评论
发现更多内容

使用高斯Redis实现二级索引

华为云开发者联盟

数据库 后端

开源重器!九章云极DataCanvas公司YLearn因果学习开源项目即将发布!

九章云极DataCanvas

人工智能 开源项目 #Github 因果学习 #工具包

tauri+vue开发跨操作系统的桌面应用

字母哥哥

rust Vue tauri

Java 6 压缩字符串(Compressed String)

HoneyMoose

2022如何评估与选择低代码开发平台?

优秀

低代码 低代码平台

九章云极DataCanvas公司摘获「第五届数字金融创新大赛」最高荣誉!

九章云极DataCanvas

创新 数字金融 九章云极DataCanvas

Linux的小知识-curl命令

技术小生

Linux curl 7月月更

九章云极DataCanvas公司获评36氪「最受投资人关注的硬核科技企业」

九章云极DataCanvas

人工智能 投资人 36氪 九章云极DataCanvas 硬科技

浅尝不辄止系列之试试腾讯云的TUIRoom(上)

为自己带盐

7月月更 TUIRoom

应用实践 | 数仓体系效率全面提升!同程数科基于 Apache Doris 的数据仓库建设

SelectDB

数据库 数据仓库 架构演进 Doris

大话云原生之灰度发布篇-从步行到坐缆车的自动化服务升级

字母哥哥

灰度发布 #Kubernetes#

微服务远程Debug,Nocalhost + Rainbond微服务开发第二弹

北京好雨科技有限公司

Kubernetes 云原生 PaaS 容器云 rainbond

博睿数据入选《2022爱分析 · IT运维厂商全景报告》

博睿数据

博睿数据 性能监测 智能运维AIOps

鸿蒙智能家居【1.0】

坚果

HarmonyOS OpenHarmony 7月月更

客户案例|华律网,通过观测云大幅缩短故障定位时间

观测云

docker镜像分层原理及容器写时复制

字母哥哥

Docker 镜像

kafka批量发送数据源码解析

字母哥哥

kafka 消息队列 源码解读

消息队列与快递柜之间妙不可言的关系

字母哥哥

消息队列

Kubernetes DevOps CD工具对比选型

行云创新

Docker DevOps 云原生 k8s pod

低代码助力企业数字化转型会让程序员失业?

行云创新

程序员 云原生 软件开发 低代码 数字化转型

让这个 CRMEB 单商户微信商城系统火起来,太好用了!

CRMEB

Meta Force原力元宇宙系统开发佛萨奇模式

薇電13242772558

智能合约

Java 代码中数字中间带下划线是几个意思

HoneyMoose

Java 9 缩小字符串( Compact String)

HoneyMoose

【Unity Shader】插入Pass实现模型遮挡X光透视效果

萧然🐳

游戏开发 Unity 7月月更 shader

如何选择合适的自动化测试工具?

禅道项目管理

工具 自动化测试

RISCV64

贾献华

7月月更

小程序多种开发方式对比-跨端?低代码?原生?还是云开发?

字母哥哥

小程序

行业案例|数字化经营底座助力寿险行业转型

Kyligence

数字化转型 Kyligence

API、ETL、ESB/MQ 已成明日黄花?时代为何需要一个全新的实时数据架构?

tapdata

开源 数据集成 实时数据 Tapdata架构 实时数据平台

AIRIOT助力城市管廊工程,智慧物联守护城市生命线

AIRIOT

低代码 物联网 低代码,项目开发

Mozilla众项目勾画出网页脚本的未来_Java_James Estes_InfoQ精选文章