写点什么

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

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

关注

评论

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

漏洞扫描的种类

穿过生命散发芬芳

漏洞扫描 11月月更

华为云从入门到实战 | AI云开发ModelArts入门与WAF应用与部署

TiAmo

华为 华为云 云开发 11月月更

为了面试字节,熬夜肝完这份Redis笔记后,我终于“硬”了一回

小小怪下士

Java redis 程序员 面试

HEM亮相华为HDC2022开发者大会,助力企业数字化办公

最新动态

【愚公系列】2022年11月 微信小程序-app.json配置属性

愚公搬代码

11月月更

设计千万级学生管理系统的考试试卷存储方案

小虎

架构训练营

一次遍历导致的崩溃

小小怪下士

Java 程序员

全网首次公开!阿里巴巴分布式系统设计核心原理技术内幕

程序员小毕

程序员 架构 面试 分布式 程序人生

架构误区系列(Architecture Pitfall)

agnostic

构架师

架构误区系列1:简单依靠扩容解决容量问题

agnostic

架构误区

架构实战营模块4作业

冷夫冲

架构实战营

Verilog语法入门

芯动大师

Verilog 11月月更 组合逻辑电路

设计模式之美-面向对象

GalaxyCreater

设计模式

架构实战营模块四

Geek_408c99

极客时间架构训练营模块四作业

李晨

架构

零基础入门网络安全,收藏这篇不迷茫【2022最新】

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

【LeetCode】三角形最小路径和Java题解

Albert

算法 LeetCode 11月月更

SAP UI5 barcode 控件的 feature 检查探测机制单步调试 - checkCordovaInIframe

汪子熙

JavaScript Fiori SAP UI5 ui5 11月月更

Vue-VueRouter使用

格斗家不爱在外太空沉思

vue.js VueRouter 11月月更

从0制作一个web端网易云

格斗家不爱在外太空沉思

vue.js axios 11月月更

云栖探馆!云小宝首秀遇上老司机小龙,猜猜谁赢了?

OpenAnolis小助手

龙蜥社区 2022云栖大会 小龙 云小宝 开源活动

数据库系统的组成

阿泽🧸

数据库 11月月更

uniapp-如何在邀请页面生成海报

格斗家不爱在外太空沉思

vue.js uniapp 11月月更

使用TSDB自动检测时序数据的异常情况

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

小白入门:什么是CURD?

wljslmz

数据库 sql crud 11月月更

【云原生】Nacos-TaskManager 任务管理的使用

石臻臻的杂货铺

云原生 nacos 11月月更

华为开发者大会HDC2022:HMS Core 持续创新,与开发者共创美好数智生活

HarmonyOS SDK

HMS Core

随机森林-分类森林

烧灯续昼2002

Python 机器学习 算法 随机森林 11月月更

【超干货】阿里内部 Spring Boot 笔记,全硬核知识点

程序知音

Java spring 架构 springboot 后端技术

披荆斩棘成功上岸美团、字节、华为,分享Java面经及答案

程序知音

Java java面试 后端技术 Java面试八股文

Go语言入门14—Channel

良猿

Go golang 后端 11月月更

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