写点什么

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

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

关注

评论

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

从零到一,教你搭建「CLIP 以文搜图」搜索服务(二):5 分钟实现原型原创

Zilliz

机器学习 深度学习 搜索引擎

华为云WeLink直播助力高校毕业典礼:这届毕业生,我们云上嗨

科技云未来

万物皆可集成系列:低代码对接企企云实现数据集成

葡萄城技术团队

基于 xbot 实现微信关键词自动回复

Hanson

微信 微信机器人 自动回复

k8s自定义controller三部曲之一:创建CRD(Custom Resource Definition)

程序员欣宸

Kubernetes k8s 9月月更

实践分享!GitLab CI/CD 快速入门

北京好雨科技有限公司

企业号九月金秋榜 Kuberetes

设计模式的艺术 第二十章中介者模式练习(设计一套图形界面类库,包含若干预定义的窗格(Pane)对象,如TextPane、ListPane等,窗格之间不允许直接引用。基于该类库的应用由一个包含一组窗格的窗口(Window)组成,窗口协调窗格之间的行为)

代廉洁

设计模式的艺术

博睿数据携手亚马逊云科技,助您开启全链路可观测之旅

博睿数据

可观测性 智能运维 博睿数据 全链路 亚马逊云科技

高并发场景下,6种方案,保证缓存和数据库的最终一致性!

C++后台开发

数据库 缓存 高并发 后端开发 C++开发

新书上市 | 连载 5 年,千万读者追更,这本书讲透了通信背后的故事!

图灵社区

通信技术 科技史

测试需求平台3-登录打通和产品列表功能实现

MegaQi

测试平台开发教程 9月月更

# 靠谱:开源IM项目OpenIM压测程序介绍-自己动手压测性能和稳定性

Geek_1ef48b

关于链路追踪所需要了解的知识

穿过生命散发芬芳

链路追踪 9月月更

数据中心网络架构的需求原则及策略

阿泽🧸

数据中心 9月月更

一文看懂Mysql锁

六月的雨在InfoQ

MySQL MySQL锁 9月月更 Mysql死锁 Mysql锁粒度

Linux面试最高频的5个基本问题

千锋IT教育

直播预告 | PostgreSQL 内核解读系列第六讲:PostgreSQL 索引介绍(下)

阿里云数据库开源

数据库 postgresql 阿里云 开源 polarDB

maven入门

楠羽

maven 笔记 9月月更

深耕隐私计算技术,瓴羊DataTrust团队喜获殊荣

瓴羊企业智能服务

数据可视化系列教程之组件构成

云智慧AIOps社区

前端 低代码 开源项目 数据可视化 可视化大屏

从用户到开发者是一种思维进化过程 | 访 StarRocks Committer 周威

StarRocks

程序员的摸鱼加速器!

Liam

程序员 前端 测试 后端 Postman

南阳蓝天燃气携手WeLink共创数字蓝天

科技云未来

Web3的流支付代表Zebec,熊市布局的价值逻辑

鳄鱼视界

高级产品经理必备素养

产品海豚湾

产品经理 职业发展 商业化 9月月更 产品价值

leetcode 206. Reverse Linked List 反转链表(简单)

okokabcd

LeetCode 数据结构与算法

构筑校园  “云资环”助力精准防控

科技云未来

Nacos 安装教程(史上最详细保姆级教程)

nacos SpringCloud 9月月更

玖章算术受邀参加红杉Talk「创新的复利」科技专场,共同探讨云计算的前世今生

数据库 数据复制 数据管理 数据备份 玖章算术

从任正非的内部信,看系统开发公司如何度过寒冬

CRMEB

15款Python编辑器,你都使用过哪一款

千锋IT教育

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