Discuss Scratch
- Discussion Forums
- » Suggestions
- » Better boolean inputs — 12:2 Support
- cruncherBones
-
Scratcher
500+ posts
Better boolean inputs — 12:2 Support
What happens if you want the defaut to be true? No support, simple workaround a confusing
- TheSmartGuy1234
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
No support.
<[ ] :: control>is just
<[] = [true]>and it is too complex. It's like a
go to center:: motionblock when you can just do
go to x: (0) y: (0)(that one got rejected because then new scratchers will have to learn the coordinates system) also how are new scratchers supposed to understand this block? There is literally no text explaining it.
Last edited by TheSmartGuy1234 (Jan. 8, 2022 02:36:17)
- TheSmartGuy1234
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
Workaround: The item of list block is secretly a boolean!
just doBugs aren't workarounds!if (item (1 v) of [list v] :: list) then
...
end
- VeryFamus
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
Support. I personally find it annoying that I can’t type in and, or, or not booleans. And I can’t put variables in either. Instead, I have to put in a compatible set of booleans of less than /greater than in order to slot variables inside/type in there.
I’m not 100% sure this is what you are talking about, but I’m at least 60%.
I’m not 100% sure this is what you are talking about, but I’m at least 60%.
- medians
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
No support.Did you read the original post?<[ ] :: control>is just<[] = [true]>and it is a bit complex and completely useless (see above)
- TheSmartGuy1234
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
Updated my post please update yoursNo support.Did you read the original post?<[ ] :: control>is just<[] = [true]>and it is a bit complex and completely useless (see above)
- lolecksdeehaha
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
Support, if it works with falsy falues, like empty, 0, “false”, and true values if it's not “true”, or 1. If it's not those it should be true.
- medians
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
Let me guess people are too stupid to click a button in 2021Updated my post please update yoursNo support.Did you read the original post?<[ ] :: control>is just<[] = [true]>and it is a bit complex and completely useless (see above)
- lolecksdeehaha
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
No support.There's no text explaining all the math blocks (yes, I know what they are.)<[ ] :: control>is just<[] = [true]>and it is too complex. It's like ago to center:: motionblock when you can just dogo to x: (0) y: (0)also how are new scratchers supposed to understand this block? There is literally no text explaining it.
new-to-scratch POV
((0) mod (0)) // ???How is this different? It could be structured like
([mathy function v] of (9)::operators) // ???
<[] is true?::operators>
Building on to this,
<[1] is true?::operators> // true
<[0] is true?::operators> // false
<[true] is true?::operators> // true
<[false] is true?::operators> // false
<(empty variable) is true?::operators> // false
<(empty list::list) is true?::operators> // false
Last edited by lolecksdeehaha (Nov. 24, 2021 19:55:15)
- medians
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
maybeNo support.There's no text explaining all the math blocks (yes, I know what they are.)<[ ] :: control>is just<[] = [true]>and it is too complex. It's like ago to center:: motionblock when you can just dogo to x: (0) y: (0)also how are new scratchers supposed to understand this block? There is literally no text explaining it.
new-to-scratch POV((0) mod (0)) // ???How is this different? It could be structured like
([mathy function v] of (9)::operators) // ???<[] is true?::operators>
<[] is [true v]? ::operators> //it would have true and false
- lolecksdeehaha
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
Yeah, but there's always the~snip~maybe<[] is [true v]? ::operators> //it would have true and false
<not<>>block.
<not <[false] is true?::operators>> // true
- lolecksdeehaha
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
huh, was looking for this topic, found it in the dust! Bump!
- VeryFamus
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
Support. I personally find it annoying that I can’t type in and, or, or not booleans. And I can’t put variables in either. Instead, I have to put in a compatible set of booleans of less than /greater than in order to slot variables inside/type in there.Nowadays, I actually disagree with my old support. Sure it has valid reasoning, but that doesn’t remove the fact that if <> then scripts only take true/false. My major problem is this: considering reporters don’t report true/false, wouldn’t that mean that it isn’t true, this not running the script in the if <> then even if the intention was for it to be true? Also, this could make repeat until blocks be just another forever block. No support. Overall would just break Boolean inputs.
I’m not 100% sure this is what you are talking about, but I’m at least 60%.
Also, the reason the Boolean inputs are designed to not accept reporters or typing is because they can’t determine text as true/false. The Boolean inputs can only report 2 options: true or false.
- brooc210
-
Scratcher
100+ posts
Better boolean inputs — 12:2 Support
No support.<[ ] :: control>is just<[] = [true]>and it is too complex. It's like ago to center:: motionblock when you can just dogo to x: (0) y: (0)(that one got rejected because then new scratchers will have to learn the coordinates system) also how are new scratchers supposed to understand this block? There is literally no text explaining it.
TheWorkaround: The item of list block is secretly a boolean!just doBugs aren't workarounds!if (item (1 v) of [list v] :: list) then
...
end
Edit:
And they could just renameto
Edit 2:
Proof
Last edited by brooc210 (Jan. 8, 2022 08:46:51)
- brooc210
-
Scratcher
100+ posts
Better boolean inputs — 12:2 Support
I agreeNo support.There's no text explaining all the math blocks (yes, I know what they are.)<[ ] :: control>is just<[] = [true]>and it is too complex. It's like ago to center:: motionblock when you can just dogo to x: (0) y: (0)also how are new scratchers supposed to understand this block? There is literally no text explaining it.
new-to-scratch POV((0) mod (0)) // ???How is this different? It could be structured like
([mathy function v] of (9)::operators) // ???<[] is true?::operators>
Building on to this,<[1] is true?::operators> // true
<[0] is true?::operators> // false
<[true] is true?::operators> // true
<[false] is true?::operators> // false
<(empty variable) is true?::operators> // false
<(empty list::list) is true?::operators> // false
- TheSmartGuy1234
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
You can expect new scratchers to understand mathNo support.There's no text explaining all the math blocks (yes, I know what they are.)blah blahblock when you can just dogo to x: (0) y: (0)also how are new scratchers supposed to understand this block? There is literally no text explaining it.
new-to-scratch POV((0) mod (0)) // ???How is this different? It could be structured like
([mathy function v] of (9)::operators) // ???<[] is true?::operators>
booleans
- lolecksdeehaha
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
Yes, in fact, you can. However, there are many blocks in the palette that require at least a bit of programming knowledge to use, and including a label on the said block helps, by a TON, to understand it.~snip~You can expect new scratchers to understand math
- Geotale
-
Scratcher
100+ posts
Better boolean inputs — 12:2 Support
Building on to this,Bit of an issue – This isn't how Scratch handles booleans. More realistically, if I'm not mistaken, Scratch would currently return:<[1] is true?::operators> // true
<[0] is true?::operators> // false
<[true] is true?::operators> // true
<[false] is true?::operators> // false
<(empty variable) is true?::operators> // false
<(empty list::list) is true?::operators> // false
<[] is true?::operators> // trueIn order for any block like this to work, there would have to be some weird changes.
<[1] is true?::operators> // true
<[0] is true?::operators> // true
<((0) + (1)) is true?::operators> // true
<((0) + (0)) is true?::operators> // false
<[true] is true?::operators> // true
<[false] is true?::operators> // true
<<not <>> is true?::operators> // true
<<not <not <>>> is true?::operators> // false
<(empty variable) is true?::operators> // Depends on the variable's type -- If it's a string, it returns true. If it's a number, it returns false
<(empty list::list) is true?::operators> // false
Note, this also means the suggestions stating to use
<(val) = [true]>aren't completely correct (Try 1 == true, for example. It will return false). Doing
<(val) = <not <>>>should work just fine in all cases I believe. It returns exactly what you brought up as the theoretical return values for this suggested block.
Importantly, this is not how
if (item (...) of [list v] :: list) thenworks – It should work like the cases I had explained.
end
- TheSmartGuy1234
-
Scratcher
1000+ posts
Better boolean inputs — 12:2 Support
math isn't one but this is oneYes, in fact, you can. However, there are many blocks in the palette that require at least a bit of programming knowledge to use, and including a label on the said block helps, by a TON, to understand it.~snip~You can expect new scratchers to understand math
- Discussion Forums
- » Suggestions
-
» Better boolean inputs — 12:2 Support








