mirror of
https://github.com/urbit/shrub.git
synced 2024-12-28 22:54:15 +03:00
Add test user-level jet.
This commit is contained in:
parent
afff845f97
commit
b927a7bf78
4
Makefile
4
Makefile
@ -250,6 +250,9 @@ J_F_OFILES_UT=\
|
||||
j/f/ut_tock.o \
|
||||
j/f/ut_wrap.o
|
||||
|
||||
J_G_OFILES=\
|
||||
j/g/sqar.o
|
||||
|
||||
J_OFILES=\
|
||||
$(J_A_OFILES) \
|
||||
$(J_B_OFILES) \
|
||||
@ -259,6 +262,7 @@ J_OFILES=\
|
||||
$(J_E_OFILES_ED) \
|
||||
$(J_F_OFILES) \
|
||||
$(J_F_OFILES_UT) \
|
||||
$(J_G_OFILES) \
|
||||
j/tree.o
|
||||
|
||||
BASE_OFILES=$(N_OFILES) $(J_OFILES)
|
||||
|
5
i/j/w.h
5
i/j/w.h
@ -195,3 +195,8 @@
|
||||
u3_noun u3wfu_snub(u3_noun);
|
||||
u3_noun u3wfu_tock(u3_noun);
|
||||
u3_noun u3wfu_wrap(u3_noun);
|
||||
|
||||
|
||||
/** Tier 7.
|
||||
**/
|
||||
u3_noun u3wg_sqar(u3_noun);
|
||||
|
2
i/n/j.h
2
i/n/j.h
@ -44,7 +44,7 @@
|
||||
/* u3j_core: driver definition.
|
||||
*/
|
||||
typedef struct _u3j_core {
|
||||
c3_c* cos_c; // control string
|
||||
c3_c* cos_c; // control string
|
||||
struct _u3j_harm* arm_u; // blank-terminated static list
|
||||
struct _u3j_core* dev_u; // blank-terminated static list
|
||||
struct _u3j_core* par_u; // dynamic parent pointer
|
||||
|
34
j/g/sqar.c
Normal file
34
j/g/sqar.c
Normal file
@ -0,0 +1,34 @@
|
||||
/* j/1/sqgr.c
|
||||
**
|
||||
** This file is in the public domain.
|
||||
*/
|
||||
#include "all.h"
|
||||
|
||||
|
||||
/* functions
|
||||
*/
|
||||
u3_noun
|
||||
u3qg_sqar(u3_atom a)
|
||||
{
|
||||
mpz_t a_mp;
|
||||
|
||||
fprintf(stderr, "C squared %d!\r\n", a);
|
||||
|
||||
u3r_mp(a_mp, a);
|
||||
mpz_mul(a_mp, a_mp, a_mp);
|
||||
|
||||
return u3i_mp(a_mp);
|
||||
}
|
||||
u3_noun
|
||||
u3wg_sqar(u3_noun cor)
|
||||
{
|
||||
u3_noun a;
|
||||
|
||||
if ( (u3_none == (a = u3r_at(u3x_sam, cor))) ||
|
||||
(c3n == u3ud(a)) )
|
||||
{
|
||||
return u3m_bail(c3__exit);
|
||||
} else {
|
||||
return u3qg_sqar(a);
|
||||
}
|
||||
}
|
19
j/tree.c
19
j/tree.c
@ -333,6 +333,24 @@ static u3j_harm _mood__hoon__al_a[] =
|
||||
};
|
||||
#endif
|
||||
|
||||
static u3j_harm _util_sqar_a[] = {{".2", u3wg_sqar, c3y}, {}};
|
||||
static u3j_core _util_d[] =
|
||||
{ { "sqar", _util_sqar_a },
|
||||
{}
|
||||
};
|
||||
|
||||
#if 0
|
||||
static u3j_core _zuse_d[] =
|
||||
{ { "util", 0, _util_d },
|
||||
{}
|
||||
};
|
||||
#endif
|
||||
|
||||
static u3j_core _arvo_d[] =
|
||||
{ { "util", 0, _util_d },
|
||||
{}
|
||||
};
|
||||
|
||||
static u3j_core _mood__hoon_d[] =
|
||||
{ { "add", _mood__hoon_add_a },
|
||||
{ "dec", _mood__hoon_dec_a },
|
||||
@ -451,6 +469,7 @@ static u3j_core _mood__hoon_d[] =
|
||||
{ "ap", _mood__hoon__ap_a },
|
||||
// { "al", _mood__hoon__al_a },
|
||||
{ "ut", _mood__hoon__ut_a, _mood__hoon__ut_d },
|
||||
{ "arvo", 0, _arvo_d },
|
||||
#endif
|
||||
{}
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user