Redian新闻
>
“可在浏览器端运行的Python”再发力

“可在浏览器端运行的Python”再发力

公众号新闻
出品 | OSC开源社区(ID:oschina2013)
半年前,知名 Python 发行版 Anaconda 开发商推出了 PyScript —— 一款支持在浏览器中创建 Python 应用程序的框架。PyScript 基于 Pyodide 构建,Pyodide 由编译成 WebAssembly 的 CPython 3.8 解释器组成,允许在网页浏览器中运行 Python。Pyodide 可以安装来自 PyPi 的任何 Python 包。Pyodide 还包括一个外部函数接口,可以将 Python 包暴露给 JavaScript,并将浏览器 UI,包括 DOM,暴露给 Python。
Anaconda 表示,为了让 PyScript 取得成功,他们必须对项目本身及其核心技术依赖进行战略性投资,例如 WebAssembly (Wasm) 和 Pyodide 开源项目(PyScript 的首选 runtime)。
基于上述目标,Anaconda 在过去的半年里一直在积极改进 PyScript 的技术基础设施,并在近日宣布加入了字节码联盟 (Bytecode Alliance),成为正式投票成员,希望帮助改进 Wasm 和 WASI 的标准。
Bytecode Alliance(字节码联盟)由 Mozilla、Fastly、Intel 与 Red Hat 联合成立,是一个推动 WebAssembly 标准化的组织,该联盟旨在通过协作实施标准和提出新标准,以完善 WebAssembly 在浏览器之外的生态。目前正在积极推动 WASI (WebAssembly System Interface),使 WebAssembly 能够安全地访问文件、网络和内存等系统资源。
在 Anaconda 看来,Wasm 对于 PyScript 起着至关重要的作用。类似的,WASI 在 Python 生态的 runtime 和模块中也扮演着至关重要的角色。他们希望与联盟合作共同推进这些标准。数据科学需要在任何地方都能运行 workload,比如本地 Python 环境、浏览器和云中 —— 这种可移植性是计算的未来。
除了加入字节码联盟,Anaconda 也在大力支持 PyScript 依赖的核心开源项目 Pyodide,比如为其上游贡献代码,以及支持正在进行的开发工作。他们认为 Pyodide 的成功就是 PyScript 的成功,虽然有许多项目都实现了将 Python 引入浏览器,但 Pyodide 在弥补跨语言代理、打包和模块支持方面的开发差距方面做得非常出色。而且 Pyodide 在可预见的未来将会是 PyScript 的默认 runtime。Anaconda 希望把它作为一个重要的依赖关系来支持,并充分认识到它为 PyScript 带来的价值。
虽然 Anaconda “押注” Pyodide,但同时也在积极尝试新的 runtime。最近他们展示了基于 MicroPython 的 PyScript 技术预览版,体验地址:https://pyscript.net/tech-preview/micropython/。
Anaconda 表示,MicroPython 非常适合在缺少操作系统和资源有限的受限环境中运行。当他们在默认配置中将 MicroPython 应用到 Wasm 时,出现了令人兴奋的结果:这个新的 runtime 总大小仅为 303KB,可即时加载并在不到 100 毫秒的时间内开始执行 MicroPython 逻辑。
Anaconda 认为 MicroPython 也对 PyScript 发挥了重要作用,尤其是在许多加载性能存在问题的开发场景中。因为 PyScript 可通过配置来支持多种 runtime,所以开发者可根据场景选择最适合的方案。



【OSCHINA 2022 中国开源开发者问卷】来啦
你的反馈将有助于反映中国开源的全貌
问卷结尾还可抽取我们的周边好物哦~
期待来自你的反馈!

往期推荐



Go开源13周年,今年获有史以来最大改变

微软贡献Linux内核代码,可运行多个Windows

微软在 Windows 11 的开始菜单嵌入广告



这里有最新开源资讯、软件更新、技术干货等内容
点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦~

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
如何在浏览器中启用深色模式 | Linux 中国10个 Python 脚本来自动化你的日常任务《山居续忆》:第六章:我和春节:(上)关于 Python 的文件操作详解用 Python 写了一个电子考勤系统!Julia 和 Python,哪一个更快? | Linux 中国Python之谜:四舍五入round(4.5)等于4?维持一个健壮身体需要的重量训练水平这几年学 Python 的感悟胡渊鸣:import 一个“太极”库,让 Python 代码提速100倍!官方发布!最适合留学生快速上手的python教程来了33 个 "不得不看" 的 Python 关键字总结!后Kubernetes时代的未来?Wasmer 3.0 发布,可在浏览器外运行 WebAssembly别卷了!哈工大博士半年整理的Pytorch笔记公开!60 个重要的 Python 小示例Python 3.11 终于发布了,性能大提升!10个Python脚本来自动化你的日常任务栓好安全带:美中关系或要天崩地裂了火爆北美的少儿Python编程课免费领!藤校师资,竞赛AP两手抓!如何为 Python 应用选择最好的 Docker 镜像?涨知识!Python 的异常信息还能这样展现Python 3.11 正式版发布,比 3.10 快 10-60%,官方:这或许是最好的版本硬核观察 #800 Python 3.11 发布:性能大幅提升字节大佬编写的这本《Python背记手册》,带我横扫互联网大厂秋招!11 个有趣的 Firefox 浏览器扩展,改善你的浏览体验 | Linux 中国速领!哈佛学霸都在学的Python课程,3天即可掌握!《西罗普郡一少年》: 44: 一枪毙命,干净利落?Python环境搭建手把手图文教程如何在 Ubuntu 和其他相关 Linux 中安装 Python 3.10 | Linux 中国将你的 Python 脚本转换为命令行程序 | Linux 中国4 步打包一个新的 Python 模块 | Linux 中国南非2022(13)開普敦:彩虹街道,植物園,直升飛機Python程序化套利实战班Python 3.11 正式版来了,比 3.10 快 10-60%10 个 Python 脚本来自动化你的日常任务
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。