<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>Am 15.01.2012 um 05:22 schrieb Gerry Weaver:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div class="iw_mail" dir="LTR" style="font-size: 13px; "><font class="Apple-style-span" face="Arial, Helvetica">Hello All,</font><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">First, let me apologize for starting the Delphi thing. I only mentioned it as an example IDE layout. I was not trying to say that the internal workings of it were good, bad, or indifferent.<br><br>I have spent some time playing around with things in Pharo. I have been trying to imagine how I would use it on a typical project. I have also been asking myself what it is about the current Smalltalk implementations that are keeping them from being more popular. When I consider the language/environment features that are commonly sited as Smalltalk's strengths, I am surprised that there are so few real world applications out there. I know folks are quick to point to a handful of applications, but the numbers pale in comparison to the mainstream languages. I don't share the same opinion on the productivity of the IDE. It limits my productivity.<br><br>DISCLAIMER: I am not trying to be critical of Pharo or Smalltalk in general. I am trying to provide some feedback from a Smalltalk newbie that has worked as a professional programmer for many years. I am not trying to push or force my opinion on anyone. I'm just telling it the way I see it. I apologize if anyone is offended by my words. This is certainly not my intention.</div><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">The following are some thoughts and observations about Smalltalk.</div><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">1. I believe Smalltalk's main strength is the language and it's library. </div><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">2. I don't think the image concept works in the current world. I realize there are many folks who would argue this to death, but the fact is that it hinders adoption. I believe it would be better to focus on a robust full featured library and unload the maintenance of the image based environment. I would think of Smalltalk as a Java alternative. </div><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">3. I think Smalltalk should probably forget about the desktop gui completely. There are so many good tools to build gui interfaces these days that it would take a huge effort to match even half of the functionality and performance they provide. Smalltalk should focus on rich web interfaces instead. The gui code and tools are stealing valuable resources from development.<br><br>4. Developing in Smalltalk should be just like any other high level language. It should have a REPL type interface and it would also be nice to have the capability to compile to a native executable. The various Lisp implementations would be a good example. They too came from a similar environment.</div><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">5. It should be possible to embed the Smalltalk VM in other languages (ie; C/C++ etc.) with a nice two-way call interface (think Lua).  This would allow servers and GUIs written in other languages to leverage Smalltalk for their application logic.<br><br>6. The IDE itself would probably be better written in another language. This would ease platform integration, improve performance, and make for a much richer experience overall. My personal choice for this would be Nokia Qt. There is absolutely no reason that the same browser, workspace, transcript based IDE environment wouldn't be possible. This would also pave the way for IDEs like Eclipse, Netbeans, etc. to provide plugins.</div><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">7. An interim solution to the items above would be to create a server based interface to the Smalltalk image. This would allow an external IDE to interact with the image in the same way that the embedded tools do.</div><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">I like the Smalltalk language very much. I think it would make for an awesome embedded scripting language. I also think that it is perfectly suited to hosting the back-end business logic of a large application. I think the best approach for the future is to focus on what Smalltalk would be good at, and not waste valuable resources on things that it is not really the right solution for. </div><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">My personal plan for Smalltalk/Pharo is to create an external IDE and a socket based interface in the Pharo image to support it. I also intend to create an image manager server that can manage, monitor, and communicate with multiple images. I have already been working on an IDE for Lisp. Adding Smalltalk support seems logical. </div><div style="font-family: Arial, Helvetica; "><br>Okay.. I've dug my foxhole and I'm in it with my helmet on. Fire away!</div><div style="font-family: Arial, Helvetica; "><br></div><div style="font-family: Arial, Helvetica; ">Thanks,</div><div><font class="Apple-style-span" face="Arial, Helvetica">Gerry</font><br><br><br><font class="Apple-style-span" face="tahoma, helvetica, sans-serif"><br></font></div></div></blockquote>Proposals like yours aren't new. In fact there are also complementary proposals like "give up that strange syntax and introduce curly braces...".</div><div>Combined that will lead to either C# or Java.</div><div>From your ideas I only like the enhancements for Squeak's and Pharo's interfacing to non Smalltalk libraries.</div><div>All others will only weaken Smalltalk's strengths (even if you don't realize that yet).</div><div>If you are not only developing web applications or server only applications then you might want to have a look at Dolphin Smalltalk in order to see a decent Smalltalk IDE.</div><div>The free community edition lacks some of the tools (system browser and idea space) but still you will get an idea of what is possible.</div><div><br></div><div>Regards,</div><div>Andreas</div><div><br></div></body></html>