Sindbad~EG File Manager

Current Path : /usr/home/beeson/Otter-Lambda/otter/
Upload File :
Current File : /usr/home/beeson/Otter-Lambda/otter/unify.h

// Beeson 6.26.06 added fourth line of BIND,  but can't comment that line without 
// causing compile errors.

 #define BIND(i, c1, t2, c2, trp) { struct trail *tr; \
     c1->terms[i] = t2; c1->contexts[i] = c2; \
     tr = get_trail(); tr->varnum = i; tr->context = c1; \
     if(t2->type == VARIABLE && Flags[LAMBDA_FLAG].val && c2) fix_forbidden(i,c1,t2->varnum,c2,tr); \
     tr->next = *trp; *trp = tr; }

 #define DEREFERENCE(t, c) { int i; \
     while (t->type == VARIABLE && c->terms[i = t->varnum]) \
    { t = c->terms[i]; c = c->contexts[i]; } }


Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists