3 ms·
Yes! My son is getting into Scratch (50 projects in the last couple of months), but it has at least a couple of serious limitations as a programming language, n
by jacknews 7y ago
Yes!
My son is getting into Scratch (50 projects in the last couple of months), but it has at least a couple of serious limitations as a programming language, namely no return values from functions/blocks, and lists are not first-class, making it unnecessarily complex to implement data structures.
The one thing keeping him on Scratch (or rather, away from Snap) is the Scratch community/sharing. I'll have him and his friends consider joining Snap now.
- ngmc 7y agoScratch lists seem relatively first-class to me. Your son could probably have fun building simple data structures with them by making blocks that take an input. He can also update a "return" variable if the situation calls for it. https://en.scratch-wiki.info/wiki/List https://en.scratch-wiki.info/wiki/List
- jacknews 7y agoYup, tried setting a 'return' variable. It's less than elegant of course, and there are potential concurrency issues. Lists can't contain lists, nor can they be passed as inputs to blocks, unless you encode them as text or numbers.
- TheAsprngHacker 7y agoScratch lists are not first class. You can only create them as variables; you can't create list "values" (there are no list literals) and you can't pass lists around. You can only provide lists as arguments by choosing list variables from a dropdown of certain built-in blocks.