lojix/logic/src/main/com/thesett/aima/logic/fol/isoprologparser/PrologParser.java
public Term[] arglist() throws SourceCodeException
    {
        Term term = term();
        List<Term> result = TermUtils.flattenTerm(term, Term.class, ",", interner);

        return result.toArray(new Term[result.size()]);
    }
public Term[] arglist() throws SourceCodeException
    {
        Term term = term();
        List<Term> result = TermUtils.flattenTerm(term, Term.class, ",", interner);

        return result.toArray(new Term[result.size()]);
    }
Parses a sequence of terms as a comma seperated argument list. The ',' operator in prolog can be used as an
operator, when it behaves as a functor of arity 2, or it can be used to separate a sequence of terms that are
arguments to a functor or list. The sequence of functors must first be parsed as a term, using the operator
precedence of "," to form the term. This method takes such a term and flattens it back into a list of terms,
breaking it only on a sequence of commas. Terms that have been parsed as a bracketed expression will not be
broken up.

<p/>For example, 'a, b, c' is broken into the list { a, b, c}. The example, 'a, (b, c), d' is broken into the
list { a, (b, c), d} and so on.

@return A sequence of terms parsed as a term, then flattened back into a list seperated on commas.

@throws SourceCodeException If the token sequence is not a valid term.