The module can later be unlocked by calling unlock(Module, Password).
An error is raised (error 82) when trying to re-lock a locked module. It must be unlocked first.
Success:
     [eclipse]: [user].
      :- module(m).
      :- export p/0.
      p :- writeln(hello).
      user        compiled 60 bytes in 0.00 seconds
     yes.
     [eclipse]: lock(m, "pass").
     yes.
     [eclipse]: module(m).
     trying to access a locked module in module(m)
     [eclipse]: import p/0 from m.
     yes.
     [eclipse]: p.
     hello
     yes.
     [eclipse]: call(p) @ m.
     trying to access a locked module in p
     [eclipse]: unlock(m, "pass").
     yes.
     [eclipse]: call(p) @ m.
     hello
     yes.
Error:
     lock(M, "pass").                       (Error 4).
     lock(m, Pass).                         (Error 4).
     lock(1, "pass").                       (Error 5).
     lock(not_a_module, "pass").            (Error 80).
     lock(m, "pass"), call(p) @ m.          (Error 82).
     lock(m, "pass"), lock(m, "new_pass").  (Error 82).