从类别访问参数化对象

Accessing Parametric object from category

如何从类别访问参数化对象

:- category(attributes).

    :- public(info/1).
    info(Value) :- arg(1,_Array_,Value).

:- end_category.

:- object(array(_Array_),imports([attributes])).

这不起作用...

 *     Singleton variable: _Array_

由于实体参数是逻辑变量,只需在对象和类别之间共享它们:

:- category(attributes(_Array_)).

    :- public(info/1).
    info(Value) :-
        arg(1, _Array_, Value).

:- end_category.


:- object(array(_Array_),
    imports(attributes(_Array_))).

:- end_object.