shrub/j/6/al.c

42 lines
723 B
C
Raw Normal View History

2013-12-27 06:43:25 +04:00
/* j/6/al.c
**
** This file is in the public domain.
*/
#include "all.h"
2014-09-04 07:10:43 +04:00
2013-12-27 06:43:25 +04:00
/* ~(. al gen)
*/
2014-09-06 00:13:24 +04:00
static u3_noun
_al_core(u3_noun van,
u3_noun gen)
2013-12-27 06:43:25 +04:00
{
2014-09-06 00:13:24 +04:00
u3_noun ter = u3_cr_at(u3_cv_con_3, van);
u3_noun gat = u3_cj_hook(u3k(ter), "al");
2014-09-04 01:33:18 +04:00
2014-09-06 00:13:24 +04:00
return u3_ci_molt(gat, u3_cv_sam, u3k(gen), 0);
2013-12-27 06:43:25 +04:00
}
/* ~(bunt al gen)
*/
2014-09-06 00:13:24 +04:00
u3_noun
2014-10-10 05:27:02 +04:00
u3_cqfl_bunt(u3_noun van, u3_noun gen)
2013-12-27 06:43:25 +04:00
{
2014-09-06 00:13:24 +04:00
u3_noun cor = _al_core(van, gen);
2013-12-27 06:43:25 +04:00
2014-09-06 00:13:24 +04:00
return u3_cj_hook(cor, "bunt");
2013-12-27 06:43:25 +04:00
}
2014-01-04 11:28:16 +04:00
/* ~(whip al gen)
*/
2014-09-06 00:13:24 +04:00
u3_noun
u3_cqfl_whip(u3_noun van,
u3_noun gen,
u3_noun axe) //
2014-01-04 11:28:16 +04:00
{
2014-09-06 00:13:24 +04:00
u3_noun cor = _al_core(van, gen);
u3_noun gat = u3_cj_hook(u3k(cor), "whip");
2014-01-04 11:28:16 +04:00
2014-09-06 00:13:24 +04:00
return u3_cn_slam_on(gat, u3k(axe));
2014-01-04 11:28:16 +04:00
}