Goldfish Scheme v17.11.2 已经发布,Scheme 解释器

Goldfish Scheme v17.11.2 已经发布,Scheme 解释器

此版本更新内容包括:

> bin/goldfish --version
Goldfish Scheme 17.11.2 by LiiiLabs
based on S7 Scheme 11.2 (30-Dec-2024)
 

Goldfish Scheme v17.11.2将会在墨干理工套件v1.2.9.9中内置。

新模块(liii lang)

这个模块大大提升了Goldfish Scheme易用性

  • 提供了类似Scala标准库和Java 8 Stream API的函数式数据管道
  • 在case-char和case-string中实现了Unicode支持

Unicode支持的示例代码:

((box "你好,世界") 0) ; => 你
((box "你好,世界") 4) ; => 界
((box "你好,世界") :length) ; => 5
 

函数式数据管道的示例代码

((box (list 1 2 3 4 5))
 :map (lambda (x) (* x x))
 :filter even?
 :collect) ; => (list 4 16)

((box (vector 1 2 3 4 5))
 :map (lambda (x) (* x x))
 :filter even?
 :collect) ; => (vector 4 16)
 

完善了define-case-class

define-case-class是Goldfish Scheme用于定义样本类的函数,本次更新完善了该函数,除了没有默认生成hashCode之外,define-case-class的功能已经能够覆盖Scala的case class的几乎所有使用场景。

示例代码

(define-case-class person
  ((name string?)
   (age integer?))
  
  (define (%to-string)
    (string-append "I am " name " " (number->string age) " years old!"))
  (define (%greet x)
    (string-append "Hi " x ", " (%to-string))))

(define bob (person "Bob" 21))

(bob :to-string) ; => "I am Bob 21 years old!"
(bob :greet "Alice") ; => "Hi Alice, I am Bob 21 years old!"
优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/329390

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。