jstoud wrote:
the Byte Smalltalk issue, way back when
Oh hey, you're a Smalltalker! I can never resist old dudes who know Smalltalk(odwks).
So, here's how you can access Squeak from within BYOB: Start BYOB with "dev" (sans quotation marks) somewhere in the command line (a Windows batch file or a shell script). Afterwards you can shift-click on the "Edit" Menu to get the developer's options. Personally I use a little batch file:
start BYOB.exe BYOB.image dev
if you want to be able to drop projects on this icon you might want to add a %1 to that.
If you do it like that you're still missing variable names and code comments in Squeak. Those are in the .changes and the .sources files. So, if you also want the .changes file (before the official release in August, which will include it anyway), just holler and I'll add you to our BYOB-alpha mailing list, which will give you access to it whenever I release a new version (which is often )
Last edited by Jens (2010-06-11 04:37:35)
Offline
Jens wrote:
jstoud wrote:
the Byte Smalltalk issue, way back when
Oh hey, you're a Smalltalker! I can never resist old dudes who know Smalltalk(odwks).
So, here's how you can access Squeak from within BYOB: Start BYOB with "dev" (sans quotation marks) somewhere in the command line (a Windows batch file or a shell script). Afterwards you can shift-click on the "Edit" Menu to get the developer's options. Personally I use a little batch file:
start BYOB.exe BYOB.image dev
if you want to be able to drop projects on this icon you might want to add a %1 to that.
If you do it like that you're still missing variable names and code comments in Squeak. Those are in the .changes and the .sources files. So, if you also want the .changes file (before the official release in August, which will include it anyway), just holler and I'll add you to our BYOB-alpha mailing list, which will give you access to it whenever I release a new version (which is often )
Alternatively, hack BYOB to make a 'turn fill screen off' block.
Offline
Jens wrote:
jstoud wrote:
the Byte Smalltalk issue, way back when
Oh hey, you're a Smalltalker! I can never resist old dudes who know Smalltalk(odwks).
So, here's how you can access Squeak from within BYOB: Start BYOB with "dev" (sans quotation marks) somewhere in the command line (a Windows batch file or a shell script). Afterwards you can shift-click on the "Edit" Menu to get the developer's options. Personally I use a little batch file:
start BYOB.exe BYOB.image dev
if you want to be able to drop projects on this icon you might want to add a %1 to that.
If you do it like that you're still missing variable names and code comments in Squeak. Those are in the .changes and the .sources files. So, if you also want the .changes file (before the official release in August, which will include it anyway), just holler and I'll add you to our BYOB-alpha mailing list, which will give you access to it whenever I release a new version (which is often )
I just had a go at that dev start up, but it didn't work, it opened it up, but If i shift-click the edit menu, I don't get extra options. Im using BYOB 2.99.015
Edit: I put it in the wrong folder, sorry, I have BYOB 2.0 and 2.99.
Last edited by markyparky56 (2010-06-11 08:34:36)
Offline
bharvey wrote:
Many thanks for this valuable enhancement !
Offline
bharvey wrote:
jstout wrote:
I hope Jens and Brian don't mind too much.
Nah. Enjoy.
the Byte Smalltalk issue
Ah, someone else my age!
Where in the UK are you? There is a possibility of
my being in London around the first week of Aug.
Well, I live and work in the north-west (Southport, north of Liverpool), but I'm afraid I'm on holiday then in Wales.
I would love to be on the BYOB-alpha mailing list. Do you have my email address?
Offline
We now have help screens for the new-in-BYOB blocks (except DEBUG, for which I'm waiting until I'm sure the user interface has settled down). Unzip the archive and copy the files from the resulting folder into {byob-folder}/Help/en. There will be one expected conflict with an existing file; say yes.
Yeah, I know these are more crowded than the Scratch ones. Suggestions for improvement are very welcome, especially in the form of picture files!
P.S. Also welcome are translations into other languages.
Last edited by bharvey (2010-06-13 17:34:33)
Offline
I've been playing around with the idea of saving and restoring a sprite's position in a functional way. So I defined a reporter called savedPosition that returns a script which does a goto x:y: on the saved position.
I have a definition for savedPosition that looks something like:
script variables x y direction
set x to x position
set y to y position
set direction to direction
report the script
goto x: x y: y
point in direction: direction
shouldn't this work if I assign it to a variable, then run the variable?
It does if I manually assign some values to the script variables x, y, and direction. I thought the script that was reported used the values of x, y, and direction that were in existence when it was created.
Offline
jstout wrote:
I've been playing around with the idea of saving and restoring a sprite's position in a functional way. So I defined a reporter called savedPosition that returns a script which does a goto x:y: on the saved position.
It works with the following "process"
Your savedPosition is defined as Motion+reporter
You report into the report window a script C-Shape containing instructions :
goto x :x
point to direction: direction
To save the position you set this function to a variable save-pos with :
SET save-pos to savedPosition
To recall the saved position :
RUN saved-pos
Then move the sprite to another position.
Reset save-pos with SET
RUN saved-pos again, the sprite returns to the saved position.
(to move a sprite with the mouse, unlock it )
Offline
bharvey wrote:
We now have help screens for the new-in-BYOB blocks (except DEBUG, for which I'm waiting until I'm sure the user interface has settled down).
Excellent ! Much better and convenient than the Reference Manual 2.99
Offline
@ bharvey & Jens
I've finished my first tutorial game, written in Byob, and the same one in Scratch. I'm to make comparisons of performance between both.
see : http://www.xleroy.net/ByobTuto/thumbnails.html
As far as programming process is concerned, there is no major difference for this type of application. The Scratch couple of "broadcast/when broadcast received do so and so" allows a turn-around of lack of functions (in order to avoid to rewrite several times the same flow of instructions for the same action). And, even with Byob primitives you need to use these "multi-process" features.
All put together, Byob allows all applications that Scratch can do, where Scratch is more limited for scientific applications like maths, physics, computer science.
In my humble opinion the innovative approach of Byob in the ways of doing programming today, fits well with the revolutionary concept of Scratch. Combination of both opens an immense field for imagination, creativity, experience sharing, "programming for all" ...
Offline
EVERYONE LISTEN!!!
I just started Scratch up and BYOB. Then I connected two programs using MESH (I was just experimenting.) I did'nt think it would work even though their based on eachother and have different file extensions but it does and I have proof:
http://scratchx.webs.com/apps/photos/photo?photoid=86711592
Offline
xly wrote:
I've finished my first tutorial game, written in Byob, and the same one in Scratch. I'm to make comparisons of performance between both.
see : http://www.xleroy.net/ByobTuto/thumbnails.html
Thanks, this is awesome!
TheExternal wrote:
I just started Scratch up and BYOB. Then I connected two programs using MESH (I was just experimenting.) I did'nt think it would work even though their based on eachother and have different file extensions but it does and I have proof:
http://scratchx.webs.com/apps/photos/photo?photoid=86711592
Yes, both BYOB and Scratch still work together nicely over the mesh, because currently the only feature added by BYOB is being able to share sprites over the mesh. Oh, and of course you can also use the Picoboard and the LEGO WeDo kits with BYOB
Offline
@Jens how to share sprites over mesh?
Offline
johnnydean1 wrote:
@Jens how to share sprites over mesh?
When you've connect several BYOB sessions right clicking on a sprite gives you the option to "share this sprite". This will copy the sprite including all of its resources and scripts to every other BYOB mesh participants.
Offline
@Jens
Thats cool, but how does it work?
Offline
Oh, you mean how is it implemented? It serializes the sprite (same as when it is written to a file) and sends it over the mesh using a specialized prefix, so the other participants know how to parse it. Is that what you wanted to know?
Last edited by Jens (2010-06-14 12:28:28)
Offline
Yes, thats what I wanted. How doe it actually do it. Like whats the squeak?
Offline
MathWizz wrote:
Another glitch:
http://img97.imageshack.us/img97/4999/byoberror5.png
Well, it's bound to do something a little strange since your block is command-shaped but reports a value.
On the other hand, I tried making it a reporter (and therefore using THE BLOCK rather than THE SCRIPT) and it gave the same answer. But it's not clear to me what it should report for an empty script. A jigsaw-shaped grey border with nothing inside?
Offline
http://scratchx.webs.com/
can someone get this website on the first post? I re-made my website and (i'm still working on it now) for BYOB.
Offline
xly wrote:
jstout wrote:
I've been playing around with the idea of saving and restoring a sprite's position in a functional way. So I defined a reporter called savedPosition that returns a script which does a goto x:y: on the saved position.
It works with the following "process"
Your savedPosition is defined as Motion+reporter
You report into the report window a script C-Shape containing instructions :
goto x :x
point to direction: direction
To save the position you set this function to a variable save-pos with :
SET save-pos to savedPosition
To recall the saved position :
RUN saved-pos
Then move the sprite to another position.
Reset save-pos with SET
RUN saved-pos again, the sprite returns to the saved position.
(to move a sprite with the mouse, unlock it )
Yes, that's exactly right. It means I don't have to define complicated variables/lists to store the three pieces of information and the restore process is very simple.
Offline