Support experimental bit in ++ap and ++al.

This commit is contained in:
C. Guy Yarvin 2018-01-29 18:58:36 -08:00
parent 453c8a3e9f
commit dfe9265576
5 changed files with 23 additions and 10 deletions

View File

@ -216,7 +216,7 @@
u3_noun u3qfp_hack(u3_noun, u3_noun);
u3_noun u3qfp_late(u3_noun);
u3_noun u3qfp_open(u3_noun, u3_noun);
u3_noun u3qfp_open(u3_noun, u3_noun, u3_noun);
u3_noun u3qfp_nepo(u3_noun, u3_noun);
u3_noun u3qfp_rake(u3_noun);

View File

@ -11,7 +11,7 @@
u3_noun u3wfp_hack(u3_noun);
static u3_noun
_ap_open_l(u3_noun, u3_noun);
_ap_open_l(u3_noun, u3_noun, u3_noun);
// make sure these match the array below!
//
@ -1000,14 +1000,21 @@
*/
static u3_noun
_ap_open_n(u3_noun ter,
u3_noun fab,
u3_noun gen)
{
u3_noun cor = _ap_core(ter, gen);
#if 0
if ( c3n == fab ) {
cor = u3i_molt(core, 14, c3n, 0);
}
#endif
return u3j_soft(cor, "open");
}
static u3_noun
_ap_open_l(u3_noun ter,
u3_noun fab,
u3_noun gen)
{
#if 0
@ -1019,15 +1026,16 @@
return _ap_open_n(ter, gen);
}
#else
return _ap_open_n(ter, gen);
return _ap_open_n(ter, fab, gen);
#endif
}
u3_noun
u3qfp_open(u3_noun ter,
u3_noun fab,
u3_noun gen)
{
return _ap_open_l(ter, gen);
return _ap_open_l(ter, fab, gen);
}
u3_noun
@ -1040,7 +1048,7 @@
} else {
u3_noun ter = u3r_at(u3x_con, cor);
return u3qfp_open(ter, gen);
return u3qfp_open(ter, c3y, gen);
}
}

View File

@ -390,7 +390,8 @@
if ( c3n == u3du(gen) ) {
u3_noun ter = u3r_at(u3x_con_3, van);
u3_noun rex = u3qfp_open(ter, gen);
u3_noun fab = u3r_at(u3qfu_van_fab, van);
u3_noun rex = u3qfp_open(ter, fab, gen);
ret = _mint_in(van, sut, gol, rex);
u3z(rex);
@ -416,7 +417,8 @@
} else switch ( u3h(gen) ) {
default: {
u3_noun ter = u3r_at(u3x_con_3, van);
u3_noun rex = u3qfp_open(ter, gen);
u3_noun fab = u3r_at(u3qfu_van_fab, van);
u3_noun rex = u3qfp_open(ter, fab, gen);
if ( c3y == u3r_sing(rex, gen) ) {
#if 1

View File

@ -341,7 +341,8 @@
if ( c3n == u3du(gen) ) {
u3_noun ter = u3r_at(u3x_con_3, van);
u3_noun rex = u3qfp_open(ter, gen);
u3_noun fab = u3r_at(u3qfu_van_fab, van);
u3_noun rex = u3qfp_open(ter, fab, gen);
ret = _mull_in(van, sut, gol, dox, rex);
u3z(rex);
@ -366,7 +367,8 @@
else switch ( u3h(gen) ) {
default: {
u3_noun ter = u3r_at(u3x_con_3, van);
u3_noun rex = u3qfp_open(ter, gen);
u3_noun fab = u3r_at(u3qfu_van_fab, van);
u3_noun rex = u3qfp_open(ter, fab, gen);
if ( c3y == u3r_sing(rex, gen) ) {
#if 1

View File

@ -217,7 +217,8 @@
if ( c3n == u3du(gen) ) {
open: {
u3_noun ter = u3r_at(u3x_con_3, van);
u3_noun rex = u3qfp_open(ter, gen);
u3_noun fab = u3r_at(u3qfu_van_fab, van);
u3_noun rex = u3qfp_open(ter, fab, gen);
u3_noun ret;
if ( c3y == u3r_sing(rex, gen) ) {