A unified approach to solving seven programming problems (Functional pearl)

被引:12
作者
Byrd W.E. [1 ]
Ballantyne M. [1 ]
Rosenblatt G. [2 ]
Might M. [1 ]
机构
[1] Toronto, ON
基金
美国国家科学基金会;
关键词
MiniKanren; Program synthesis; Racket; Relational programming; Scheme;
D O I
10.1145/3110252
中图分类号
学科分类号
摘要
We present seven programming challenges in Racket, and an elegant, unified approach to solving them using constraint logic programming in miniKanren. © 2017 Copyright held by the owner/author(s).
引用
收藏
相关论文
共 9 条
[1]  
Byrd W.E., Friedman D.P., From variadic functions to variadic relations: A miniKanren perspective, Proceedings of The 2006 Scheme and Functional Programming Workshop, pp. 105-117, (2006)
[2]  
Byrd W.E., Holk E., Friedman D.P., MiniKanren, live and untagged: Quine generation via relational interpreters (Programming pearl), Proceedings of The 2012 Annual Workshop on Scheme and Functional Programming (Scheme’12), pp. 8-29, (2012)
[3]  
Friedman D.P., Byrd W.E., Kiselyov O., The Reasoned Schemer, (2005)
[4]  
Hofstadter D.R., Gödel, Escher, Bach: An Eternal Golden Braid, (1979)
[5]  
Jaffar J., Lassez J.-L., Constraint logic programming, Proceedings of The 14th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL’87), pp. 111-119, (1987)
[6]  
Kiselyov O., Shan C.-C., Friedman D.P., Sabry A., Backtracking, interleaving, and terminating monad transformers: (Functional pearl), Proceedings of The Tenth ACM SIGPLAN International Conference on Functional Programming (ICFP’05), pp. 192-203, (2005)
[7]  
Kleene S.C., Introduction to Metamathematics, (1952)
[8]  
McCarthy J., A micro-manual for LISP ś not the whole truth, SIGPLAN Not, 13, 8, pp. 215-216, (1978)
[9]  
Might M., 99 Ways to Say’(I Love You) in Racket, (2013)