Minor edits.

This commit is contained in:
sforman 2023-07-24 11:28:45 -07:00
parent f844dbab6c
commit 7cd5943d89
4 changed files with 7 additions and 6 deletions

View File

@ -273,7 +273,7 @@ Which then becomes this:
5 1 >> u sqr u 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 ## JIT

View File

@ -1,8 +1,8 @@
Great talk from Jon Purdy in 2017, he wrote Kitten.
Concatenative Programming: From Ivory to Metal
https://www.youtube.com/watch?v=_IgqJr8jG8M 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 "Complete and Easy Bidirectional Typechecking
for Higher-Rank Polymorphism" for Higher-Rank Polymorphism"

View File

@ -4,8 +4,8 @@
Basis Function Basis Function
Take two numbers `a` and `b` from the stack and raise `a` to the `n`th Take two numbers `a` and `n` from the stack and raise `a` to the `n`th
power. (`b` is on the top of the stack.) power. (`n` is on the top of the stack.)
a n pow a n pow
------------- -------------

View File

@ -300,7 +300,7 @@ ht_insert(char *symbol)
while (candidate) { while (candidate) {
// Compare pointers then hashes (since we already have // Compare pointers then hashes (since we already have
// one hash I'm guessing that that's cheaper or at least // 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)) if (candidate == symbol || hash == hash_key(candidate))
break; break;
index = (index + increment) % CAPACITY; index = (index + increment) % CAPACITY;
@ -356,6 +356,7 @@ push_symbol(char *symbol, u32 stack)
{ {
return cons(JOY_VALUE(joySymbol, ht_insert(symbol)), stack); return cons(JOY_VALUE(joySymbol, ht_insert(symbol)), stack);
} }
u32 u32
push_int(u32 n, u32 stack) push_int(u32 n, u32 stack)
{ {