3.学习组合子逻辑要注意什么? 这个组合子逻辑相当于Java里什么?
Haskell 的 Parsec 库是一个文本处理库,Perl6的第一个实现 pugs 就用它开发。我在实现 Java 和 Scala 的 版本时,特意预留了更高的抽象设计,一方面让它可以能够更广泛的适用于任意类型的可回滚信息流,另一方面让Jaskell和 Scala 的类型系统尽可能的结合起来。Jaskell-Java8 则是一个完全使用 Java 8环境开发的实现,用于 Java 项目。无论适用 scala 2.11~2.13 的 jaskell-core ,还是适用 scala 3 的 jaskell-dotty ,或者 jaskell-java8 ,它们本质上仍然是 Java 和 Scala 库,可以在 JVM 项目中使用。至于 JISP 和SISP,可以看作是 jaskell 系列的示范库。它们很小,定位于演示组合子库功能,和有限应用于一些项目,简化代码。组合子的使用并不算复杂,它其实是两部分组成,一个是包装信息流的状态类型,一个是各种组合子。它可以看作是复杂度、功能、使用代价都介于 lex/yacc 和 正则表达式之间的一类解析工具。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。