On 1 December 2012 20:22, Sebastian Nozzi <sebnozzi@gmail.com> wrote:
2012/12/1 Sven Van Caekenberghe <sven@stfx.eu>:
IMO, the secret of Smalltalk is a delicate combination of elements, take some out and the magic is gone.
Fully agree. Only a "pure" or "classical" Smalltalk would give you that "magic", the true "experience".
But I think, and hope, that the Redline developers are aware of that. I can imagine that they are trading off some of the "experience" in order to gain library support and toolchain integration (like deploying to heroku, in this case).
Java/JVM makes a distinction between int and Integer (and so on), cannot add methods to closed classes, has some meta capacity but not all, needs much more typing, cannot change many things at run time, and so â¦
Yes, ok, but you are comparing Java to Smalltalk, which is not the case. You have languages running on top of the JVM, like JRuby, that also kind of conform to the Smalltalk idea (no primitives, everything is an object, you can modify classes at runtime, extend/open them, etc.)
The question is: how much do you need for it to be this magical Smalltalk thing ?
The question is: how much of the "magic" of Smalltalk can you live WITHOUT. If your answer is "zero" then Redline is clearly not for you ;-)
Objective-C is also clearly Smalltalk inspired,
Being it a compied language, for me the experience is also lacking.
Smalltalk _is_ compiled.
more so than Java, (dynamic typing / messaging) but you can hardly call it a real Smalltalk system/experience.
Yes, completely agree. For me just because it has to be compiled. The second I have to re-start the application to see the changes reflected the magic is gone. If I cannot interact with objects, add/remove methods/variables, change the class hierachy, etc. while running, the magick is gone. Nothing beats Smalltalk's "experience".
But this is, I think, the nub of your argument: it's not about compiling or interpreting. It's about the interaction with a running system versus write-run-pray. Ruby is in many ways very close to Smalltalk (even though it has a horrific syntax), but the usual way of writing it (in my experience at least) is much like working in Java: write something, run something, examine the output. frank
Cheers,
Sebastian