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

#2251 2010-12-09 16:02:36

bbbeb
Scratcher
Registered: 2009-06-11
Posts: 1000+

Re: BYOB 3 - Discussion Thread

One thing I ask is to be able to have one of these to make accessing much quicker and not require a external variable, but direct access:

A (last received) block. Doesn't seem that hard...?
A <%e received> block. The code is already in several forums.'

Maybe you could just pop it in with the next BYOB release?  big_smile


Back in my day.... there were no laws that censored the internet... now, there are.... nah.

Offline

 

#2252 2010-12-09 19:50:10

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

Re: BYOB 3 - Discussion Thread

@bharvey - sprite cloning

I'm working with applications using many sprites; Byob with its "methods" offer many powerful features o achieve a full inter-sprite communication (any sprite can act on any other sprite).

Cloning in pratice ( I know that the theoretical aspects are very important) could be done in this way :

- clone will start with  "naming" of the child sprite (parent.child for example)
- the child would then inherit of all parent local variables renamed in such a way that Local variables of "child" are defined like the parent variables but named in a structured manner. For example if "parentmet" is a method variable defined in "parent", the name of the equivalent child variable would be  "parentmet.childname" . Then OF the  keystone instruction of interprocess communication would display <parentmet.childname OF parent.childname>

As this OF instruction accepts a "composed string", (with JOIN for example, contrarily to SET), the parent blocks could be used without  "re-writing" them.

Offline

 

#2253 2010-12-09 20:07:34

rubiks_cube_guy238
Scratcher
Registered: 2009-07-02
Posts: 100+

Re: BYOB 3 - Discussion Thread

xly wrote:

...the name of the equivalent child variable would be  "parentmet.childname" . Then OF the  keystone instruction of interprocess communication would display <parentmet.childname OF parent.childname>...

Congratulations! You have successfully managed to confuse me!


The glass is never half full nor half empty; it is twice as large as it needs to be.

Offline

 

#2254 2010-12-09 21:39:34

bbbeb
Scratcher
Registered: 2009-06-11
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Lol

Last edited by bbbeb (2010-12-09 21:40:38)


Back in my day.... there were no laws that censored the internet... now, there are.... nah.

Offline

 

#2255 2010-12-10 02:05:56

subzerostig
Scratcher
Registered: 2010-09-08
Posts: 100+

Re: BYOB 3 - Discussion Thread

In the new edition of BYOB, could you add a script list function
It would make blocks a lot easier to make!


There are 10 types of people people in this world, those that understand binary and those that do not: My latest Project: Present catcher V2                          06/12/2012

Offline

 

#2256 2010-12-10 03:47:07

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

Re: BYOB 3 - Discussion Thread

subzerostig wrote:

In the new edition of BYOB, could you add a script list function
It would make blocks a lot easier to make!

Exellent idea! We've been discussing a script encoding / parsing mechanism, and it's pretty straightforward with stack of command blocks. But how would you encode reporters?


Jens Mönig

Offline

 

#2257 2010-12-10 11:19:09

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

Re: BYOB 3 - Discussion Thread

rubiks_cube_guy238 wrote:

xly wrote:

...the name of the equivalent child variable would be  "parentmet.childname" . Then OF the  keystone instruction of interprocess communication would display <parentmet.childname OF parent.childname>...

Congratulations! You have successfully managed to confuse me!

xly -> Sorry, read "intersprite" instead of "interprocess". But after all each sprite can be considered like a separate process !

Offline

 

#2258 2010-12-11 17:25:19

EvilGenius
Scratcher
Registered: 2010-01-02
Posts: 14

Re: BYOB 3 - Discussion Thread

I was debugging a function and saw something weird, a blue 'answer' block shaped like a 'report' block. There are pictures of it and the function I was debugging here:
http://scratch.mit.edu/projects/EvilGenius/1473776
Press space to see other image.
Anyone know anything about this? The function was supposed to be like switch in the Tools project but for returning data. There was another block, called 'elif' that was supposed to go in the elifs... spot. It returned a list of the boolean and the (unevaluated) data point.

Offline

 

#2259 2010-12-11 17:38:24

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

Re: BYOB 3 - Discussion Thread

EvilGenius wrote:

I was debugging a function and saw something weird, a blue 'answer' block shaped like a 'report' block. There are pictures of it and the function I was debugging here:
http://scratch.mit.edu/projects/EvilGenius/1473776
Press space to see other image.
Anyone know anything about this? The function was supposed to be like switch in the Tools project but for returning data. There was another block, called 'elif' that was supposed to go in the elifs... spot. It returned a list of the boolean and the (unevaluated) data point.

That shows up if you use the report box at the bottom of the block window instead of the report block.


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

Offline

 

#2260 2010-12-12 03:03:59

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

Re: BYOB 3 - Discussion Thread

EvilGenius wrote:

The function was supposed to be like switch in the Tools project but for returning data. There was another block, called 'elif' that was supposed to go in the elifs... spot. It returned a list of the boolean and the (unevaluated) data point.

Ah, very interesting.  You've found... well, not a bug, I guess, because Scheme just disallows what you did, so we can handle it however we want  smile , but definitely something that could be better documented.

Executive summary: Unevaluated inputs don't work well with CALL etc.

Here is a very simple special form that just reports its (unevaluated) input:

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

Here's a straightforward invocation of it, to show that it works normally:

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

But watch what happens when I try to do the same thing using CALL:

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

What's that strange result???  Basically you can think of it as equivalent to [THE <5> BLOCK], which is something you can't ordinarily create because "5" isn't a block.

You get this result because, first of all, even though SPEC is a special form (a block with unevaluated input slots), CALL isn't!  So the [<2> + <3>] gets evaluated by CALL before being passed to SPEC.  And then BYOB notices that you have a non-block value where a block is expected, so it wraps THE BLOCK around it for you.

The easiest way to make a recursive call to a special form is to create a non-special-form helper block that takes, e.g., Reporter-type inputs instead of Any-unevaluated-type inputs.  Then that helper can call itself recursively, straightforwardly.

Last edited by bharvey (2010-12-12 03:07:04)


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

Offline

 

#2261 2010-12-13 12:43:36

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

Re: BYOB 3 - Discussion Thread

BYOB lists can't store some characters in a list without changing them into something else. For example the byte 6. I add it to a list then I read the item and I get something else.  hmm


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

Offline

 

#2262 2010-12-13 18:39:48

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

Re: BYOB 3 - Discussion Thread

MathWizz wrote:

BYOB lists can't store some characters in a list without changing them into something else. For example the byte 6. I add it to a list then I read the item and I get something else.  hmm

Interesting.  I get 0 for every code less than 32; is that what you're seeing?

You should file a bug reportsmile


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

Offline

 

#2263 2010-12-14 20:22:08

msdosdude
Scratcher
Registered: 2009-06-11
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Heres a sample project I made in BYOB.

Just a normal Scratch project, BUT with an extra feature: Press 0 and then b y o and b and you will enter a BYOB mode. It detectes if you enter a number or a letter.

http://www.mediafire.com/?2kzlh1sxq1dz14h

Please tell me if there are any bugs in it. Thanks!


http://i39.tinypic.com/2vkxppf.png
Freebie. Not a Scratch OS, a REAL OS you can boot to, by msdosdude.

Offline

 

#2264 2010-12-20 19:54:46

thecrazyguy
Scratcher
Registered: 2010-07-22
Posts: 100+

Re: BYOB 3 - Discussion Thread

BYOB is so cool. If there was a magic loveit button, i would use it on BYOB3.


I like pie.

Offline

 

#2265 2010-12-20 23:21:54

bbbeb
Scratcher
Registered: 2009-06-11
Posts: 1000+

Re: BYOB 3 - Discussion Thread

May i make another suggestion?
A "Custom Code" block. It would enable the vast areas around Smalltalk as well, enabling us to make other useful blocks for use with custom blocks!


Back in my day.... there were no laws that censored the internet... now, there are.... nah.

Offline

 

#2266 2010-12-21 13:36:14

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

Re: BYOB 3 - Discussion Thread

bbbeb wrote:

May i make another suggestion?
A "Custom Code" block. It would enable the vast areas around Smalltalk as well, enabling us to make other useful blocks for use with custom blocks!

If you run "BYOB Development" (in the same folder as BYOB.image) you can shift-click on Edit to get an expanded menu that gives access to the Smalltalk browser.  Is that what you wanted?


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

Offline

 

#2267 2010-12-21 16:28:04

s_federici
Scratcher
Registered: 2007-12-18
Posts: 500+

Re: BYOB 3 - Discussion Thread

fullmoon wrote:

I built a library that includes hash functionality and JSON encoding/decoding. You can download it in the form of a BYOB sprite here

Hi fullmoon, the link above is dead. Would you mind posting a new one? Thanks.

Offline

 

#2268 2010-12-21 16:37:36

bbbeb
Scratcher
Registered: 2009-06-11
Posts: 1000+

Re: BYOB 3 - Discussion Thread

bharvey wrote:

bbbeb wrote:

May i make another suggestion?
A "Custom Code" block. It would enable the vast areas around Smalltalk as well, enabling us to make other useful blocks for use with custom blocks!

If you run "BYOB Development" (in the same folder as BYOB.image) you can shift-click on Edit to get an expanded menu that gives access to the Smalltalk browser.  Is that what you wanted?

No, as in a block in BYOB that says "Custom Code:" %s that runs it. That lets us make our own blocks for use in building our own blocks!  big_smile


Back in my day.... there were no laws that censored the internet... now, there are.... nah.

Offline

 

#2269 2010-12-21 16:57:16

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

Re: BYOB 3 - Discussion Thread

Hmm, bbbeb, are you saying that you want to write text code into a custom block, sort of like Panther does? Which scripting language would you use for that, Smalltalk?


Jens Mönig

Offline

 

#2270 2010-12-23 04:49:01

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

Re: BYOB 3 - Discussion Thread

Jens wrote:

Hmm, bbbeb, are you saying that you want to write text code into a custom block, sort of like Panther does? Which scripting language would you use for that, Smalltalk?

Every professional software designed to build costly applications using the user-friendly drag-and-drop technique like : web sites, RPG, video games, business windows-oriented applications need to embed a scripting language to walk around limitations of these sophisticated tools. I'm currently playing with applications offering Ruby andJava script extensions. But the difference is that BYOB is not a business-oriented programming software made to build costly end-user professional applications.

As far as I'm concerned I feel some frustrations with Byob, but I take care of them. For example you can't command with an instruction simple actions like "make a variable", "export/import text files" , or can't pass composed strings (JOIN map 1) to instructions like SET (but happily you can do this with <property OF sprite >, <broadcast> etc)

By the way, Brian and Jens- and all other Byobers -  I take this opportunity to wish you an Happy Xmas and New Year and thank you for all your remarkable achievements in 2010 !!

xly

Offline

 

#2271 2010-12-30 00:26:35

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

Re: BYOB 3 - Discussion Thread

s_federici wrote:

fullmoon wrote:

I built a library that includes hash functionality and JSON encoding/decoding. You can download it in the form of a BYOB sprite here

Hi fullmoon, the link above is dead. Would you mind posting a new one? Thanks.

Here we go. Drop.io was bought out by Facebook, apparently, which is really disappointing.  sad


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

Offline

 

#2272 2010-12-30 04:44:19

bbbeb
Scratcher
Registered: 2009-06-11
Posts: 1000+

Re: BYOB 3 - Discussion Thread

Jens wrote:

Hmm, bbbeb, are you saying that you want to write text code into a custom block, sort of like Panther does? Which scripting language would you use for that, Smalltalk?

Yes indeed, but in a diffrent way.
Like how the [run [%block]] works, you could make [run code [v]] where v indicates a drop down menu where you can place Smalltalk code.

And yes, Smalltalk. So that if we find something missing, you could add it, in it's native language.


Back in my day.... there were no laws that censored the internet... now, there are.... nah.

Offline

 

#2273 2010-12-30 10:16:37

s_federici
Scratcher
Registered: 2007-12-18
Posts: 500+

Re: BYOB 3 - Discussion Thread

fullmoon wrote:

I built a library that includes hash functionality and JSON encoding/decoding. You can download it in the form of a BYOB sprite here

s_federici wrote:

Hi fullmoon, the link above is dead. Would you mind posting a new one? Thanks.

fullmoon wrote:

Here we go. Drop.io was bought out by Facebook, apparently, which is really disappointing.  sad

Thanks!

Offline

 

#2274 2011-01-05 16:38:52

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

Re: BYOB 3 - Discussion Thread

Morphic framework for browser-based JavaScript

Hi gang, recently I have been working on a new HTML5 based Morphic framework for web browsers called morphic.js, which might serve as a platform for BYOB4 or someting similar (yeah, it does work on the iPad). I just finished the documentation and released it under a free and open source MIT license. If you're interested you're invited to check it out at:

  http://www.chirp.scratchr.org/blog/?p=34

it's a blog post with a link to a live Morphic web page that looks and feels a lot like the Squeak version Scratch is written in, plus a video showing some tricks.

This is the very beginning of what might eventually turn out to be a complete re-write of BYOB...

Last edited by Jens (2011-01-05 16:39:47)


Jens Mönig

Offline

 

#2275 2011-01-05 16:40:43

ProgrammingFreak
Scratcher
Registered: 2010-09-04
Posts: 1000+

Re: BYOB 3 - Discussion Thread

i'd like a person to teach me squeak! yes, i've read the tutorials. I want a PERSON to teach me. anyone?

Offline

 

Board footer