Hello PharoDev, I have a largish project (Siren) that I have developed in ST80/VisualWorks (since 1984) and ported to Squeak in the past.
I'm allows looking for a cleaner free ST80 implementation to host the project. Looking at Pharo, it appears to me to be suffering the same bloat issues as Squeak. I have a few questions: Why don't you all use a 6-paned browser (called the package browser in Squeak) and control the introduction of top-level meta-categories? The top-level (packages or meta-catgories) should be a list of 20 or fewer topics such as Magnitudes, Collections, Graphics, Text, Compiler, Tools, etc. and each of these should have 20 or fewer categories within it. I ported the package browser to Squeak and reorganized their system once, but people continued to add top-level categories to make finding their code easier. I tried to add the facility to the Pharo browser a year or so ago, and gave up because I couldn't figure how out how to subclass and refine the existing browser framework (and the fact that it seems to be under construction). Why do you still use the (terrible, IMHO) Squeak graphics and UI packages (Morphic, Balloon, etc)? It appears that new mostly-redundant systems are still being added to replace these, right? Can't someone reimplement the VisualWorks "Wrapper" UI framework (or something like it) on top of OpenGL contexts as in VW? It's help up pretty well after over 25 years. (David Leibs and I toasted it just last December in Australia.) How does a newbie learn what all the new packages are for? Glamour, Ring, AsmJit, Zinc, etc. are neat names, but if they're not part of higher-level packages it makes navigating the system (and even figuring out what they're for) pretty difficult. Are there any benchmarks of the current VMs compared to VisualWorks? The last time I used Squeak (a few years ago) it was still pretty slow. I have a real-time event scheduler in Siren that I use to schedule MIDI, so I can run "drum roll" tests to see how the VM performs. How does Pharo handle user primitives or foreign function calls? Is anyone maintaining the old SWIG implementation of Smalltalk? I used it quite a bit to have Smalltalk code create and manage C++ signal processing graphs in the past. SWIG is still going strong, and it's embarrassing that there's no mention at all of Smalltalk on the SWIG pages. I'm not trying to start a fight, and I really did like the initial Pharo mission statement of making a tighter, cleaner open-source ST80 implementation. Is that dream still what motivates the community? If yes, where are the minimalists hiding? Stephen Pope HeavenEverywhere Media and FASTLabInc.com Santa Barbara, CA USA -- Stephen Travis Pope Santa Barbara, California, USA http://HeavenEverywhere.com <http://heaveneverywhere.com/>
