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

    文章

    6246

    浏览量

    110275
  • JAVA
    +关注

    关注

    20

    文章

    2997

    浏览量

    115704
  • 编程语言
    +关注

    关注

    10

    文章

    1959

    浏览量

    38932
  • Chrome
    +关注

    关注

    0

    文章

    346

    浏览量

    18979

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

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

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

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

    一文了解Mojo编程语言

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

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

    Java 是互联网领域广泛使用的编程语言Java 应用的一些特性使其性能表现与提前编译的原生应用(例如 C 程序)大相径庭。由于 Java
    的头像 发表于 11-05 11:25 386次阅读
    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 803次阅读
    深度操作系统deepin 25全面<b class='flag-5'>支持</b>凹<b class='flag-5'>语言</b>

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

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

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

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

    如何在 树莓派 上编写和运行 C 语言程序?

    在本教程中,我将讨论C编程语言是什么,C编程的用途,以及如何在RaspberryPi上编写和运行C程序。本文的目的是为您介绍在RaspberryPi上进行C
    的头像 发表于 03-25 09:28 943次阅读
    如何在 树莓派 上编写和<b class='flag-5'>运行</b> C <b class='flag-5'>语言</b>程序?

    零基础入门:如何在树莓派上编写和运行Python程序?

    是一种非常有用的编程语言,其语法易于阅读,允许程序员使用比汇编、C或Java语言更少的代码行。Python
    的头像 发表于 03-25 09:27 1552次阅读
    零基础入门:如何在树莓派上编写和<b class='flag-5'>运行</b>Python程序?

    GC1868芯片助力工业便携式储能设备稳定运行

    在工业领域,便携式储能设备犹如灵动的能量源泉,穿梭于各类复杂作业场景,为生产活动提供着不可或缺的电力支持。而钧敏科技主推的矩阵电流传感器芯片 GC1868,宛如一颗精密的 “智慧大脑”,成为这些设备稳定运行的关键所在,有效化解客
    的头像 发表于 03-11 15:27 967次阅读

    数字电路编程语言介绍

    文本形式描述电路的行为和结构。 并行性和并发性 :数字电路编程语言支持并行和并发操作的描述,这是数字电路设计中的基本特性。 模块化 :这些语言支持
    的头像 发表于 01-24 09:39 1398次阅读

    gitee 支持编程语言有哪些

    Gitee 支持的常见编程语言: Python :一种广泛使用的高级编程语言,以其清晰的语法和代码可读性而闻名。
    的头像 发表于 01-06 09:50 1111次阅读

    三菱PLC编程语言解析

    (Sequential Function Chart, SFC)。以下是对这些编程语言的简要解析: 1. 梯形图(Ladder Diagram, LD) 梯形图是PLC编程中最常用的
    的头像 发表于 12-26 17:36 2253次阅读

    Triton编译器支持编程语言

    Triton编译器支持编程语言主要包括以下几种: 一、主要编程语言 Python :Triton编译器通过Python接口提供了对Trit
    的头像 发表于 12-24 17:33 1480次阅读