Когда использовать строки или символы в клипах

Сейчас я начинаю изучать CLIPS и спрашиваю себя, когда лучше использовать символы, а когда - строки?

На первый взгляд мне кажется, что символы выгодны, потому что их легче сравнивать, чем строки.

(eq test test)

быстрее чем

(= (str-compare "test" "test") 0)

Есть ли в этом и обратная сторона?

1 ответ

Решение

Преимущество символов по сравнению со строками состоит в том, что вам нужно вводить на два символа меньше (кавычки). Недостаток символов по сравнению со строками заключается в том, что некоторые разделители недопустимы (особенно символы пробела). Функция str-compare предназначена в первую очередь для алфавитной сортировки. Для проверки на равенство вы можете использовать eq:

CLIPS> (eq "test" "test")
TRUE
CLIPS> (eq "test" "nottest")
FALSE
CLIPS>  
Другие вопросы по тегам