Discuss Scratch

-llll-
Scratcher
28 posts

Custom Values, Booleans.

Scratch has many features that are missing compared to typical programming languages, which is understandable due to its intention of being an introductory language primarily targeted towards kids and young teens.

I know that ‘returning functions’ and similar concepts have been suggested before, however I think that it could be simplified so kids can understand by expanding on the ‘Custom’ blocks. This will pull Scratch more in line with other languages and make custom-defined blocks more useful!

I present to you Custom Booleans and Custom Values.




As you can see from the mock-up above, these new custom blocks are identical to our current non-returning custom block implementation, but the new ‘Make a Boolean’ and ‘Make a Custom Value’ allows users to define new blocks that can also support other input values (using the same ‘Create a Block’ prompt).

The difference is, a value is returned to the boolean/value. So, when a script includes the custom boolean/value, the “function” is called, and the value is returned as expected.

I feel like my implementation is familiar without introducing too much complexity, and would make things a lot easier. Including this in Scratch has the following benefits:
  • Projects won't need as many variables.
  • Reduces the amount of scripts needed (especially with booleans, as an additional ‘if-statement’ may be required to check if the value stored in a variable is true or false, for example).
  • Introduces trivial concept of functions and returning values to beginners, helping them develop new skills in programming.
  • Reduces time to make a project.
  • Increases efficiency of algorithm designing in complex projects.

Hotca_ownerfunny
Scratcher
81 posts

Custom Values, Booleans.

-llll- wrote:

Scratch has many features that are missing compared to typical programming languages, which is understandable due to its intention of being an introductory language primarily targeted towards kids and young teens.

I know that ‘returning functions’ and similar concepts have been suggested before, however I think that it could be simplified so kids can understand by expanding on the ‘Custom’ blocks. This will pull Scratch more in line with other languages and make custom-defined blocks more useful!

I present to you Custom Booleans and Custom Values.




As you can see from the mock-up above, these new custom blocks are identical to our current non-returning custom block implementation, but the new ‘Make a Boolean’ and ‘Make a Custom Value’ allows users to define new blocks that can also support other input values (using the same ‘Create a Block’ prompt).

The difference is, a value is returned to the boolean/value. So, when a script includes the custom boolean/value, the “function” is called, and the value is returned as expected.

I feel like my implementation is familiar without introducing too much complexity, and would make things a lot easier. Including this in Scratch has the following benefits:
  • Projects won't need as many variables.
  • Reduces the amount of scripts needed (especially with booleans, as an additional ‘if-statement’ may be required to check if the value stored in a variable is true or false, for example).
  • Introduces trivial concept of functions and returning values to beginners, helping them develop new skills in programming.
  • Reduces time to make a project.
  • Increases efficiency of algorithm designing in complex projects.


Yes. i would like that.
WindOctahedron
Scratcher
1000+ posts

Custom Values, Booleans.

This topic is a duplicate.
Please continue the discussion in the topic provided above, to keep it in one place.
Boomer001
Scratcher
1000+ posts

Custom Values, Booleans.

I was thinking about that, and it's probably a really good idea to add.
Paddle2See
Scratch Team
1000+ posts

Custom Values, Booleans.

WindOctahedron wrote:

This topic is a duplicate.
Please continue the discussion in the topic provided above, to keep it in one place.

Thanks for the link! It does look like this is a duplicate topic so I'll close it to keep the conversation all in one place.

Please use the existing topic in the link above.

Powered by DjangoBB