[ Obsolete | Reference Manual | Alphabetic Index ]
begin_module(+Module)
Start the definition of the body of the Module.
- Module
- Atom.
This built-in predicate is obsolete!
Description
   This is a directive that can occur only in a compiled file.  Module must
   be an existing, non-locked module.  All following code will be added to
   the module Module up to the next begin_module/1 or module_interface/1
   directive or up to the file end.
Modes and Determinism
Exceptions
- (4) instantiation fault 
- Module is not instantiated.
- (5) type error 
- Module is not an atom.
- (68) calling an undefined procedure 
- When called from Prolog.
- (80) not a module 
- Module is not a module.
- (82) trying to access a locked module 
- Module is locked.
Examples
Success:
     [eclipse 2]: [user].
     :- module_interface(m).
     :- op(700, xf, there).
     :- export p/1.
     :- begin_module(m).
      p(X) :- writeln(X).
      user compiled 56 bytes in 0.03 seconds
     yes.
     [eclipse 3]: p(hello there).
     syntax error: postfix/infix operator expected
     | p(hello there).
     |             ^ here
     [eclipse 3]: use_module(m).
     yes.
     [eclipse 4]: p(hello there).
     hello there
     yes.
Error:
    begin_module(M).                 (Error 4).
    begin_module(1).                 (Error 5).
    begin_module(a_locked_module).   (Error 82).
See Also
module / 1, create_module / 1, erase_module / 1, current_module / 1, module_interface / 1