<div dir="ltr">Hi Azka, <div><br></div><div>Thank you for helping us improve Scratch. :)</div><div><br></div><div>Perhaps I can guide you into the Smalltalk way of thinking and how different it is from the usual application development paradigm and workflow. </div>

<div><br></div><div>Imagine you&#39;re a Java developer and you use Eclipse for your IDE. Imagine you keep your source code in a SVN or similar repository which runs on a database server. Imagine your development team keeps your entire setup ... Eclips, SVN, repository, application data, operating system, and configurations, in an Virtual Operating System ram-memory-space-image-in-a-file which VirtualBox, or VMWare can run ... so there is no &quot;installation&quot; to get one&#39;s environment running. The VirtualBox ram-memory-space-image-in-a-file has a &quot;snapshot&quot; to a single disk file of all the applications installed an running. </div>

<div><br></div><div>In the setup described above, one simple takes an VirtualBox snapshot ram-memory-space-image-in-a-file and starts it with VirtualBox. This has the Eclipse IDE, the application running in Eclipse, and the SVN server running all at the same time from the moment the VirtualBox image snapshot was taken. One just continues to make changes to the code in Eclipse and the running application in Eclipse immediately reflects those changes. </div>

<div><br></div><div>In (almost) all Smalltalk distributions, the Smalltalk development environment has everything mentioned above, and works like everything mentioned above. </div><div><br></div><div>The squeak.exe application is like the VirtualBox application which runs snapshot saved ram-memory-space-image-in-a-file.</div>

<div><br></div><div>The squeak.image file is like the ram-memory-space-image-in-a-file which has Eclipse and the developer&#39;s application all running all the time. </div><div><br></div><div style>The .source file is like the SVN repository in a database. You&#39;d never, never edit the SVN source code database file directly, even if in theory you could. It&#39;d ruin the versioning and indexing among other problems. </div>

<div style><br></div><div style>The .changes file is like the SVN repository database journaling file. It&#39;s just there for emergency recovery reasons. Not to be edited directly either. </div><div style><br></div><div style>

Making snapshots of the ram-memory-space-image-in-a-file is like selecting &quot;save&quot; or &quot;save as&quot; in the Squeak World menu to create a new .image file.<br></div><div><br></div><div style>Once the squeak.exe (in Windows, or the Linux, or OS X equivalent virtual machine app) is running the .image file, one uses the World Menu (like clicking on the Smalltalk desktop background to bring up the menu, this might be disabled in the scratch version) one can select the Browser menu option to start the Hierarchal Browser (Smalltalk&#39;s Eclipse IDE equivalent  running in the app). Edit the code in the Hierarchal Browser with each method save, automatically saves it in the .changes file. Everything else automatically gets save when the .image is saved from within the Smalltalk running environment. This means you can&#39;t use your favorite text editor to edit Smalltalk code. One must use the built-in Hierarchal Browser. However, all the source code for running the Hierarchal Browser is in the Hierarchal Browser itself, so you can edit the behavior of the IDE any way you like to add your favorite IDE features ... in real time. </div>

<div style><br></div><div style>It&#39;s all one running app. There&#39;s no separate programs for the IDE or viewing graphics or editing text or playing music or animating a game. It&#39;s all one app, running in one memory space. So, every &quot;application&quot; can see every other &quot;applications&quot; classes, instances, and field values. A Vulcan mind meld of all applications into each other. That&#39;s Smalltalk. </div>

<div style><br></div><div style>Does this help?</div><div><br></div><div><div class="gmail_extra">Cheers,</div><div class="gmail_extra">Darius</div><div class="gmail_extra">_________________<br><br><div class="gmail_quote">

On Fri, Jun 21, 2013 at 4:57 AM, Azka Niazi <span dir="ltr">&lt;<a href="mailto:azka.akn@live.com" target="_blank">azka.akn@live.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">




<div><div dir="ltr"><div>Thanks for the feedback Ron and Chris, but I have some more questions now.</div><div><br></div><div>1. I am sorry I didn&#39;t fully understand what did you mean by &quot;act as storage space for the code you write in Smalltalk&quot;. Also please specify whether by Smalltalk you meant Smalltalk-80 (i.e. Squeak) or did you mean Smalltalk only. As in is there a custom to refer to Squeak as Smalltalk. Doesn&#39;t it create am</div>

<div><br></div></div></div></blockquote></div></div></div></div>