2015-02-18 2 views
1

Turbo Prolog не так прост, как кажется. Есть еще одна проблема. Использование Turbo Prolog 2.0.Список разделов в разделе базы данных Turbo Prolog

У меня есть два раздела домены и базы данных:

domains 

    tablet_name = symbol 

database 

    additional(tablet_name, []) 

Как сказать пролог знать, что вместо [] будет список различных типов, как integer, integer, symbol, integer,symbol, symbol and so on.

Если бы это было только целое число, было бы легко, smth как additional(tablet_name, integer*). Но на самом деле мне нужно сохранить список разного объема данных.

Результат должен быть что-то вроде: additional('Acer 525', [23, yes]), additional('Acer 525', [23])

+1

Turbo Prolog - это язык логического программирования, замененный Visual Prolog. Но это не система Prolog, несмотря на ее название. –

ответ

2

жаль, что я не Турбо Пролог доступны. Но от this specification page для Visual Prolog кажется, что вы можете объявлять составные домены с очень прологовым синтаксисом. Итак, попробуйте

domains 
    ... 
    tablet_attr = size(integer,integer) ; weight(integer) ; ... 
    tablet_attrs = [tablet_attr*] 
Смежные вопросы