1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

新闻 Kotlin/Native v0.2 发布,将 Kotlin 编译成机器码 下载

Discussion in '软件资讯' started by 漂亮的石头, 2017-05-13.

  1. 漂亮的石头

    漂亮的石头 版主 Staff Member

    Joined:
    2012-02-10
    Messages:
    487,979
    Likes Received:
    47
    Kotlin/Native v0.2 发布了,这是 Kotlin/Native 技术预览版的功能和修复程序更新。本次更新增加了对协同程序和跨模块内联函数的支持,以及错误修复和改进。

    该版本包括以下内容:


    • 如何为并发非阻塞 IO 使用协程(coroutines)的例子


    • 使用 GTK 的 GUI 应用程序


    • 由 Julius Kunze 提供的 TensorFlow 机器学习框架客户端

    例如,像这样的代码:

    var connectionId = 0
    acceptClientsAndRun(listenFd) {
    memScoped {
    val bufferLength = 100L
    val buffer = allocArray<ByteVar>(bufferLength)
    val connectionIdString = "#${++connectionId}: ".cstr
    val connectionIdBytes = connectionIdString.getPointer(this)
    try {
    while (true) {
    val length = read(buffer, bufferLength)
    if (length == 0L) break
    write(connectionIdBytes, connectionIdString.size.toLong())
    write(buffer, length)
    }
    } catch (e: IOException) {
    println("I/O error occurred: ${e.message}")
    }
    }
    }

    可用于通过协程处理多个并发套接字 IO,并单独并发地为每个客户端提供服务

    创建一个带有事件侦听器的 GTK 按钮,只需执行以下操作:

    val button = gtk_button_new_with_label("Click me!")!!
    g_signal_connect(button, "clicked",
    staticCFunction { _: CPointer<GtkWidget>?, _: gpointer? -> println("Hi from Kotlin") }
    )

    因此,v0.2 版本允许使用 Kotlin 创建功能齐全的体积小巧的原生应用程序,而且编译和运行时性能均有明显改善,可再分发的规模也已有所下降。

    此版本中的完整更改列表可以在变更日志中找到。

    适用于 Linux MacOS 的二进制文件。

    发布主页

    Kotlin/Native 能把 Kotlin 编译成机器码,由 JetBrains 公司开发。注意,该项目仍处于实验性阶段,请选择合适的场景进行使用。

    Kotlin/Native 利用 LLVM 将 Kotlin 编译成机器码,现在已支持 4 个平台:


    • Linux (暂时只是 Ubuntu)


    • Mac OS


    • iOS


    • Raspberry Pi
    Kotlin/Native v0.2 发布,将 Kotlin 编译成机器码下载地址
     
Loading...