13 Conclusions
In this document, we presented a high-level interface to Prolog exploiting automatic type-conversion and exception-handling defined in C++.
Programming using this interface is much more natural and requires only little extra resources in terms of time and memory.
Especially the smooth integration between C++ and Prolog exceptions reduce the coding effort for type checking and reporting in foreign predicates.
Index
- ?
- add/3
- 3.2
- arg/3
- 4.5
- assert
- 8.1
- atom_chars/2
- 2 4.9
- average/3
- 3.3
- entry/1
- 4.11
- hello/1
- 3.1
- load_foreign_library/1
- 9.2
- open/3
- 10.3
- print_message/2
- 10.1
- read/1
- 4.10
- word/1
- 8.1
- write/1
- 3.1 4.2
- NAMED_PREDICATE()
- NAMED_PREDICATE_NONDET()
- P
- PlAtom
- 4.3 6
- PlAtom==()
- PlCall()
- PlCompound
- 4.5
- PlDomainError
- 10
- PlEngine
- 11
- PlException
- 2 2 2 2 10 10 10 10.1 10.1
- PlFrame
- 8.1 8.1 8.1 8.1 8.1 12.1
- PlFrame::rewind()
- PlQuery
- 3.3 5 8
- PlQuery::next_solution()
- PlRegister
- 9
- PREDICATE0()
- PlTail
- 4.11 4.11 4.11 4.11 4.11 4.11 4.11 4.11 4.11 4.11
- PlTail::append()
- PlTail::close()
- PlTail::next()
- PlTerm
- 2 2 2 2 2 2 2 3.1 3.1 3.2 3.2 4 4.1 4.2 4.2 4.2 4.3 4.4 4.4 4.4 4.5 4.5 4.5 4.6 10 10.1 12.1
- PlTerm!=()
- PlTerm::arity()
- PlTerm::name()
- PlTerm::type()
- PlTerm<()
- PlTerm<=()
- PlTerm=()
- PlTerm==()
- PlTerm>()
- PlTerm>=()
- PlTerm[]()
- PlTermv
- 2 4.10 5 9
- PlTypeEror
- 10 10.1
- T
- cppThrow()
- plThrow()