_isnt_bool _isnt_two_bools

These probably won't last?
This commit is contained in:
sforman 2023-08-02 09:06:11 -07:00
parent f15eef1c56
commit 5585ae5d31
5 changed files with 28 additions and 13 deletions

View File

@ -172,6 +172,8 @@ _mape, def__mape
_map0, def__map0 _map0, def__map0
_map1, def__map1 _map1, def__map1
_map2, def__map2 _map2, def__map2
_isnt_bool, def__isnt_bool
_isnt_two_bools, def__isnt_two_bools
_\/_, def___REVERSE_SOLIDUS_SOLIDUS__ _\/_, def___REVERSE_SOLIDUS_SOLIDUS__
/\, def_SOLIDUS_REVERSE_SOLIDUS /\, def_SOLIDUS_REVERSE_SOLIDUS
\/, def_REVERSE_SOLIDUS_SOLIDUS \/, def_REVERSE_SOLIDUS_SOLIDUS

View File

@ -135,6 +135,8 @@ JoyList def__mape_body;
JoyList def__map0_body; JoyList def__map0_body;
JoyList def__map1_body; JoyList def__map1_body;
JoyList def__map2_body; JoyList def__map2_body;
JoyList def__isnt_bool_body;
JoyList def__isnt_two_bools_body;
JoyList def___REVERSE_SOLIDUS_SOLIDUS___body; JoyList def___REVERSE_SOLIDUS_SOLIDUS___body;
JoyList def_SOLIDUS_REVERSE_SOLIDUS_body; JoyList def_SOLIDUS_REVERSE_SOLIDUS_body;
JoyList def_REVERSE_SOLIDUS_SOLIDUS_body; JoyList def_REVERSE_SOLIDUS_SOLIDUS_body;
@ -271,9 +273,11 @@ init_defs(void)
def__map0_body = text_to_expression("[_map1] dipd _map2"); def__map0_body = text_to_expression("[_map1] dipd _map2");
def__map1_body = text_to_expression("stackd shift"); def__map1_body = text_to_expression("stackd shift");
def__map2_body = text_to_expression("[infrst] cons dipd roll< swons"); def__map2_body = text_to_expression("[infrst] cons dipd roll< swons");
def___REVERSE_SOLIDUS_SOLIDUS___body = text_to_expression("[not not] [not] branch"); def__isnt_bool_body = text_to_expression("not not");
def_SOLIDUS_REVERSE_SOLIDUS_body = text_to_expression("[not not] ii [pop false] [] branch"); def__isnt_two_bools_body = text_to_expression("[_isnt_bool] ii");
def_REVERSE_SOLIDUS_SOLIDUS_body = text_to_expression("[not not] ii [] [pop true] branch"); def___REVERSE_SOLIDUS_SOLIDUS___body = text_to_expression("[_isnt_bool] [not] branch");
def_SOLIDUS_REVERSE_SOLIDUS_body = text_to_expression("_isnt_two_bools [pop false] [] branch");
def_REVERSE_SOLIDUS_SOLIDUS_body = text_to_expression("_isnt_two_bools [] [pop true] branch");
} }
@ -404,6 +408,8 @@ void def__mape(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression)
void def__map0(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def__map0_body, expression); } void def__map0(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def__map0_body, expression); }
void def__map1(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def__map1_body, expression); } void def__map1(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def__map1_body, expression); }
void def__map2(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def__map2_body, expression); } void def__map2(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def__map2_body, expression); }
void def__isnt_bool(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def__isnt_bool_body, expression); }
void def__isnt_two_bools(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def__isnt_two_bools_body, expression); }
void def___REVERSE_SOLIDUS_SOLIDUS__(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def___REVERSE_SOLIDUS_SOLIDUS___body, expression); } void def___REVERSE_SOLIDUS_SOLIDUS__(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def___REVERSE_SOLIDUS_SOLIDUS___body, expression); }
void def_SOLIDUS_REVERSE_SOLIDUS(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def_SOLIDUS_REVERSE_SOLIDUS_body, expression); } void def_SOLIDUS_REVERSE_SOLIDUS(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def_SOLIDUS_REVERSE_SOLIDUS_body, expression); }
void def_REVERSE_SOLIDUS_SOLIDUS(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def_REVERSE_SOLIDUS_SOLIDUS_body, expression); } void def_REVERSE_SOLIDUS_SOLIDUS(__attribute__((unused)) JoyListPtr stack, JoyListPtr expression) { push_quote_onto_expression(def_REVERSE_SOLIDUS_SOLIDUS_body, expression); }

View File

@ -126,6 +126,8 @@ void def__mape(JoyListPtr stack, JoyListPtr expression);
void def__map0(JoyListPtr stack, JoyListPtr expression); void def__map0(JoyListPtr stack, JoyListPtr expression);
void def__map1(JoyListPtr stack, JoyListPtr expression); void def__map1(JoyListPtr stack, JoyListPtr expression);
void def__map2(JoyListPtr stack, JoyListPtr expression); void def__map2(JoyListPtr stack, JoyListPtr expression);
void def__isnt_bool(JoyListPtr stack, JoyListPtr expression);
void def__isnt_two_bools(JoyListPtr stack, JoyListPtr expression);
void def___REVERSE_SOLIDUS_SOLIDUS__(JoyListPtr stack, JoyListPtr expression); void def___REVERSE_SOLIDUS_SOLIDUS__(JoyListPtr stack, JoyListPtr expression);
void def_SOLIDUS_REVERSE_SOLIDUS(JoyListPtr stack, JoyListPtr expression); void def_SOLIDUS_REVERSE_SOLIDUS(JoyListPtr stack, JoyListPtr expression);
void def_REVERSE_SOLIDUS_SOLIDUS(JoyListPtr stack, JoyListPtr expression); void def_REVERSE_SOLIDUS_SOLIDUS(JoyListPtr stack, JoyListPtr expression);

View File

@ -126,6 +126,8 @@ _mape popd reverse
_map0 [_map1] dipd _map2 _map0 [_map1] dipd _map2
_map1 stackd shift _map1 stackd shift
_map2 [infrst] cons dipd roll< swons _map2 [infrst] cons dipd roll< swons
_\/_ [not not] [not] branch _isnt_bool not not
/\ [not not] ii [pop false] [] branch _isnt_two_bools [_isnt_bool] ii
\/ [not not] ii [] [pop true] branch _\/_ [_isnt_bool] [not] branch
/\ _isnt_two_bools [pop false] [] branch
\/ _isnt_two_bools [] [pop true] branch

View File

@ -99,9 +99,9 @@ in_word_set (register const char *str, register size_t len)
{ {
enum enum
{ {
TOTAL_KEYWORDS = 163, TOTAL_KEYWORDS = 165,
MIN_WORD_LENGTH = 1, MIN_WORD_LENGTH = 1,
MAX_WORD_LENGTH = 14, MAX_WORD_LENGTH = 15,
MIN_HASH_VALUE = 1, MIN_HASH_VALUE = 1,
MAX_HASH_VALUE = 359 MAX_HASH_VALUE = 359
}; };
@ -216,7 +216,7 @@ in_word_set (register const char *str, register size_t len)
{""}, {""},
#line 132 "KEYWORDS.txt" #line 132 "KEYWORDS.txt"
{"second", def_second}, {"second", def_second},
#line 177 "KEYWORDS.txt" #line 179 "KEYWORDS.txt"
{"\\/", def_REVERSE_SOLIDUS_SOLIDUS}, {"\\/", def_REVERSE_SOLIDUS_SOLIDUS},
#line 131 "KEYWORDS.txt" #line 131 "KEYWORDS.txt"
{"run", def_run}, {"run", def_run},
@ -234,7 +234,7 @@ in_word_set (register const char *str, register size_t len)
{""}, {""},
#line 137 "KEYWORDS.txt" #line 137 "KEYWORDS.txt"
{"spiral_next", def_spiral_next}, {"spiral_next", def_spiral_next},
#line 176 "KEYWORDS.txt" #line 178 "KEYWORDS.txt"
{"/\\", def_SOLIDUS_REVERSE_SOLIDUS}, {"/\\", def_SOLIDUS_REVERSE_SOLIDUS},
#line 44 "KEYWORDS.txt" #line 44 "KEYWORDS.txt"
{"inscribe", inscribe}, {"inscribe", inscribe},
@ -402,12 +402,15 @@ in_word_set (register const char *str, register size_t len)
{""}, {""},
#line 94 "KEYWORDS.txt" #line 94 "KEYWORDS.txt"
{"fork", def_fork}, {"fork", def_fork},
{""}, #line 176 "KEYWORDS.txt"
{"_isnt_two_bools", def__isnt_two_bools},
#line 15 "KEYWORDS.txt" #line 15 "KEYWORDS.txt"
{"=", def_eq}, {"=", def_eq},
#line 21 "KEYWORDS.txt" #line 21 "KEYWORDS.txt"
{">=", def_ge}, {">=", def_ge},
{""}, {""}, {""}, {""}, {""},
#line 175 "KEYWORDS.txt"
{"_isnt_bool", def__isnt_bool},
#line 163 "KEYWORDS.txt" #line 163 "KEYWORDS.txt"
{"_step1", def__step1}, {"_step1", def__step1},
#line 93 "KEYWORDS.txt" #line 93 "KEYWORDS.txt"
@ -454,7 +457,7 @@ in_word_set (register const char *str, register size_t len)
{"reverse", def_reverse}, {"reverse", def_reverse},
#line 66 "KEYWORDS.txt" #line 66 "KEYWORDS.txt"
{"abs", def_abs}, {"abs", def_abs},
#line 175 "KEYWORDS.txt" #line 177 "KEYWORDS.txt"
{"_\\/_", def___REVERSE_SOLIDUS_SOLIDUS__}, {"_\\/_", def___REVERSE_SOLIDUS_SOLIDUS__},
#line 136 "KEYWORDS.txt" #line 136 "KEYWORDS.txt"
{"small", def_small}, {"small", def_small},