Previous: mpg-ref-aty-sim, Up: mpg-ref-aty [Contents][Index]
Following is a list of argument types that are defined in terms of the simple argument types. This is a formal description of the types/domains used in the Arguments sections of the reference pages for the built-ins. The rules are given in BNF (Backus-Naur form).
| bbkey | ::= atom | integer {where the integer
is small} |
| stream_object | ::= term {as defined in ref-iou-sfh-sob} |
| term | ::= {any Prolog term} |
| list of Type | ::= [] | [Type|list of Type] |
| var or Type | ::= var | Type |
| one of [Element|Rest] | ::= Element | one of Rest |
| arity | ::= {an integer X in the range 0..255} |
| byte | ::= {an integer X in the range 0..255} |
| char | ::= {an atom consisting of a single character} |
| chars | ::= list of char |
| code | ::= {an integer X >= 0} |
| codes | ::= list of code |
| order | ::= {an atom, one of [<,=,>]} |
| pair | ::= term-term |
| simple_pred_spec | ::= atom/arity |
| pred_spec | ::= simple_pred_spec | atom:pred_spec |
| pred_spec_forest | ::= [] | pred_spec |
| [pred_spec_forest|pred_spec_forest] | |
| pred_spec_forest,pred_spec_forest | |
| pred_spec_tree | ::= pred_spec | list of pred_spec |
| foreign_spec | ::= callable {all arguments being foreign_arg} |
| foreign_arg | ::= +interf_arg_type | -interf_arg_type | [-interf_arg_type] |
| interf_arg_type | ::= integer | float | atom |
| term | codes | string | address | address(atom) | |
| {see the description in Conversions between Prolog Arguments and C Types} | |
| file_spec | ::= atom | atom(file_spec) |
| expr | ::= {everything that is accepted as second argument to is/2; |
| see the description of arithmetic expressions in ref-ari-aex.} |