[Newbies] general questions about squeak

Yoshiki Ohshima yoshiki at squeakland.org
Thu Oct 5 02:36:58 UTC 2006


  Esteban,

> I`m new in squeak, but not in smalltalk. I have some questions about
> the environment of squeak that will help me to understand it.
> - Firstly, I would like to know how the startup process of squeak is,
> as detailed as possible.

  - The VM compiled by a C compiler is loaded onto the memory.
  - The VM allocates a big chunk of memory and load the content of a
    Squeak .image file on to the chunk pretty much as it is.
  - In the loaded image, the pointers may have different offset when
    it was saved, and the endianness may be different, too.  VM
    adjusts them.
  - Now, VM look for the initial context and compiled method to dive
    in and Squeak code start running.
  - Usually, the initial context is in SmalltalkImage>>snapshot:andQuit:embedded:.
    After doing a few things, it start processing the "start up
    list".
  - The start up list consists of classes that need to do something
    upon startup.  You can inspect StartUp class var of
    SystemDictionary and #startUp: methods of them (on the class
    side).
  - Then the UI process gets started and usual interaction begins.

> - Second, MVC projects are just wrapped from morphic?. Later I will
> explain why I want to know this.

  Yes, I can figure out what you are asking^^;

> - Third, who is responsible of opening the main window and if it`s
> possible to open other windows without using wxWidgets or something
> like that. Is it hardcoded in the vm or elsewhere?

  It pretty much is.

> Why I`m asking these questions?
> Because I`m interested in using squeak as an alternative for small
> commercial projects. I want to know if it`s viable of developing an
> MVC with at least one look and feel and a little core of widgets.
> I have a look at BobsUI but it`s build on Morphic.

  There may be some confusion among os window and os widgets.  From
what I read, you seems to want to use OS widgets.  There are a few
attempts to make the emulation of OS widgets work, but none is well
maintained.

http://minnow.cc.gatech.edu/squeak/2286

  Morphic is in general better to do such look enhancements than MVC
though.  What is the reason for doing it in MVC rather than Morphic.
(I can imagine a few, but want to hear yours).

-- Yoshiki



More information about the Beginners mailing list