您现在的位置是:亿华云 > 数据库
Joker:Go 编写的 Clojure 解释型方言
亿华云2025-10-04 04:04:12【数据库】3人已围观
简介此 Joker 非彼 Joker,本文将要介绍的 Joker 是一门使用 Go 编写的 Clojure 解释型方言,同时也是一个 Clojure(Script) linter。Joker 代码示例1.
此 Joker 非彼 Joker,释型本文将要介绍的释型 Joker 是一门使用 Go 编写的 Clojure 解释型方言,同时也是释型一个 Clojure(Script) linter。
Joker 代码示例
1. 在 Clojure 中编写脚本
2. 即时检查 Clojure(Script) 代码
特性
拥有快速的释型启动时间 提高明确的错误消息和堆栈跟踪 支持发送 HTTP 请求、读取和解析 JSON、释型使用文件系统、释型启动外部进程等 支持所有主流编辑器 自动检查语法错误、释型函数数量不匹配、释型无法解析的释型符号、未使用的释型命名空间、变量、释型绑定等 ……根据文档的释型说明,Joker 的释型目标包括:
适用于编写脚本(并且具备轻量级、快速启动的释型特性)。作者表示这是释型 Clojure 不擅长的事情,也是他试图解决的个人问题。高防服务器 对用户友好。反馈良好的错误消息和堆栈跟踪对于程序员的幸福和生产力绝对至关重要。 为 Clojure 及其方言提供一些工具。Joker 具有 linter 模式,可用于对 Joker、Clojure 和 ClojureScript 代码进行 linting,它会捕获一些基本错误。Joker 还可以对 Clojure 代码进行格式化(查看 format mode)或提供 EDN 数据结构。例如,以下命令可用于漂亮地打印 EDN 数据结构(从标准输入读取): joker --hashmap-threshold -1 -e "(pprint (read))" 尽可能地(在语法和语义上)接近 Clojure。Joker 应该真正成为 Clojure 的方言,而不是受 Clojure 启发的语言。也就是说,Clojure 的许多特性是 Joker 没有也永远不会拥有的。但 Joker 会具备与 Clojure 接近但只适用于自身的特性。Joker 也罗列了两个不关注的目标:
性能。作者表示,如果使用者注重性能,请直接使用 Clojure,站群服务器因为 Joker 只是解释器的一个简单实现,他没打算把优先级放在提升性能上。 拥有所有 Clojure 特性。作者表示,由于使用了不同的宿主语言(Go 与 Java),Clojure 的某些特性无法在 Joker 实现。至于其他特性,他认为对于他想到的 Joker 使用场景来说并不重要。语法对比
安装
在 macOS 上,安装 Joker 最便捷的方法是使用 Homebrew:
brew install candid82/brew/joker 如果使用 Linuxbrew,可以在 Linux 上使用相同的命令。 如果使用 Arch Linux,提供了 AUR 包。 如果使用 Nix,可以用下面的方式安装 Joker nix-env -i joker在其他平台上(或者希望手动安装),为对应的平台下载预编译的二进制文件并将其放在 PATH 中。
当然还可以从源代码构建 Joker。
本文转自OSCHINA
本文标题:Joker:Go 编写的 Clojure 解释型方言
本文地址:https://www.oschina.net/news/158495/joker-lang
亿华云计算很赞哦!(57)
相关文章
- 4.域名的整体品牌营销力
- 十个 Linux 新手管理员易犯错误
- Redis中五大数据结构的底层实现
- 微信域名防拦截技术介绍
- .com域名是国际最广泛流行的通用域名,目前全球注册量第一的域名,公司企业注册域名的首选。国际化公司通常会注册该类域名。
- pw域名怎么样?如何去注册pw域名?
- 二级不死域名是什么意思?怎么做二级不死域名?
- 微信二级不死域名是什么意思?被封后还能访问吗?
- 域后缀首选.com,.net,然后是.cn。后缀选择不当,导致流量损失。域名是企业与互联网网址之间的链接,关键是企业在网络上存在的标志。因此,选择好域名是开展网上工作的首要重要条件。
- 一文看懂MySQL如何判断InnoDB表是独立表空间还是共享表空间