My silly little prototype-based catlang know has graphics going.

object enter
object enter
100 >x
100 >y
leave >position
object enter
25 >x
25 >y
leave >size
object enter
1 >r 1 >g 0 >b
leave >color
leave >player

: draw
player@ enter
"fill" >fill-mode :rectangle
leave drop ;

#catlang #catlangjam #programming

#crochet #catlang #programming
Making a CARgo Net!!

The second one will necessarily be a CDRgo net. Sorry I have #LISP when I talk about code.
#makestuff

i know that #catlang folks hang out on discord but i'm squatting the #catlang IRC channel on libera.chat if anyone wants to say hi

is this anything? a turing machine language? essentially a readable brainfuck?

use < and > to move the tape head, and any (non-reserved) word gets written at the current head position

the if statements compare the current word against the argument given in parenthesis

there are no variables. you can only write data to the tape and hope you remember where you left it

it will be interesting to see if i can make the tape store instructions, not just data

#catlang #forth #asm #brainfuck

if you reserve the name in advance (by assigning it to the address of the "no op" function _ for example) recursion is pretty straightforward in #hither!

i say straightforward, but it definitely did take me a long time to figure out the right stack yoga for this factorial function 😅

#catlang

still not sure what i'm really DOING per se, but i added functions to my little #forth i'm writing in #zig and calling hither. every function is a lambda by default: "{ ... }" creates a lambda and pushes its address onto the stack; to give it a name you just use the variable naming syntax.

i hasten to add this language is still fundamentally capable of not much (yet?) but i'm having fun :)

#catlang #theWorkshop