Discuss Scratch

DrKat123
Scratcher
1000+ posts

Snap! user discussion

Can Snap! Or BYOB open Scratch projects (1.4 projects to be specific)

Moving from Scratch? Don't learn C or Java, try Snap!
it haz OOP
DrKat McKatFace
First of all I'm 100% human and humans does not have a cat face
and second, the Boaty McBoatFace/Parsey McParseFace madness has just begun

λ
Sharp, my new Scratch mod
Is my post/siggy worthy for an internet?
bharvey
Scratcher
1000+ posts

Snap! user discussion

DrKat123 wrote:

Can Snap! Or BYOB open Scratch projects (1.4 projects to be specific)
BYOB can open 1.4 projects. Scratch 2.0 projects can be translated to Snap! by Snapin8r2.

DrKat123
Scratcher
1000+ posts

Snap! user discussion

bharvey wrote:

DrKat123 wrote:

Can Snap! Or BYOB open Scratch projects (1.4 projects to be specific)
BYOB can open 1.4 projects. Scratch 2.0 projects can be translated to Snap! by Snapin8r2.
Oh yeah, i noticed the Snapin8r2 in the homepage of Snap!

Moving from Scratch? Don't learn C or Java, try Snap!
it haz OOP
DrKat McKatFace
First of all I'm 100% human and humans does not have a cat face
and second, the Boaty McBoatFace/Parsey McParseFace madness has just begun

λ
Sharp, my new Scratch mod
Is my post/siggy worthy for an internet?
djdolphin
Scratcher
1000+ posts

Snap! user discussion

DrKat123 wrote:

bharvey wrote:

DrKat123 wrote:

Can Snap! Or BYOB open Scratch projects (1.4 projects to be specific)
BYOB can open 1.4 projects. Scratch 2.0 projects can be translated to Snap! by Snapin8r2.
Oh yeah, i noticed the Snapin8r2 in the homepage of Snap!
Oh, wow. I hadn't noticed that the link was added. How long was that there?

@bh could you update the link to https://djdolphin.github.io/Snapin8r2/ ? Snapin8r2-test was just for testing, and I don't think it's the latest version.

!
bharvey
Scratcher
1000+ posts

Snap! user discussion

djdolphin wrote:

could you update the link to https://djdolphin.github.io/Snapin8r2/ ?
Done. It's been there for a while now.

djdolphin
Scratcher
1000+ posts

Snap! user discussion

Also, here's a screenshot of the Scratch to Snap! logo-thingy with better alignment: http://i.cubeupload.com/1IEmle.png What browser was the current screenshot taken with? I should probably fix whatever caused the “to” to be so low.

!
bharvey
Scratcher
1000+ posts

Snap! user discussion

djdolphin wrote:

What browser was the current screenshot taken with? I should probably fix whatever caused the “to” to be so low.
Thanks. I use Firefox, but probably it'll happen in any browser if you set your text zoom to 150%.

dzidzius
Scratcher
22 posts

Snap! user discussion

snap!!!!!!!!!!!!!!
DrKat123
Scratcher
1000+ posts

Snap! user discussion

dzidzius wrote:

snap!!!!!!!!!!!!!!
Please don't blockspam

Moving from Scratch? Don't learn C or Java, try Snap!
it haz OOP
DrKat McKatFace
First of all I'm 100% human and humans does not have a cat face
and second, the Boaty McBoatFace/Parsey McParseFace madness has just begun

λ
Sharp, my new Scratch mod
Is my post/siggy worthy for an internet?
bharvey
Scratcher
1000+ posts

Snap! user discussion

Today’s release is now online, it features many — in part dramatic — changes and new features:

• Use Blob API to Save Files (to Disk), Thanks, Michael!!

You can now save all projects directly to your computer disk, without having to open the XML in another browser tab and then saving it from there. This is today’s most important new feature. We hope it lets everybody save their final projects!

• Show result bubble when the user clicks on a command script that uses REPORT (You can now click on REPORT and it actually does something)

• New generic “When” hat block, enhances red stop button behavior:



this block is always “live”, it runs the script attached to it whenever its test-condition (predicate) is true, and then resumes observing the condition. You can only place predicates here that produce a quick answer, functions that take longer will raise an error.

Pressing the red stop button pauses all generic “When” blocks, pressing “stop” or the “green flag” again resumes them.

• New block (instance) variables feature (experimental):



Sometimes you want to check whether a value has changed. This is easy in the context of a loop, but when using the new generic “When” hat block” it requires another global variable for every script that “observes” the value. This can be abstracted away with the new (and experimental) block-instance-variables, whose scope is the particular block instance. Some more (or less useful :-/) examples:

… a new kind of control structure …





… a new block-based aggregator …



… that can be fun to use in situations like these, to build a counter:



… or an abstract “pass” sensor, instead of the explicit one shown above:



• evaluator performance optimizations

Many “raw” operations have been optimized to evaluate up to 2x faster in WARPed or TURBO mode (also allowing for more threads to run in parallel).
Developers: The generic invoke() function now also takes blocks and rings (contexts), letting you write fast JavaScript quasi-primitives inside Snap:



• Morphic grab-threshold fix for scroll frames
• fixed several block rendering glitches
• List category LENGTH reporter now also works on text
• Changed “any” to “random” (in English only)
• new FILL primitive in the Pen category
• switched to animation frame scheduling, please use TURBO for music
• Updated German translation
• Cloud: 10 MB cloud upload limit for media per project

Note: Projects still can have as much code as you want, but uploading more than 10 MB of media (music, sounds, costumes) per project is no longer allowed. When you try to save such a project to the cloud the following warning shows up:



In this case please remove media or — often better — reduce the resolution of the media. We’ve had problems with large music files, costumes aren’t such and issue.

• Objects, Paint: Automatic Sprite Center Detection, Thanks, Craxic!!
• Morphic: Handling of diacritics, + key in input fields (Windows), Thanks, DaDoro!!
• NL translation update


As usual, please make sure to flush your caches (or simply to reload Snap) until you see v.4.0.4 in the “about” dialog.
Again, you can still access the “old” version in case anything goes wrong: http://snap.berkeley.edu/snapsource/stable/snap.html

Enjoy!
-Jens



bharvey
Scratcher
1000+ posts

Snap! user discussion

Of course what Jens should have done in his EVERY example is this:



PS Actually I'm not sure why this works, given that the length of the list isn't divisible by 3. Jens?

PPS I mean, why does it work the second time you click it?

Last edited by bharvey (Dec. 16, 2015 04:04:35)


Jonathan50
Scratcher
1000+ posts

Snap! user discussion

bharvey wrote:

Today’s release is now online, it features many — in part dramatic — changes and new features:

-snip-

Enjoy!
-Jens


Looks great! Does this mean variables which stay the same during block invocations?

Not yet a Knight of the Mu Calculus.
bharvey
Scratcher
1000+ posts

Snap! user discussion

Jonathan50 wrote:

Does this mean variables which stay the same during block invocations?
Yeah I'm still arguing with Jens about the name. It means variables that stay the same across block invocations — local state variables. Like declaring something STATIC in one of those bad programming languages.

P.S. This isn't really a new capability; it's just syntactic sugar for a λ inside a λ, where the visible block is the one created by the inner λ. Before we declare this non-experimental, there will have to be a way to initialize the variable to something other than 0, and preferably a way to share a state variable among several procedures (which is what you want to build your own object system).

Last edited by bharvey (Dec. 16, 2015 04:12:25)


Hardmath123
Scratcher
1000+ posts

Snap! user discussion

bharvey wrote:

Of course what Jens should have done in his EVERY example is this:



PS Actually I'm not sure why this works, given that the length of the list isn't divisible by 3. Jens?

PPS I mean, why does it work the second time you click it?
It “creates” a new <EVERY (3)> the second time you click it, if I understand this correctly.

(EDIT: to clarify, what I mean is that when it makes a new lambda for KEEP, it instantiates a brand-new EVERY (with its own outer-lambda) so it has a fresh counter.)

I think the distinction between “all EVERY blocks have the same counter” and “every time *this* EVERY block is called it uses the same counter” is a bit confusing. Mainly because I'm not sure I understand 100% what “this EVERY block” really means without mentally decomposing it to lambdas to make sense of it.

Last edited by Hardmath123 (Dec. 16, 2015 04:32:45)

bharvey
Scratcher
1000+ posts

Snap! user discussion

Hardmath123 wrote:

when it makes a new lambda for KEEP, it instantiates a brand-new EVERY (with its own outer-lambda) so it has a fresh counter.
Oh. RIght. Jens described it as making a new EVERY as soon as you pull the block out of the palette. But I guess lambdafying it kind of undoes that.

Yeah, I find the semantics confusing. This may be one of those things that would be crystal clear if I'd grown up in Smalltalk instead of in Lisp, but I'm not sure.

Feel free to suggest alternatives that will make Jens happy without giving me a headache.

Hardmath123
Scratcher
1000+ posts

Snap! user discussion

bharvey wrote:

Feel free to suggest alternatives that will make Jens happy without giving me a headache.
Is it possible to have upvars that are blocks themselves?
DrKat123
Scratcher
1000+ posts

Snap! user discussion

May i help translate BYOB Snap! to Indonesian? btw i'm working on it

Moving from Scratch? Don't learn C or Java, try Snap!
it haz OOP
DrKat McKatFace
First of all I'm 100% human and humans does not have a cat face
and second, the Boaty McBoatFace/Parsey McParseFace madness has just begun

λ
Sharp, my new Scratch mod
Is my post/siggy worthy for an internet?
bharvey
Scratcher
1000+ posts

Snap! user discussion

Hardmath123 wrote:

Is it possible to have upvars that are blocks themselves?
I'm not sure what you mean. Certainly the value of an upvar can be set to a (lambdafied) block.

Do you mean that you want the upvar's orange blob to be block-shaped, and maybe have input slots, in the palette?

bharvey
Scratcher
1000+ posts

Snap! user discussion

DrKat123 wrote:

May i help translate Snap! to Indonesian?
Yes of course, that's be great! Just submit a pull request on github adding your translation file. Or email it to Jens if you're > 25 years old and therefore don't understand git.

DrKat123
Scratcher
1000+ posts

Snap! user discussion

bharvey wrote:

DrKat123 wrote:

May i help translate Snap! to Indonesian?
Yes of course, that's be great! Just submit a pull request on github adding your translation file. Or email it to Jens if you're > 25 years old and therefore don't understand git.
I'll probably do a pull request.

Moving from Scratch? Don't learn C or Java, try Snap!
it haz OOP
DrKat McKatFace
First of all I'm 100% human and humans does not have a cat face
and second, the Boaty McBoatFace/Parsey McParseFace madness has just begun

λ
Sharp, my new Scratch mod
Is my post/siggy worthy for an internet?

Powered by DjangoBB