Exemple #1
0
int main()
{
r__t__n = (void *)(void *)5;
r__t__expr = (void *)expr_app(expr_lambda(expr_app(expr_app(expr_var((void *)0),expr_var((void *)0)),expr_const((void *)5))),expr_lambda(expr_lambda(expr_if(expr_zero(expr_var((void *)0)),expr_const((void *)1),expr_mult(expr_var((void *)0),expr_app(expr_app(expr_var((void *)1),expr_var((void *)1)),expr_subr1(expr_var((void *)0))))))));
r__t__env = (void *)envrr_empty();
r__t__pc = ⅇ
mount_tram();
printf("Fact Test Yields: %d\n", (int)r__t__a);r__t__n = (void *)(void *)5;
r__t__expr = (void *)expr_letcc(expr_mult(expr_const((void *)5),expr_throw(expr_var((void *)0),expr_mult(expr_const((void *)2),expr_const((void *)6)))));
r__t__env = (void *)envrr_empty();
r__t__pc = ⅇ
mount_tram();
printf("Let/CC Test Yields: %d\n", (int)r__t__a);}
Exemple #2
0
/*
 * Create a new variable V and add V=e to the cxt.
 */
static expr_t context_update(context_t cxt, expr_t e)
{
    if (expr_gettype(e) == EXPRTYPE_VAR)
        panic("unexpected CSE var type");
    expr_t v;
    if (cseinfo_search(cxt->cseinfo, e, &v))
        return v;
    char *name = unique_name("F", &cxt->varid);
    var_t v0 = make_var(name);
    v = expr_var(v0);
    cxt->cseinfo = cseinfo_destructive_insert(cxt->cseinfo, e, v);
    return v;
}
Exemple #3
0
/*
 * Create a new CNF Boolean variable.
 */
static expr_t cnf_new_var(context_t context)
{
    var_t v0 = make_var(unique_name("C", &context->varid));
    expr_t v = expr_var(v0);
    return v;
}