TOPIC: Give Smalltalk a little run
#820
Give Smalltalk a little run 3 Years, 5 Months ago
Hi smpc:

I think reviewing a little tutorial about smalltalk could clarify Suneido a lot, because they share a lot of similarities.
See www.squeak.org.
There is an awesome tutorial about "thiking in smalltalk" written by Diego Gomez Deck www.consultar.com/Squeak/tutorial/english.html
he development cicle described by Gomez Deck can be used with suneido and will teach you how to unleash the real power of dinamic environments.
If you follow that tutorial you will find at home with Suneido.
 
 
#821
Re:Give Smalltalk a little run 3 Years, 5 Months ago
Thank you. That may be what I am looking for, I will try the tutorial and see if it helps.

Interestingly just after sending my previous posts I found an old copy of a Digitalk Smalltalk/V manual in my box of old programming books.

Looking through it was like, Aha! so that is where the Suneido language is coming from. The pages of the Smalltalk/V manual are sprinkled with those #(one two three) array/lists and it mentions blocks and uses the |a b c| syntax.

With these resources I may get the deeper understanding/appreciation of Suneido that I felt was missing before.
 
 
Scotty
 
#823
Re:Give Smalltalk a little run 3 Years, 5 Months ago
Yes, Suneido shares various things with Smalltalk. For example, the development environment (Workspace, LibraryView, Inspector, etc.) has many resemblances with a Smalltalk environment. The basic concept is that Smalltalk is an environment that you can shape as you wish, from a little book or game up to a full fledged application, being that the environment itself is written in Smalltalk language. Suneido is the same thing, because its environment is written in Suneido language.

However, the language itself I think is very different, albeit sometimes some things appears to be similar. Smalltalk is more pure, as an object oriented language. But I must say: I like Suneido environment much more than Squeak environment, because Squeak user interface is more confusing for the first time user (sometimes it appears to me as an entire operating system embedded in your real operating system!). Instead, Suneido user interface is less fancy, but it's simpler and cleaner (of course, in my opinion).

Another thing is that from the point of view of many C/C++ programmers, Smalltalk syntax is like japanese... :P
 
 
Mauro
 
#824
Re:Give Smalltalk a little run 3 Years, 5 Months ago
Just last week I was thinking that Japanese would be a cool language to learn.
 
 
Scotty
 
#825
Re:Give Smalltalk a little run 3 Years, 5 Months ago
By the way ...

Japanese is a very simple language, they have just 50 sounds (sillabes)... Actually writting and reading japanese is the problem because they have at least 4 encoding schemes: hiragana, katakana, romaji and ideographic icons borrowed from chinesse.
(I don't speak japanese... a descendant of japanese gradfathers told me the above facts and they can't be wrong... so if you know better, please correct me)

Smalltalk syntax is very simple OBJECT METHOD .
What looks odd to a "standard" programmer is the fact that control flows constructs are not special/reserved words but constructed themselves with objects, so :

[i < o] ifFalse:[Transcript say:'hello'.]

[ I < 0] evaluates to a Bool Object, this Bool object is solicited it's
IfFalse method, whose parameter is another object, the:

[Transcript say:'hello'.]

Wich is an object of type codeblock, this code block will be evaluated if the value of the Bool Object is false.

To me, Suneido is a cross breed between JavaScript and Smalltalk (With the latest patterns for Multiple Inheritance, we could add some C++ to the mix) giving us the awesome posibility of using an environment as powerfull as Smalltalk while using the familiar "C family" look, but the Mindset needed to fully understand suneido departs boldly from C family languages and approachs closelly with Smalltalk.

I Think every Suneido Programmer must take a look to SmallTalk and it's ways, It will clarify Suneido a lot.
 
 
#826
Re:Give Smalltalk a little run 3 Years, 5 Months ago
I have downloaded Squeak and will give it a run through with the tutorial. Also I was impressed by the enthusiasm of the Smalltalk community there and the first link to free books on this page:

www.squeak.org/Documentation/

Having said that, I don't plan to evaluate Smalltalk with a view of using it for producing complete applications. But I will give it a go with the view of appreciating a mature dynamic environment.
 
 
Scotty
 
#827
Re:Give Smalltalk a little run 3 Years, 5 Months ago
sanotto wrote:
Japanese is a very simple language, they have just 50 sounds (sillabes)... Actually writting and reading japanese is the problem because they have at least 4 encoding schemes: hiragana, katakana, romaji and ideographic icons borrowed from chinesse.
(I don't speak japanese... a descendant of japanese gradfathers told me the above facts and they can't be wrong... so if you know better, please correct me)
I think that kanji alphabet is very difficult to master. Japanese people averagelly learn kanji for 6 years in elementary + 3 years in middle + 3 years in high school.
From a student of Japanese language in a forum:
"Kanji, not only do you have to memorize them on top of 2 alphabets, but having to learn different pronounciations for each one makes it even more complicated. If you see a word containing many kanji characters, it is very rare to be able to pronounce it..you might know the meaning but you have no idea how it's pronounced.
Grammar, not only is the sentance structure backwards compared to english but it can also be quite odd. Verbs aren't bad, but there are a lot of different forms that also change according to politeness levels. Particles can also be tricky occasionaly."...

Smalltalk syntax is very simple OBJECT METHOD .
What looks odd to a "standard" programmer is the fact that control flows constructs are not special/reserved words but constructed themselves with objects, so :

[i < o] ifFalse:[Transcript say:'hello'.]
As I said, Smalltalk is more 'pure' as an object-oriented language. It has only five reserved keywords: true, false, nil, self and super. All other basic things (as control structures for conditional evaluation and iteration) are implemented in the standard Smalltalk class library. This is another thing that at first is very strange to C/C++/Java programmers, besides the (very) different syntax.
Anyway I think that something like:

if (i < 0) Print('Hello')

is a lot more familiar and simpler to read than:

[i < 0] ifTrue:[Transcript say:'hello'.]

But I don't know, maybe for a japanese guy, the latter is more familiar... :P

[...]I Think every Suneido Programmer must take a look to SmallTalk and it's ways, It will clarify Suneido a lot.
Wikipedia has a very nice overview on Smalltalk. Another good overview, that explains differences between Smalltalk and C/C++/Java languages is THIS.
 
 
Mauro