探秘 Gherkin:在 Bash 中的 Lisp 实验

探秘 Gherkin:在 Bash 中的 Lisp 实验

Gherkin Logo

Gherkin 是一个由 GNU Bash 4 编写的函数式编程语言和解释器,旨在实现跨*nix平台的高度可移植性。这个项目起源于对 Lisp 语言的一种独特诠释,它向我们展示了如何在传统的 Unix Shell 环境中融合 Lisp 的思想。

1、项目介绍

Gherkin 是一种 Lisp 方言,具备 Lisp 的标志性特征,如同构性(homoiconicity)、一等函数以及用于处理字符串、整数、符号和列表等数据类型的原生函数。此外,它还充分利用了nix环境和Shell的功能,提供无缝集成的能力。虽然目前仍处于 Alpha 阶段,但开发者的目标是将其发展成一种可以替代Bash进行通用nix脚本编写的语言。

2、项目技术分析

Gherkin 的设计基于 GNU Bash 4,这意味着它可以运行在大多数 Linux 和 Mac 系统上。通过其内置的 Read-Evaluate-Print-Loop(REPL)环境,你可以直接测试和执行表达式。Gherkin 还支持加载库文件,例如核心库core.gk,提供了诸如map这样的高级功能。

3、项目及技术应用场景

  • 教育与学习:作为 Lisp 的一个变体,Gherkin 可以帮助开发者理解 Lisp 的核心概念,并在 Unix Shell 中实践这些概念。
  • 快速原型开发:由于它的简单性和高度可扩展性,Gherkin 是快速构建小工具或脚本的理想选择。
  • 日常脚本任务:随着其进一步发展,未来可能适用于日常*nix系统的自动化任务和脚本编写。

4、项目特点

  • 极端可移植性:Gherkin 基于 Bash,可以在广泛使用的*nix系统上无缝运行。
  • Lisp特性:借鉴 Lisp 的语法和哲学,提供了一种独特的Unix Shell编程体验。
  • nix壳层交互:可以直接调用Shell命令,与nix环境深度整合。
  • REPL支持:方便开发者进行快速测试和调试。

如果你对此感兴趣,可以通过加入#gherkin频道(irc.freenode.net)或订阅gherkin-dev@googlegroups.com邮件列表,参与到项目的讨论和改进中来。

最后,感谢 Darius Bacon 创建的 awklisp,它是 Gherkin 最初原型的灵感来源。此外,还有 Craig Andera 提供的 gherkin-mode,这是一个用于 Emacs 编辑 Gherkin 代码的模式。

现在就启动 Gherkin,开始你的 Lisp 在*nix世界中的探索之旅吧!

  • 17
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

马冶娆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值