https://snap.berkeley.edu/snap/snap.html#present:Username=d4s_over_dt4&ProjectName=attempt%20biject%20codification
Quite a ton of HOFs!
The only problem is the mapping,which needs js and is not quite unique or valid(i had to remove the %clr stuff to let people who don't know the name of the specs(including me) use this,but doing that makes some stuff not unique or valid)
I would try to listify the assoc and modify it and store it in another block
Why doesn't my assoc table generator blockify?
Nevermind,I deleted the refuseToBlockify() function and it worked
wait no it didn't
Will fix assoc after dinner
https://snap.berkeley.edu/snap/snap.html#present:Username=d4s_over_dt4&ProjectName=attempt%20biject%20codification
Quite a lot of the assocs have been modified,so the mapping block can also be viewed as "How I would design snap's block specs if it wasn't for teaching kids who don't nessecarily know another text programming language"
I must modify the assocs because it would bug out(either being empty,werid,or repetitive) or be awkward as a function name rather than a block spec
This has a small bug from the inconsistensies of snap when joining on a ring(sometimes goes to ring param,sometimes go to main block i think)
The blocks would work weridly when input one block only
To prevent that,stuff the "no-op for stuffing (prevent errors)" in my wip os 2 project
or just stuff your own no-op
Wait...
Oh no!!!!!!!!!!!!!
It cannot process inputs that have block piles in them!
(the fix of the bug would go to my os 2 project)
fixed
https://snap.berkeley.edu/snap/snap.html#present:Username=d4s_over_dt4&ProjectName=os%202
now i just have to make the console of that project
also,you mustnt run multiple script variables on the same line(every script variable needs its own line)