#include "bprolog.h"

test_interface_c_pred(){
  TERM origX = bp_get_call_arg(1,2);
  TERM X = bp_get_call_arg(2,2);
  TERM call;
  
  call = bp_build_structure("test_interface_prolog_pred",2);
  bp_unify(bp_get_arg(1,call),bp_build_integer(bp_get_integer(origX)+1));
  bp_unify(bp_get_arg(2,call),X);
  bp_write(call);
  bp_call_term(call);
}

main(argc,argv)
int             argc;
char           *argv[];
{

  int sol;
  TERM query;
  int res;

  initialize_bprolog(argc,argv);

  insert_cpred("test_interface_c_pred",2,test_interface_c_pred);
  
  bp_call_string("[test_c_interface]");
  
  query = bp_build_structure("test_interface_prolog_pred",2); /* "test_interface_prolog_pred(0,X)" */
  bp_unify(bp_build_integer(0),bp_get_arg(1,query));

  bp_write(query);
  bp_call_term(query);
  bp_call_string("statistics");
}


