【发布时间】:2017-05-06 23:17:54
【问题描述】:
scheme 的新手,目前正在研究词法分析器。下面是我的代码,我收到了错误 图:违约 预期:列表? 给定:# 论点位置:第二 其他论点...: #
#lang racket
(define tokens '((dog noun)
(cat noun)
(chases verb)
(the article)))
(define (getToken word)
(cadr (assq word tokens)))
(define ttw (lambda (l)
(map getToken l)))
(define (parse-sentence list)
(article list))
(define (article list)
(if (eq? (car list) 'article)
(begin
(display "Article: ")
(display (car list))
(noun (cdr list))
)
(begin
(display "Not an Article!!!")
(display (car list)))
))
(define (noun list)
(if (eq? (car list) 'noun)
(begin
(display "Noun:")
(display (car list))
(noun (cdr list))
)
"Not a noun!!!")
)
(begin
(display "Enter a Sentance in (): ")
(let ((input (read)))
(ttw (parse-sentence input))))
我的输入是(狗追猫)
【问题讨论】:
-
预期输出是什么?
标签: functional-programming scheme racket