This is a read-only archive of the old Scratch 1.x Forums.
Try searching the current Scratch discussion forums.

#451 2010-05-17 22:18:56

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

New version 2.99.011 at http://byob.berkeley.edu with (tada!) a Pause button, and a few other bug fixes.  Use some today!


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#452 2010-05-17 22:29:20

ScratchReallyROCKS
Scratcher
Registered: 2009-04-22
Posts: 1000+

Re: BYOB 3 - Discussion Thread

I LOVE the pause button!!!


http://imageshack.us/a/img694/3806/sigmad.png

Offline

 

#453 2010-05-17 22:32:46

Lucario621
Community Moderator
Registered: 2007-10-03
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Wow! A pause button! Awesome!


http://i.imgur.com/WBkM2QQ.png

Offline

 

#454 2010-05-17 22:48:52

Dazachi
Retired Community Moderator
Registered: 2009-09-12
Posts: 1000+

Re: BYOB 3 - Discussion Thread

I can't find the pause button.


Dazachi, Retired Community Moderator
May also know me as OJACheung.

Offline

 

#455 2010-05-17 23:52:44

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Dazachi wrote:

I can't find the pause button.

It's in between the green flag and the stop sign!


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#456 2010-05-17 23:54:04

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Lucario621 wrote:

Wow! A pause button! Awesome!

We'd love for everyone to try it on your large complicated multithreaded projects to find the (likely) bugs!  Thanks.


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#457 2010-05-18 01:50:53

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

http://byob.berkeley.edu/primes.png

All the prime numbers inside your computer! http://byob.berkeley.edu/streams.ypr


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#458 2010-05-18 18:11:25

shadow_7283
Scratcher
Registered: 2007-11-07
Posts: 1000+

Re: BYOB 3 - Discussion Thread

I finally got around to downloading BYOB 2.99.07 (the installer) and noticed that you changed the desktop icon. It looks good! I only have one suggestion. I would make the outline larger and bolder, a little like the Scratch icon. Here is an example:

http://i50.tinypic.com/vyqkd1.png

In fact, feel free to use this one if you'd like.

Also, I love the new pause button! It really helps with debugging! The only think I'd suggest would be to have some sort of graphic effect change the pause sign so that you know it is in action.

Finally, why does BYOB use so much CPU? Unity3D is pretty powerful and it only uses 14-15% of my Central Proccesing Unit's juice. BYOB uses up to 50%! You wouldn't believe how many times my computer has crashed between it and java.

Last edited by shadow_7283 (2010-05-18 20:14:37)

Offline

 

#459 2010-05-18 19:00:53

fullmoon
Retired Community Moderator
Registered: 2007-06-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Hey, I love the pause button!

I noticed one interesting feature of BYOB today:
http://i302.photobucket.com/albums/nn100/fullmoon32/block.gif
When you change the parameter names while building a block, that parameter is made into a variable for the block. However, nothing of the sort happens when changing the anonymous "the script" parameters...the parameter that might initially be named "#1", used in the contained script, is not renamed with the parameter. This forces users to go back and replace all the #1 blocks with their new parameter name.


http://i302.photobucket.com/albums/nn100/fullmoon32/wow.jpg

Offline

 

#460 2010-05-18 20:05:54

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

I'm glad you like the pause button. It's a first venture into making threads pausable and resumable for debugging purposes. Did you notice that while threads are paused they still have a white outline? Let's see where this all leads too...  smile

Thanks for you suggestions about the graphics for the button, I'll try to change it so the button reflects if it is paused or not.

Oh, and thanks for the great suggestion about the desktop icon! We'll consider it.

shadow_7283 wrote:

why does BYOB use SOME MUCH CPU?

because it's the worlds fastest and most most powerful programming environment  big_smile  (just kidding).

Well, actually BYOB (and Scratch) is pretty complex software, but nonetheless performance ultimately needs to become much better. At the moment I'm still focusing on getting things done in a reliable way.

fullmoon wrote:

When you change the parameter names while building a block, that parameter is made into a variable for the block. However, nothing of the sort happens when changing the anonymous "the script" parameters...the parameter that might initially be named "#1", used in the contained script, is not renamed with the parameter. This forces users to go back and replace all the #1 blocks with their new parameter name.

Yup. The variable getters that you drag off the script / the block / script variables are lexically scoped and late-bound. you can rename them and use them elsewhere, and they'll always look through their enclosing scopes for a match.

Opposed to these are the variable setter blocks. They are actually "bound" to a variable frame when you select them from the drop-down menu. This allows us to access both outer and inner scopes. E.g. you can have a global variable of the same name as script variable or as a parameter of the script block. By selecting the accoring one in the block's menu (they are separated in the menu by a line) the block is "fixed" to that variable.

Same with the variable getters from the palette. These are also fixed to their local or global variables.

Last edited by Jens (2010-05-18 20:13:45)


Jens Mönig

Offline

 

#461 2010-05-18 21:15:53

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Jens wrote:

Same with the variable getters from the palette. These are also fixed to their local or global variables.

Wait, I thought they were late-binding, too!  Isn't that how we were going to solve the problem of duplicating a sprite and then its scripts not being able to find the right sprite-local variables?


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#462 2010-05-18 21:21:06

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

shadow_7283 wrote:

Finally, why does BYOB use so much CPU? Unity3D is pretty powerful and it only uses 14-15% of my Central Proccesing Unit's juice. BYOB uses up to 50%! You wouldn't believe how many times my computer has crashed between it and java.

I sympathize; BYOB crashed my MacBook Pro several times until I discovered a control panel you can use to speed up the fans.  smile

I know of two distinct reasons why BYOB is slow.  One is that the way lists are stored is recursion-unfriendly, and I'm pretty sure I know how to fix that.  But the other is that the evaluator is tied in too much with the display manager, because in Scratch one of the design principles is that everything that happens should happen visibly, on the stage.  But when we start doing heavy composition of functions, with intermediate results that are never going to be displayed, that's a waste.  The big question is whether Jens can find a way to fix that short of entirely rewriting the evaluator.  (Which would be good in its own right, but probably not before August!  That'll be BYOB 4... maybe.)


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#463 2010-05-18 21:22:28

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Nobody's reacting to my streams project.  sad


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#464 2010-05-18 21:26:35

ScratchReallyROCKS
Scratcher
Registered: 2009-04-22
Posts: 1000+

Re: BYOB 3 - Discussion Thread

shadow_7283 wrote:

why does BYOB use so much CPU? Unity3D is pretty powerful and it only uses 14-15% of my Central Proccesing Unit's juice. BYOB uses up to 50%! You wouldn't believe how many times my computer has crashed between it and java.

How fast is your processor, because I have a 2.26GHz Intel Core Duo one and BYOB only uses about 25%

Last edited by ScratchReallyROCKS (2010-05-19 15:30:38)


http://imageshack.us/a/img694/3806/sigmad.png

Offline

 

#465 2010-05-18 22:24:36

shadow_7283
Scratcher
Registered: 2007-11-07
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Mine's an Intel Pentium with I think 2.1 or 2.2 Ghz. But it is a laptop, and although they are portable, laptops can't really compete with desktops with procrssing power and
speed.

Offline

 

#466 2010-05-18 22:37:43

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

bharvey wrote:

Jens wrote:

Same with the variable getters from the palette. These are also fixed to their local or global variables.

Wait, I thought they were late-binding, too!  Isn't that how we were going to solve the problem of duplicating a sprite and then its scripts not being able to find the right sprite-local variables?

I might have expressed myself wrongly: The getters from the palette are tied to the sprite (not to a particular variable). It looks for a variable of its name in the scope of that sprite. Therefore you can create a variable for a sprite, use the getters somewhere, delete the variable from the sprite and create it for the stage, and the getters still work. When a sprite gets duplicated all blocks bound to it are also duplicated and bound to the copy.


Jens Mönig

Offline

 

#467 2010-05-18 23:45:11

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

BYOB 2.99.012 at http://byob.berkeley.edu with Italian localization (thanks, Stefano!), some bug fixes, and this:

http://byob.berkeley.edu/pause.png

http://byob.berkeley.edu/play.png

Last edited by bharvey (2010-05-18 23:49:07)


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#468 2010-05-19 00:26:04

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Skinny Gobo:

http://byob.berkeley.edu/gobo4.gif

Fat Gobo:

http://byob.berkeley.edu/fat-gobo.gif

What do the rest of you think?


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#469 2010-05-19 13:14:28

MathWizz
Scratcher
Registered: 2009-08-31
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Glitch! Make a variable, click on it (don't drag,) give it a new name. Click OK. Ta-da!


http://block.site90.net/scratch.mit/text.php?size=30&text=%20A%20signature!&color=333333

Offline

 

#470 2010-05-19 13:21:14

xly
Scratcher
Registered: 2010-04-17
Posts: 100+

Re: BYOB 3 - Discussion Thread

To BHarvey.

I'm starting to do my own ScratchByob tutorial, and I'm now faced with one irritating question. How to pass one function (name or definition), as a variable input of another function.

See the scripts at :
www.xleroy.net/PlayWithScratchByob/Forum/XL-ListOfNumbers-03.gif

In this example I've created one POW function to calculate num (power) exp, and one SIGMA function which calculates the sum of the application of POW on a list of numbers. How to pass into SIGMA any POW function as variable input, like POW 2, POW 3, POW 4 etc

With Logo it was possible to create a string of the command like this :

RUN (SENTENCE :CMD  (ITEM 1 OF :LIS))

I'm impressed by the very good job you are accomplishing, "for our pleasure", as it is now a real pleasure to program with ScratchByob ..."Educere ludando"

xly

Offline

 

#471 2010-05-19 13:31:01

markyparky56
Scratcher
Registered: 2008-03-20
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Glitch!
http://img41.imageshack.us/img41/9408/glitchwithvariables.gif
How to do it:
Take the script variables block.
Click on the A variable, change it to B.
Click the arrow adding the B variable, then to prove that its a glitch, click the arrow again adding C, then try change it to B.


http://j.mp/jgVnTq
Check out my game engine development site: NewDawn I'm a Level 171 Scratcher.I am http://bit.ly/nkvLNT

Offline

 

#472 2010-05-19 13:32:09

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

MathWizz wrote:

Glitch! Make a variable, click on it (don't drag,) give it a new name. Click OK. Ta-da!

Right you are.  Thanks!


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#473 2010-05-19 13:37:19

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

xly wrote:

How to pass one function (name or definition), as a variable input of another function.

Inside the definition of your SIGMA function, where you say CALL <POW> WITH ..., you don't want a grey border around POW.  The value of the variable POW is already a function (because in the call to SIGMA you correctly have a grey border around the POW function), and you want to call that function, not a function-of-no-inputs-that-reports-POW.

My high school students are having trouble with this grey border issue also.  We need either to rethink the notation or to have really good beginning tutorials on the topic.


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#474 2010-05-19 13:41:01

bharvey
Scratcher
Registered: 2008-08-10
Posts: 1000+

Re: BYOB 3 - Discussion Thread

markyparky56 wrote:

Take the script variables block.
Click on the A variable, change it to B.
Click the arrow adding the B variable, then to prove that its a glitch, click the arrow again adding C, then try change it to B.

Right you are, thanks!  (And especially thanks for the text explanation; at this moment I am inside a school whose web proxy doesn't let me get to your gif!  sad  )


http://cs.berkeley.edu/~bh/sig5.png

Offline

 

#475 2010-05-19 13:48:20

markyparky56
Scratcher
Registered: 2008-03-20
Posts: 1000+

Re: BYOB 3 - Discussion Thread

bharvey wrote:

markyparky56 wrote:

Take the script variables block.
Click on the A variable, change it to B.
Click the arrow adding the B variable, then to prove that its a glitch, click the arrow again adding C, then try change it to B.

Right you are, thanks!  (And especially thanks for the text explanation; at this moment I am inside a school whose web proxy doesn't let me get to your gif!  sad  )

Ahhh...

[ Script Variables (b) (b) (c) (d) < > ]
(Crude remake.)


http://j.mp/jgVnTq
Check out my game engine development site: NewDawn I'm a Level 171 Scratcher.I am http://bit.ly/nkvLNT

Offline

 

Board footer