reams can be read into a list of rows (with each row being
represented by a list of fields) or asserted using a user-defined
dynamic predicate. Reading can be done by first loading the whole file
(using the <code class="docutils literal notranslate"><span class="pre">read_file/2-3</span></code> predicates) into memory or line by line
(using the <code class="docutils literal notranslate"><span class="pre">read_file_by_line/2-3</span></code> predicates). Reading line by line
is usually the best option for par