写点什么

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:031125
用户头像

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

关注

评论

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

你不可不知的开源组织详解,这里都有!

Apache IoTDB

信通院《智能化数据管理工具能力要求》标准发布,Aloudata 受邀参编!

Aloudata

DataOps 数据管理

Pencils Protocl全新品牌升级,如何构建 LRT 赛道新范式?

股市老人

中小企业上云如何选?华为云这款帮你一键完成性能飞跃提升

YG科技

全新品牌升级的 Pencils Protocl,构建 LRT 赛道新范式

加密眼界

一文读懂Pencils Protocol Season 3:多重收益实现一鱼多吃

加密眼界

2024 年 5 个 GO REST API 框架

幂简集成

Go REST API

Python实现大麦网抢票的四大关键技术点解析

我再BUG界嘎嘎乱杀

Python 编程 后端 软件开发 抢票

伍继智能:基于 EMQX Cloud 实现智慧电力运维平台

EMQ映云科技

Pencils Protocol Season 3 现已开启,多重收益一览

股市老人

云耀X实例:下一代柔性算力新物种,双倍性能加速跃级体验

YG科技

Pencils Protocol Season 3 现已开启,一鱼多吃最大化收益

石头财经

Pencils Protocol Season 3 现已开启,多重收益一览

BlockChain先知

Node下调试better-sqlite3

麦兜

新品牌升级的 Pencils Protocl,如何构建 LRT 赛道新范式?

石头财经

基于 Milvus + LlamaIndex 实现高级 RAG

Zilliz

Milvus Zilliz llamaindex rag

一文读懂Pencils Protocol Season 3:多重收益实现一鱼多吃

西柚子

2024-05-22:用go语言,你有一个包含 n 个整数的数组 nums。 每个数组的代价是指该数组中的第一个元素的值。 你的目标是将这个数组划分为三个连续且互不重叠的子数组。 然后,计算这三个子数

福大大架构师每日一题

福大大架构师每日一题

全新品牌升级的 Pencils Protocl,如何构建 LRT 赛道新范式?

股市老人

助力企业数智化上云跃级提升,云耀X实例柔性算力一直加速一直快

YG科技

Python Web Service开发及优化

我再BUG界嘎嘎乱杀

Python nginx flask web服务

智谱AI、OpenAI、谷歌等16家顶级AI公司签署前沿人工智能安全承诺

技术研究院

Pencils Protocl全新品牌升级,如何构建 LRT 赛道新范式?

BlockChain先知

Moonchain 随柏林市长访问东京,并与三菱和富士通等建立合作预期

股市老人

Pencils Protocol Season 3 现已开启,一鱼多吃最大化收益

股市老人

用python优雅实现:序列A依照序列B排序

我再BUG界嘎嘎乱杀

Python 编程 后端 软件开发

助力中小企业一键上云部署,新一代柔性算力云耀X实例展实力

YG科技

全新品牌升级的 Pencils Protocl,构建 LRT 赛道新范式

西柚子

Logstash 业务日志接入可观测最佳实践

观测云

Logstash

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