lojix/wam_prolog/src/main/com/thesett/aima/logic/fol/wam/builtins/Disjunction.java
private void gatherDisjunctions(Disjunction disjunction, List<Term> expressions)
    {
        // Left argument.
        gatherDisjunctionsExploreArgument(disjunction.getArguments()[0], expressions);

        // Right argument.
        gatherDisjunctionsExploreArgument(disjunction.getArguments()[1], expressions);
    }
private void gatherDisjunctions(Disjunction disjunction, List<Term> expressions)
    {
        // Left argument.
        gatherDisjunctionsExploreArgument(disjunction.getArguments()[0], expressions);

        // Right argument.
        gatherDisjunctionsExploreArgument(disjunction.getArguments()[1], expressions);
    }
Gathers the functors to compile as a sequence of choice points. These exist as the arguments to disjunctions
recursively below the supplied disjunction. They are flattened into a list, by performing a left-to-right depth
first traversal over the disjunctions, and adding their arguments into a list.

@param disjunction The disjunction to explore the arguments of.
@param expressions The flattened list of disjunctive terms.