0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Chrome支持运行Kotlin、Java等GC编程语言

OSC开源社区 来源:OSC开源社区 2023-11-24 11:43 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

谷歌 Chrome 开发者博客官宣:Chrome 已默认启用 WebAssembly 垃圾回收 (WasmGC) 功能 —— 能够将具有 GC 的编程语言编译为 WebAssembly (Wasm)。 下面是示例代码

Kotlin Wasm

import kotlinx.browser.document import kotlinx.dom.appendText import org.w3c.dom.HTMLDivElement fun main() { (document.getElementById(“warning”) as HTMLDivElement).style.display = “none” document.body?.appendText(“Hello, ${greet()}!”) } fun greet() = “world”

据介绍,WasmGC 是 WebAssembly 社区群组发布的一项提案。当前的 Wasm 最小可行化实现只能处理线性内存中的 number 类型数据,即整数和浮点数。随着引用类型 (reference types) 提案的发布,Wasm 还可以保留外部引用。 WasmGC 现在添加了结构体和数组堆类型,因此支持非线性内存分配。

每个 WasmGC 对象都有固定的类型和结构,这使得虚拟机可以轻松生成有效的代码来访问其字段,而不会像 JavaScript 等动态语言那样存在去优化的风险。 因此,该提案通过结构和数组堆类型为 WebAssembly 增加了对高级托管语言的有效支持,使得针对 Wasm 的语言编译器能够与主机 VM 中的垃圾回收器集成。简单来说,通过 WasmGC,将编程语言移植到 Wasm 意味着编程语言的垃圾回收器不再需要成为移植的一部分,而是可以直接使用现有的垃圾回收器。

审核编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 谷歌
    +关注

    关注

    27

    文章

    6257

    浏览量

    111948
  • JAVA
    +关注

    关注

    20

    文章

    3005

    浏览量

    116823
  • 编程语言
    +关注

    关注

    10

    文章

    1965

    浏览量

    39850
  • Chrome
    +关注

    关注

    0

    文章

    346

    浏览量

    19150

原文标题:Chrome支持运行Kotlin、Java等GC编程语言

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Java并发编程的“基石”——多线程概念初识

    AI 算力调度底层:Java 并发基石与未来技术融合 当我们在屏幕前流畅地与大语言模型对话,或是看着自动驾驶系统瞬间处理海量视觉数据时,往往只会惊叹于 AI 算法的精妙。然而,在这层绚丽的应用外衣
    发表于 04-16 18:50

    寻找对RISCV众核并行计算感兴趣的伙伴、朋友

    函数分配到不同的CPU上并行运行。使C/C++/Verilog/Java/OpenCL也变成并行编程语言,即传统
    发表于 03-28 14:41

    寻找对RISCV众核并行计算感兴趣的伙伴

    函数分配到不同的CPU上并行运行。使C/C++/Verilog/Java/OpenCL也变成并行编程语言,即传统
    发表于 03-28 14:37

    汽车网络安全开发语言选型指南:C/C++/Rust/Java主流语言对比+Perforce QAC/Klocwork工具支持

    汽车网络安全如何选编程语言?C、C++、Rust、Java……谁更适合AUTOSAR、ISO/SAE 21434?一文了解8种主流语言的优劣与适用场景,以及Perforce QAC/K
    的头像 发表于 12-26 11:13 638次阅读
    汽车网络安全开发<b class='flag-5'>语言</b>选型指南:C/C++/Rust/<b class='flag-5'>Java</b><b class='flag-5'>等</b>主流<b class='flag-5'>语言</b>对比+Perforce QAC/Klocwork工具<b class='flag-5'>支持</b>

    C语言和C++之间的区别是什么

    区别 1、面向对象编程 (OOP): C语言是一种面向过程的语言,它强调的是通过函数将任务分解为一系列步骤进行执行。 C++在C语言的基础上扩展了面向对象的特性,
    发表于 12-11 06:23

    如何调试和编程CW32F030C8T7?支持哪些调试工具和编程语言

    了解如何调试和编程CW32F030C8T7是开发过程中的重要环节。它支持哪些调试工具(如JTAG、串口调试)和编程语言(如C、C++
    发表于 12-05 06:48

    C语言编程技巧

    设计,分层开发代码,便于理解和维护。 ‌8、避免使用GOTO语句‌:尽管GOTO语句在某些情况下仍然有用,但现代编程更倾向于使用函数和循环控制结构,以提高代码的可读性和维护性。 ‌9、利用C语言的灵活性
    发表于 11-27 06:46

    C语言特性

    的实时操作系统(RTOS),如 FreeRTOS、RT-Thread ,C 语言都能游刃有余地运行。以一款跨平台的嵌入式应用为例,使用 C 语言编写的核心代码可以在不同厂家生产的硬件
    发表于 11-24 07:01

    一文了解Mojo编程语言

    编程能力 允许直接进行系统调用和文件操作,提供类似 Rust 的内存安全机制(所有权和借用检查),避免运行时错误。 支持零成本抽象,开发者无需牺牲性能即可编写高层代码。 并行与异构计算 内置对多核
    发表于 11-07 05:59

    Arm Neoverse CPU上大代码量Java应用的性能测试

    Java 是互联网领域广泛使用的编程语言Java 应用的一些特性使其性能表现与提前编译的原生应用(例如 C 程序)大相径庭。由于 Java
    的头像 发表于 11-05 11:25 927次阅读
    Arm Neoverse CPU上大代码量<b class='flag-5'>Java</b>应用的性能测试

    【HZ-T536开发板免费体验】2 - 交叉编译仓颉编程语言程序到开发板运行

    。 安全可靠 :通过静态类型系统和自动内存管理,确保程序的类型安全和内存安全。同时提供数组下标越界检查、类型转换检查运行时检查,并通过代码扫描工具提供跨语言互操作安全和代码资产保护
    发表于 07-16 21:27

    深度操作系统deepin 25全面支持语言

    近日,deepin(深度)社区宣布,deepin 25 现已完成对国产通用编程语言语言 (Wa-Lang) 的兼容性测试。在 deepin 25 默认安装环境下,即可直接使用凹语言
    的头像 发表于 07-10 15:26 1123次阅读
    深度操作系统deepin 25全面<b class='flag-5'>支持</b>凹<b class='flag-5'>语言</b>

    梯形图语言补充编程说明书

    电子发烧友网站提供《梯形图语言补充编程说明书.pdf》资料免费下载
    发表于 07-09 14:14 3次下载

    Kuikly鸿蒙版正式开源 —— 揭秘卓越性能适配之旅

    Kotlin Native增加鸿蒙平台的互操作文件,对接系统API,同时调整运行时中涉及到架构、平台的判断逻辑,使其实现对鸿蒙平台的支持。 完成初步适配后,通过
    发表于 06-04 16:46

    单片机c语言编程实例大全

    单片机c语言编程实例大全_18
    发表于 04-30 16:11 7次下载