WebAssembly Design

WebAssembly 设计文档。(WebAssembly Design Documents)

  • Owner: WebAssembly/design
  • Platform: Web browsers
  • License:: Apache License 2.0
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

WebAssembly设计

此资料库包含描述 WebAssembly 的设计和高级概览的文档。

此资料库中的文件和讨论是 WebAssembly 社区组的一部分。

概述

WebAssembly 或 wasm 是一种新的、可移植的、体积小的、加载时间短的格式,适合在 Web 上编译。

WebAssembly 目前正被 W3C 社区小组 设计为一个开放的标准,该小组包括所有主要浏览器的代表。期待这个资源库的内容是不断变化的:一切都还在讨论中。

    WebAssembly 是高效且快速:Wasm 字节码被设计为大小和加载时间效率高的 二进制格式 进行编码。WebAssembly 旨在通过利用各种平台上提供的 通用硬件能力,以原生速度执行。

    WebAssembly 是安全的:WebAssembly 描述了一个 内存安全、沙箱化的 执行环境,甚至可以在现有的 JavaScript 虚拟机中实现。当 嵌入到 Web 中时,WebAssembly 将执行浏览器的同源和权限安全策略。

    WebAssembly 是开放和可调试的:WebAssembly 被设计为以 文本格式 的精美打印,用于调试、测试、实验、优化、学习、教学和手工编写程序。在 Web 上 查看 wasm 模块的源码 时,将使用文本格式。

    WebAssembly 是开放式 Web 平台的一部分:WebAssembly 的设计是为了保持 Web 本质 的无版本、特性测试和向后兼容的特性。WebAssembly 模块将能够调用进入和退出 JavaScript 上下文,并通过从 JavaScript 访问的相同的 Web API 访问浏览器功能。WebAssembly 还支持 non-web 嵌入。

更多信息

资源 存储库位置
高级别目标 design/HighLevelGoals.md
常见问题解答 design/FAQ.md
语言规范 spec/README.md

设计流程&贡献

WebAssembly 规范正在 规范存储库 中开发。目前,高层次的设计讨论应该继续在设计库中进行,通过问题和拉取请求,以便规范工作能够保持专注。

我们已经制定了我们期望发布的功能:

  1. 一个最初的 最小可行产品(MVP)版本
  2. 并很快在 未来版本 中发布。

加入我们:

捐助时,请遵循我们的道德与专业行为准则

Main metrics

Overview
Name With OwnerWebAssembly/design
Primary Language
Program language (Language Count: 0)
PlatformWeb browsers
License:Apache License 2.0
所有者活动
Created At2015-04-29 17:36:05
Pushed At2025-02-11 01:49:36
Last Commit At
Release Count4
Last Release Namepre-release-0xC (Posted on 2016-09-30 11:05:57)
First Release Namepublic-announcement (Posted on )
用户参与
Stargazers Count11.5k
Watchers Count748
Fork Count695
Commits Count1.4k
Has Issues Enabled
Issues Count836
Issue Open Count179
Pull Requests Count560
Pull Requests Open Count3
Pull Requests Close Count130
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private

WebAssembly Design

This repository contains documents describing the design and high-level overview of WebAssembly.

The documents and discussions in this repository are part of the WebAssembly Community Group.

Overview

WebAssembly or wasm is a new, portable, size- and load-time-efficient format suitable for compilation to the web.

WebAssembly is currently being designed as an open standard by a W3C Community Group that includes representatives from all major browsers. Expect the contents of this repository to be in flux: everything is still under discussion.

  • WebAssembly is efficient and fast: Wasm bytecode is designed to be encoded in a size- and load-time-efficient binary format. WebAssembly aims to execute at native speed by taking advantage of common hardware capabilities available on a wide range of platforms.

  • WebAssembly is safe: WebAssembly describes a memory-safe, sandboxed execution environment that may even be implemented inside existing JavaScript virtual machines. When embedded in the web, WebAssembly will enforce the same-origin and permissions security policies of the browser.

  • WebAssembly is open and debuggable: WebAssembly is designed to be pretty-printed in a textual format for debugging, testing, experimenting, optimizing, learning, teaching, and writing programs by hand. The textual format will be used when viewing the source of wasm modules on the web.

  • WebAssembly is part of the open web platform: WebAssembly is designed to maintain the versionless, feature-tested, and backwards-compatible nature of the web. WebAssembly modules will be able to call into and out of the JavaScript context and access browser functionality through the same Web APIs accessible from JavaScript. WebAssembly also supports non-web embeddings.

More Information