static u2_noun // produce _mint_bake(u2_wire wir_r, u2_noun van, // retain u2_noun sut, // retain u2_noun dab) // retain { if ( (u2_nul == dab) ) { return _0; } else { u2_noun n_dab, l_dab, r_dab; u2_as_trel(dab, &n_dab, &l_dab, &r_dab); if ( u2_no == u2_dust(n_dab) ) { return u2_bl_bail(wir_r, c3__fail); } else { u2_noun qn_dab = u2_t(n_dab); u2_noun vad; switch ( u2_h(qn_dab) ) { default: return u2_bl_bail(wir_r, c3__exit); case c3__ash: { vad = _mint_brew(wir_r, van, sut, u2_yes, u2_t(qn_dab)); break; } case c3__elm: { vad = _mint_brew(wir_r, van, sut, u2_no, u2_t(qn_dab)); break; } } if ( (u2_nul == l_dab) && (u2_nul == r_dab) ) { return vad; } else if ( (u2_nul == l_dab) ) { return u2_bc (wir_r, vad, _mint_bake(wir_r, van, sut, r_dab)); } else if ( (u2_nul == r_dab) ) { return u2_bc (wir_r, vad, _mint_bake(wir_r, van, sut, l_dab)); } else { return u2_bt (wir_r, vad, _mint_bake(wir_r, van, sut, l_dab), _mint_bake(wir_r, van, sut, r_dab)); } } } }
static u3_noun _mint_bake( u3_noun van, u3_noun sut, u3_noun dab) { if ( (u3_nul == dab) ) { return 0; } else { u3_noun n_dab, l_dab, r_dab; u3r_trel(dab, &n_dab, &l_dab, &r_dab); if ( c3n == u3du(n_dab) ) { return u3m_bail(c3__fail); } else { u3_noun qn_dab = u3t(n_dab); u3_noun vad; switch ( u3h(qn_dab) ) { default: return u3m_bail(c3__exit); case c3__ash: { vad = _mint_brew(van, sut, c3y, u3t(qn_dab)); break; } case c3__elm: { vad = _mint_brew(van, sut, c3n, u3t(qn_dab)); break; } } if ( (u3_nul == l_dab) && (u3_nul == r_dab) ) { return vad; } else if ( (u3_nul == l_dab) ) { return u3nc (vad, _mint_bake(van, sut, r_dab)); } else if ( (u3_nul == r_dab) ) { return u3nc (vad, _mint_bake(van, sut, l_dab)); } else { return u3nt (vad, _mint_bake(van, sut, l_dab), _mint_bake(van, sut, r_dab)); } } } }
static u2_noun _mint_grow(u2_wire wir_r, u2_noun van, u2_noun sut, u2_noun gol, u2_atom mel, u2_noun ruf, u2_noun dab) { u2_noun dan = _mint_in(wir_r, van, sut, c3__noun, ruf); u2_noun p_dan = u2_h(dan); u2_noun q_dan = u2_t(dan); u2_noun toc = _mint_core (wir_r, u2_rx(wir_r, p_dan), u2_bt(wir_r, c3__gold, u2_rx(wir_r, p_dan), u2_bc(wir_r, u2_nul, u2_rx(wir_r, dab)))); u2_noun dez = _mint_bake(wir_r, van, toc, dab); u2_noun zod = u2_bc(wir_r, 1, dez); u2_noun cot = _mint_core (wir_r, u2_rx(wir_r, p_dan), u2_bt(wir_r, mel, u2_rx(wir_r, p_dan), u2_bc(wir_r, u2_rx(wir_r, dez), u2_rx(wir_r, dab)))); u2_noun ret = u2_bc (wir_r, _mint_nice(wir_r, van, gol, cot), j2_mby(Pt6, cons)(wir_r, zod, q_dan)); u2_rz(wir_r, zod); u2_rz(wir_r, toc); u2_rz(wir_r, dan); return ret; }
static u3_noun _mint_grow( u3_noun van, u3_noun sut, u3_noun gol, u3_atom mel, u3_noun ruf, u3_noun dab) { u3_noun dan = _mint_in(van, sut, c3__noun, ruf); u3_noun p_dan = u3h(dan); u3_noun q_dan = u3t(dan); u3_noun toc = _mint_core (u3k(p_dan), u3nt(c3__gold, u3k(p_dan), u3nc(u3_nul, u3k(dab)))); u3_noun dez = _mint_bake(van, toc, dab); u3_noun zod = u3nc(1, dez); u3_noun cot = _mint_core (u3k(p_dan), u3nt(mel, u3k(p_dan), u3nc(u3k(dez), u3k(dab)))); u3_noun ret = u3nc ( _mint_nice(van, gol, cot), u3qf_cons(zod, q_dan)); u3z(zod); u3z(toc); u3z(dan); return ret; }