TurtleBlocks!

I wanted to share my project TurtleBlocks!
Inside is a collection of useful blocks I coded!

As usual, I go on a useless rant about some random unimportant very very minor things in this project.
Ignore the rest of my post if you’re happy with your project.


The below blocks already exist: the text contains block is already in file -> libraries. you can also say
([length V] of (split [something] by [something else v])) != [1] 

the maximum and minimum blocks are primitives (blocks already in the default block palette)

Nitpicks:
I kinda think the thing with the a block @> a block <t>@< is a bit unnecessary here

The block with lists can just be


Just wondering, why there were block variables in this block? Maybe you were trying to add script variables ((a)) @> ?

also, turtleblocks already exists… and its a snap/scratch like Logo inspired language: https://turtle.sugarlabs.org/

I thought block variables were supposed to be script variables for the blocks…

Usually I don’t worry about efficiency, and in my own project I’d do it more or less this way, but since the context is providing blocks for general use, I think it’s worth noting that KEEP generates an entirely new list, which is used once then discarded. So I’d be tempted to write it as


I think it’s probably more efficient to compute both ALL TRUE and ANY TRUE than to keep testing TF for every item, especially since only one of them is modified each time through the loop.

I thought block variables were supposed to be script variables for the blocks…

Yeah, I wish we had a better name for them. Really it should be “static variables” or “persistent variables” or some such thing. The variables are created the first time a particular copy of the block is used, and stick around forever.

Include a turtle-related block so the title is not a misnomer :slight_smile: