 
 
11.3  Differences between static and dynamic code
- 
Only dynamic procedures can have clauses added or removed at run time.
- Matching clauses (section 5.5) are not supported by dynamic
 code. A runtime error (calling an undefined procedure −?−>/1) will
 be raised when executing dynamic code that has a matching clause head.
- Clauses for a dynamic procedure need not be consecutive.
- Source tracing is not supported for dynamic procedures.
- assert/1, retract/1 and clause/1 does not perform clause
 transformation on the clause. If clause transformation is required,
 this can be done explicitly with 
 expand_clause/2
 before.
- Internally, dynamic procedures are represented differently from static
 procedures. The execution of dynamic procedures will generally be slower
 than for static procedures.
 
