Синтаксис для проверки нескольких дефрулов в клипах - PullRequest
0 голосов
/ 12 октября 2019

Я хочу проверить синтаксис для нескольких дефрелей. Как мне реализовать эту операцию?

Я знаю, (check-syntax <construct-or-function-string>) может проверить одно правило, но оно не поддерживает несколько правил в одной строке.

Пример (в клипах cli):

CLIPS> (check-syntax "(defrule output1 => (printout t \"test for check-syntax 1\")
)")
FALSE
CLIPS> (check-syntax "(defrule output1 => (printout t \"test for check-syntax 1\")
) (defrule output2 => (printout t \"test for check-syntax 2\")
)")
EXTRANEOUS-INPUT-AFTER-LAST-PARENTHESIS

Если есть строка, содержащая несколько правил, нужно ли разделять ее как одно правило для проверки синтаксиса?

1 Ответ

0 голосов
/ 13 октября 2019

Функция check-syntax будет проверять только одну конструкцию. Если у вас есть строка, содержащая несколько правил, вы должны разбить эту строку на несколько строк, чтобы проверить каждое из них.

...