新計劃和目前正在使用詞法分析器。以下是我的代碼,我收到錯誤 map:合同違規 預計:列表? 給出:# 說法位置:第二 其他參數...: #計劃詞彙分析器
#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))))
我輸入(狗追貓了)
預期產量是多少? –