Janet 1.0.0 发布,给语言带来一些变化

栏目: 软件资讯 · 发布时间: 5年前

内容简介:Janet 1.0.0 发布了,Janet 是一个命令式与函数式编程语言,同时也是一个字节码解释器,它是一个现代的 Lisp,但是列表替换为其它数据结构,包括数组、表、结构与元组,具有更好的实用性和性能。 该语言还支持桥接...

Janet 1.0.0 发布了,Janet 是一个命令式与函数式编程语言,同时也是一个字节码解释器,它是一个现代的 Lisp,但是列表替换为其它数据结构,包括数组、表、结构与元组,具有更好的实用性和性能。

该语言还支持桥接到用 C 编写的原生代码、宏元编程和字节码汇编。Janet 还提供了 REPL 环境,以及运行脚本文件的能力。Janet 客户端程序与核心运行时分开,因此可以嵌入到其它程序中。

新版做了一些更改,包括 propagate 函数、改进的 meson build、更好用的解析器 API、更好用的 os/execute API、封送和解封 PEGs 的能力等等。

新版更改:

  • 对资源处理添加宏指令
  • 新增 propagate  函数,这样就可以在信号被拦截后“重新抛出”信号,使得信号更加灵活
  • 在 Janetcon.h 头文件中添加的 Janet_NO_DOCSTRINGS 和 Janet_NO_SOURCEMAPS,用于缩小二进制文件大小
  • 更新模块系统以允许相对导入。module/expand-path 中的 :cur:模式将展开到当前文件的目录部分,:dir:模式能获取目录的部分输入路径名
  • 删除 module/paths 中的 :native:
  • 新增 module/expand-path
  • 删除 module/*syspath* 和 module/*headerpath*,以支持动态绑定 :syspath 和 :headerpath
  • 编译后的 pegs 现可以封送和解封
  • 将签名更改为 parser/state
  • 在循环中添加 :until
  • 在 fiber/new 中添加 :p 标签
  • 新增 file/{fdopen,fileno} 函数
  • 新增 parser/clone 功能
  • 新增可选参数到 parser/where 以设置解析器字节索引
  •  在 all-bingdings 和 all-dynamics 中添加可选参数 env

  • 在下一个 GC 的为自动释放内存添加暂存器 C API 函数,暂存器不同于普通的 gced 内存,因为它也可以正常释放,以获得更好的性能

  • 为模块添加 API 兼容性检查,这将使本机模块在主机程序不具有兼容版本或配置时不加载

  • 更改 os/Execute 的签名会更加灵活

更新说明 


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

JavaScript面向对象编程指南

JavaScript面向对象编程指南

斯托扬 / 凌杰 / 人民邮电出版社 / 2013-3 / 59.00元

《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码重用为目的的继承模式;BOM、DOM、浏览器事件、AJAX和JSON;如何实现JavaScript中缺失的面向对象特性,如对象的私有成员与私有方法;如何应用适当的编程模式,......一起来看看 《JavaScript面向对象编程指南》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

SHA 加密
SHA 加密

SHA 加密工具