Package jp.ac.kobe_u.cs.prolog.lang

Examples of jp.ac.kobe_u.cs.prolog.lang.ListTerm


        //START inline expansion of $get_level(a(7))
        if (! a7.unify(new IntegerTerm(engine.B0), engine.trail)) {
            return engine.fail();
        }
        //END inline expansion
        a8 = new ListTerm(new VariableTerm(engine), new VariableTerm(engine));
        //START inline expansion of $unify(a(1),a(8))
        if (! a1.unify(a8, engine.trail)) {
            return engine.fail();
        }
        //END inline expansion
View Full Code Here


        } else {
            return engine.fail();
        }
        a7 = new VariableTerm(engine);
        a8 = new VariableTerm(engine);
        a9 = new ListTerm(a7, a8);
        p1 = new PRED_put_char_2(a6, s17, cont);
        p2 = new PRED_$write_term_args_5(a8, s9, new VariableTerm(engine), a5, a6, p1);
        p3 = new PRED_put_char_2(a6, s16, p2);
        p4 = new PRED_$write_atom_5(a7, a3, new VariableTerm(engine), a5, a6, p3);
        return new PRED_$univ_2(a1, a9, p4);
View Full Code Here

    if (!(hash instanceof HashMapOfTerm)) {
      throw new InternalException(this + ": Hash is not HashtableOfTerm");
    }
    Term keys = SYM_NIL;
    for (Term term : ((HashMapOfTerm) hash).keySet()) {
      keys = new ListTerm(term, keys);
    }
    if (!a2.unify(keys, engine.trail)) {
      return engine.fail();
    }
    return cont;
View Full Code Here

    // '$leash'(A):-[retractall('jp.ac.kobe_u.cs.prolog.builtin':'$current_leash'(B)),'$assert_leash'(A),print_message(info,[leashing,stopping,on,A])]
        Term[] y1 = {new VariableTerm(engine)};
        a2 = new StructureTerm(s4, y1);
        Term[] y2 = {s3, a2};
        a3 = new StructureTerm(s2, y2);
        a4 = new ListTerm(a1, s1);
        a5 = new ListTerm(s11, a4);
        a6 = new ListTerm(s10, a5);
        a7 = new ListTerm(s7, a6);
        p1 = new PRED_print_message_2(s5, a7, cont);
        p2 = new PRED_$assert_leash_1(a1, p1);
        return new PRED_retractall_1(a3, p2);
    }
View Full Code Here

            return engine.fail();
        }
        //END inline expansion
        a5 = new VariableTerm(engine);
        a6 = new VariableTerm(engine);
        a7 = new ListTerm(s2, a5);
        Term[] y1 = {a6, a1};
        a8 = new StructureTerm(s3, y1);
        Term[] y2 = {s5, a2};
        a9 = new StructureTerm(s4, y2);
        a10 = new VariableTerm(engine);
View Full Code Here

        //START inline expansion of $get_level(a(4))
        if (! a4.unify(new IntegerTerm(engine.B0), engine.trail)) {
            return engine.fail();
        }
        //END inline expansion
        a5 = new ListTerm(new VariableTerm(engine), new VariableTerm(engine));
        //START inline expansion of $unify(a(1),a(5))
        if (! a1.unify(a5, engine.trail)) {
            return engine.fail();
        }
        //END inline expansion
View Full Code Here

            if (! s1.unify(args[0], engine.trail))
                return engine.fail();
            a4 = args[1];
        } else if (a3.isVariable()){
            a4 = new VariableTerm(engine);
            ((VariableTerm) a3).bind(new ListTerm(s1, a4), engine.trail);
        } else {
            return engine.fail();
        }
        a4 = a4.dereference();
        if (a4.isList()){
            Term[] args = {((ListTerm)a4).car(), ((ListTerm)a4).cdr()};
            a5 = args[0];
            if (! s3.unify(args[1], engine.trail))
                return engine.fail();
        } else if (a4.isVariable()){
            a5 = new VariableTerm(engine);
            ((VariableTerm) a4).bind(new ListTerm(a5, s3), engine.trail);
        } else {
            return engine.fail();
        }
        a6 = new VariableTerm(engine);
        //START inline expansion of $get_level(a(6))
View Full Code Here

    }
    tmp = Nil;
    tmp2 = null;
    for (int i = list.length - 1; i >= 0; i--) {
      if (!list[i].equals(tmp2)) {
        tmp = new ListTerm(list[i], tmp);
      }
      tmp2 = list[i];
    }
    if (!a2.unify(tmp, engine.trail)) {
      return engine.fail();
View Full Code Here

      t = Prolog.Nil;
      for (int i = chars.length; i > 0; i--) {
        if (!Character.isDefined((int) chars[i - 1])) {
          throw new RepresentationException(this, 0, "character");
        }
        t = new ListTerm(new IntegerTerm(chars[i - 1]), t);
      }
      if (!a2.unify(t, engine.trail)) {
        return engine.fail();
      }
      return cont;
View Full Code Here

      // car is an integer
      int i = ((IntegerTerm) car).intValue();
      Term e = engine.internalDB.get(i);
      if (e != null) {
        Term[] arg = { e, car };
        x = new ListTerm(new StructureTerm(COMMA, arg), x);
      }
      // else {
      // System.out.println("index " + i + " is deleted.");
      // }
View Full Code Here

TOP

Related Classes of jp.ac.kobe_u.cs.prolog.lang.ListTerm

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.