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