Hi Shlomi,
I can certainly understand how you feel, my fingers have EMACS burned in
pretty deep. I will offer you a different point of view, from the
assumption that this can only help you decide what's good for you.
Squeak is indeed very different in many ways, and I agree the limited
keyboard navigation is a bad one. The upside is that it is different in
many ways that are good, or at least thought provoking. For example,
this defective keyboard support is the downside of having its own UI
framework, Morphic. One upside is that Morphic is very explorable:
getting from seeing a UI element on the screen, to seeing and modifying
interactively the values of that object takes about 5 mouse (sic)
clicks. This illustrates one of Smalltalk's main premises, that
"Everything is an object" in a way that is incomparably concrete. Sounds
like a curiosity, but living in object-land for a while changes the way
you think more than any particular feature of the language. Similarly
novel ideas that affect you slowly: saving the image, everything
including the compiler and (almost all of) the VM is written in
Smalltalk, deep portability across platforms, the execution stack is
made of objects...
So sure, using GNU Smalltalk will seem much more familiar, but by the
very choices that make it superficially more convenient, it is made more
conventional, and therefore less interesting to learn. If you decide
beforehand to miss so much of what makes Smalltalk different, maybe you
*would* be better served by learning Ruby...
BTW, note that the [brackets] are not equivalent to C's {braces} -
they're a very concise syntax for closures (Scheme's lambda). In fact in
Squeak {} actually do something very close to what they do in C:
evaluate the statements in order (and then return all their returned
values in an array).
On the other hand, Squeak itself is quite versatile - it has alternative
UIs you can use. The same Browser that you find annoying in Morphic
because it has bad keyboard support there, has also been ported to
wvWindows, gtk (under heavy development) and the web browser of you
choice, so don't let the surface mislead you. But better advice would be
- try to learn like a child. Forget what you're used to for a while.
Even the mouse has its wisdom.
And most important, whatever you do, have fun :-)
Daniel
Shlomi Fish wrote:
שלום לכולם!
לי יש בעייה אחת עם Squeak - היא לא מתנהגת כמו שאני רגיל. אני כבר מתכנת בא
בימים, שרגיל לכתוב קוד. באמצעות gvim, Bash ועם קצת עזרה מפרל. מעל KDE. על
לינוקס. סקו'יק היא מכונה וירטואלית, עם מערכת הפעלה וירטואלית, עם ממשק משתמש
פנימי, שכולם לא תואמים למה שאני רגיל ואוהב. בנוסף לא קיימת שום אפשרות בה
לערוך קובץ טקסט אחד (או מספר קבצי תוכנה) כדי לכתוב את התוכנה מההתחלה עד הסוף.
כדי לעשות זאת יש צורך להשתמש בממשק המשתמש וב-Class Browser עם קליקים רבים,
שאני שונא לעשות.
ניסיתי לייצא קבצים מסקוו'יק והם יוצאו כקבצים שבהם השורות נגמרות ב-\r. לא \n
כמו שרגילים לכתוב ביוניקס, גם לא \r\n כמו שיש בחלונות. \r כמו במקינטוש הישן
והגרוע. למה???
בקיצור בסוף התייאשתי מסקו'יק ועברתי ל-GNU Smalltalk, שלפחות רץ מעל יוניקס
ומשחק יפה איתו, ואפשר לכתוב לו קוד ב-gvim. אומנם התחביר של לכתוב מחלקה חדשה
הוא קצת מעוות (איזו הערה מוטרפת) אבל אפשר להסתדר איתו. אבל הצלחתי לגרום לו
לקרוס... ;-)
עוד בעייה שאני מוצא ב-Smalltalk הוא שהתחביר שונה ממה שאני רגיל. למשל משתמשים
בסוגריים מרובעות ([...]) במקום בסוגריים מסולסלות ({...}) בשביל בלוקים. ברור
לי ש-Smalltakl נכתבה לפני ש-C וחברותיה נהיו פופולריות, אבל זה עדיין מעצבן. לא
יודע, אולי אני צריך ללמוד רובי במקום.
בכבוד רב,
שלומי פיש
On Sunday 16 July 2006 11:57, Nir Soffer wrote:
ברור שSmalltalk היא השפה המושלמת לילדים :-)
---------------------------------------------------------------------
Shlomi Fish [EMAIL PROTECTED]
Homepage: http://www.shlomifish.org/
Chuck Norris wrote a complete Perl 6 implementation in a day but then
destroyed all evidence with his bare hands, so no one will know his secrets.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]