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

#1 2011-01-30 20:03:34

Pecola1
Scratcher
Registered: 2010-09-06
Posts: 1000+

Squeak Smalltalk Intro

I Highly recommended, before learning squeak small talk (and after asking for your parents' permission) download BYOB and learn how to use it.
   
The first thing you need to know about small talk is that almost anything is possible with squeak small-talk. Now you also need to know that to learn small talk, you don't just keep entering codes and hope the browser understands it. If you don't know what to do you ASK. This is a very is a thing that can sometimes be hard. You may be embarrassed but it is worth it.
   
Another thing you need to do is LOOK. Look through the browser, that is how I learned at least 70% of what I know about small talk. Also you can look throughout Scratch projects, Scratch Forums (in advanced topics), Scratch Wiki and even other programs that use small talk like squeak! You have many recourses so you have no excuse to be lazy and say, "I quit!" or "This is too hard!" it may be hard but if you ask and look you may find it easy.
   
You need to not only ask and look but sometimes you have to do it WITHOUT asking or looking by doing it by YOURSELF.  Doing it by yourself just means that you already KNOW what you are trying to do just you cannot REMEMBER it. This is the hardest because, when you forget you cannot remember, it is just logical! This means refreshing your memory is your friend.  wink  How do you refresh your memory? You need to look at what you do know (which could mean going to the class) and see if you can figure out what you don't know (like after going to the class, looking at the methods and figuring out what the method you were looking for is).
   
Now to teach you some small talk!
Here is some terms:

Variable = like a script variable from BYOB
Class Variable = a variable that can be used throughout the class
Global Variable = a variable that is used throughout the "entire Smalltalk world!"
BlockSpecs = you will find this under Scratch-Objects -> ScriptableScratchMorph/ScriptableStageMorph/ScriptableSpriteMorph -> block specs -> blockSpecs
Method = a code (sometimes referred to as a instance code)
uncolloredArgMorphFor: = a place where you make droppdowns, (Scratch-Blocks » CommandBlockMorph » --all--/private » uncoloredArgMorphFor:)

http://www.weebly.com/uploads/5/4/1/3/5413503/9755687.png
http://www.weebly.com/uploads/5/4/1/3/5413503/3967268.gif
http://www.weebly.com/uploads/5/4/1/3/5413503/8557935.gif

Last edited by Pecola1 (2011-05-12 15:05:07)


If you are reading this, please read to the end, because if you don't you won't know what's at the end. Don't just skip to the end though otherwise you won't be able to read the middle, which is most important. Now you must be wondering why you just read all that, the reason is you may have not noticed something, read it again and see if you notice it this time  smile

Offline

 

#2 2011-01-31 21:55:44

Jwosty
Scratcher
Registered: 2009-12-19
Posts: 500+

Re: Squeak Smalltalk Intro

That's a nice start! But you might want to get in the habit of reffering to it by the name of 'Smalltalk' because there are many divisions of the language. By the way, that pane that you think contains the 'subclasses' actually houses organisation for methods; this image might be better for the post:

http://i52.tinypic.com/14jnix5.png

Also, a Global variable is not a variable for just that class, it is a variable used by the entire Smalltalk world. You're thinking of class variables. And don't forget the important instance variable! This is a variable used by only that specific instance of whatever class and cannot be accessed by any other entity unless it is returned from another method. And, where did you hear that a method is also called an instance code? That is an incorrect term because methods are used by Classes as well, not just instances.  tongue
And you don't have to include ScratchFrameMorph's #blockSpecs method in with all of the other vital things to know about Smalltalk; it won't mess up the image file if you remove it like it would cause vital problems in the language if you delete any of the others somehow  tongue . But you are right to include it, as it is very important to know about if one would like to add working blocks to Scratch, that is just an odd place you put it.

So, after all that "negative" feedback, give a hand for some positive!  big_smile
• Awesome job on including ScratchFrameMorph's #blockSpecs! It is helpful to know about if you want to program new blocks. xD
• Hooray for not giving up  lol ! I mean, just skim through some of the Scratch mods' forum topics, and you'll be bound to find VERY frustrating bugs in some of them that the developers might have been thinking about giving up on. For example, my mod, Blocktalk just recently had a really annoying problem in it, but I kept at it until I finally figured it out after months.
• Check out this and this to help you a little with your guide.\

Hope this help!  smile


http://i39.tinypic.com/18ert5.png Google it.  smile

Offline

 

#3 2011-02-02 19:05:05

Pecola1
Scratcher
Registered: 2010-09-06
Posts: 1000+

Re: Squeak Smalltalk Intro

Jwosty wrote:

That's a nice start! But you might want to get in the habit of reffering to it by the name of 'Smalltalk' because there are many divisions of the language. By the way, that pane that you think contains the 'subclasses' actually houses organisation for methods; this image might be better for the post:

http://i52.tinypic.com/14jnix5.png

Also, a Global variable is not a variable for just that class, it is a variable used by the entire Smalltalk world. You're thinking of class variables. And don't forget the important instance variable! This is a variable used by only that specific instance of whatever class and cannot be accessed by any other entity unless it is returned from another method. And, where did you hear that a method is also called an instance code? That is an incorrect term because methods are used by Classes as well, not just instances.  tongue
And you don't have to include ScratchFrameMorph's #blockSpecs method in with all of the other vital things to know about Smalltalk; it won't mess up the image file if you remove it like it would cause vital problems in the language if you delete any of the others somehow  tongue . But you are right to include it, as it is very important to know about if one would like to add working blocks to Scratch, that is just an odd place you put it.

So, after all that "negative" feedback, give a hand for some positive!  big_smile
• Awesome job on including ScratchFrameMorph's #blockSpecs! It is helpful to know about if you want to program new blocks. xD
• Hooray for not giving up  lol ! I mean, just skim through some of the Scratch mods' forum topics, and you'll be bound to find VERY frustrating bugs in some of them that the developers might have been thinking about giving up on. For example, my mod, Blocktalk just recently had a really annoying problem in it, but I kept at it until I finally figured it out after months.
• Check out this and this to help you a little with your guide.\

Hope this help!  smile

First of all, I cannot view from tiny pick so I cannot view your picture. Also a Method, is only referred to sometimes, I never said it was the correct term, in fact I knew that it was not the correct term just when editing the source people may refer to it as an instance code. This way if they were to see someone say instance code, they would not ask, "What's a instance code?" and instead know what the person is trying to say. I will make that more clear. Sub-Class IS the correct term though. I looked it up because I couldn't find out what that would be called. The global variable, I was mixed up there, thanks. I don't know what you mean about the scratchFrameMorph having a blockSpecs though. Because it doesn't have any blockspecs. Also you cannot remove scratchFrameMorph at all, otherwise it wont show the frame.  tongue  I am not trying to research here, I am stating what i know, I already know enough to keep me busy a few months.  roll


If you are reading this, please read to the end, because if you don't you won't know what's at the end. Don't just skip to the end though otherwise you won't be able to read the middle, which is most important. Now you must be wondering why you just read all that, the reason is you may have not noticed something, read it again and see if you notice it this time  smile

Offline

 

#4 2011-08-23 10:08:02

origami3
Scratcher
Registered: 2011-08-11
Posts: 28

Re: Squeak Smalltalk Intro

I Have A question Do you use small talk code in squeak?


I am awesome

Offline

 

#5 2011-08-23 10:14:14

origami3
Scratcher
Registered: 2011-08-11
Posts: 28

Re: Squeak Smalltalk Intro

did you know that squeak 4.2 is now out?  wink


I am awesome

Offline

 

#6 2011-11-15 16:36:38

Pecola1
Scratcher
Registered: 2010-09-06
Posts: 1000+

Re: Squeak Smalltalk Intro

origami3 wrote:

I Have A question Do you use small talk code in squeak?

I personally don't, but I do believe that is the language of it.  smile

As for your other question I had no clue.


If you are reading this, please read to the end, because if you don't you won't know what's at the end. Don't just skip to the end though otherwise you won't be able to read the middle, which is most important. Now you must be wondering why you just read all that, the reason is you may have not noticed something, read it again and see if you notice it this time  smile

Offline

 

#7 2012-12-04 11:34:57

doggerderek
Scratcher
Registered: 2010-02-10
Posts: 2

Re: Squeak Smalltalk Intro

This is very helpful but I can't find the block specs. I found ScriptableScratchMorph however there isn't a block specs there.

Offline

 

Board footer