5 1 >> u sqr u
-The interpreter could notice that `5 1 >>` and `u sqr` can proceed in parallel without interfering with each other. The `dipdip` combinator could be written to somehow hint to the interpreter that it should check for this posibility.
+The interpreter could notice that `5 1 >>` and `u sqr` can proceed in parallel without interfering with each other. The `dipdip` combinator could be written to somehow hint to the interpreter that it should check for this possibility.
## JIT
+Great talk from Jon Purdy in 2017, he wrote Kitten.
+Concatenative Programming: From Ivory to Metal
https://www.youtube.com/watch?v=_IgqJr8jG8M
-Concatenative Programming: From Ivory to Metal
-Great talk from Jon Purdy in 2017, he wrote Kitten.
"Complete and Easy Bidirectional Typechecking
for Higher-Rank Polymorphism"
Basis Function
-Take two numbers `a` and `b` from the stack and raise `a` to the `n`th
-power. (`b` is on the top of the stack.)
+Take two numbers `a` and `n` from the stack and raise `a` to the `n`th
+power. (`n` is on the top of the stack.)
a n pow
-------------
while (candidate) {
// Compare pointers then hashes (since we already have
// one hash I'm guessing that that's cheaper or at least
- // no more expensive than string comparision.)
+ // no more expensive than string comparison.)
if (candidate == symbol || hash == hash_key(candidate))
break;
index = (index + increment) % CAPACITY;
{
return cons(JOY_VALUE(joySymbol, ht_insert(symbol)), stack);
}
+
u32
push_int(u32 n, u32 stack)
{