This is really exciting - congratulations to the team and all the contributors.<p>For those who already know "what smalltalk is all about" but are looking to get into Pharo and get something done, I recommend Pharo by Example and Deep into Pharo - between those two books, any developer should be able to figure out the workflows Pharo expects you to employ to be productive.<p>My only advice would be to go in without preconceived notions based on your years of using other languages. And the community is super helpful.
The page seems to be going out of it's way to not mention the word "Smalltalk". Does anyone have an idea why that is? Does Smalltalk have such a bad reputation nowadays or has someone trademarked the term?
This is a long list of rare features that make Pharo interesting:<p><a href="https://pharo.org/features" rel="nofollow">https://pharo.org/features</a>
Just a heads up the pharolauncher does not seem to be working for me, at least for pharo 9. Manual download of vm + image 64bit works but 32 bit does not.<p>I have been making pharo raylib bindings and plan to make a video soon about why Smalltalk is an interesting choice for game development, it's a very 'live-coding' feel, i.e. you run your game while the editor is still live, you have free reign to at any time modify the methods of all game objects, execute random code, etc. without restarting the game...
Are there any good general examples for Pharo in the wild?
I've seen it a few times in some niche industries used as a replacement for Visual Basic or some proprietary 4GL stack.
I've often heard two statements online from older programmers.<p><pre><code> "Delphi/TurboPascal was the peak of developer productivity"
</code></pre>
And<p><pre><code> "Smalltalk was the peak of developer productivity"
</code></pre>
I've only been programming about a decade so both of those languages were long before my time.<p>Can anyone who has experience programming in Smalltalk share what was so special about it/what made it so productive to write programs in versus other languages?<p>It seems like this unique playground-VM thing makes it sort of unwieldy for non-graphical tools. IE can you use it for scripting tasks system, or for writing networked applications?<p>There must be something unique about Smalltalk for so many of it's developers to reminisce about it and claim it's been unparalleled since.
This looks like an amazing environment and interesting language. The first thing I thought of was a version of Croquet [1] using Pharo. Another thing it reminds me a bit of is HyperCard.<p>[1] <a href="https://planetcroquet.squeak.org/" rel="nofollow">https://planetcroquet.squeak.org/</a>
Thank you very much for explaining what Pharo is in one sentence on the linked page. Seriously, other projects and submissions should take notice because the general attitude is as if everybody knew exactly what your project is and what can be used for.
[edit - the link below now loads, very cool to see all the companies involved, especially given Pharo crops up here every few months]<p>I'd be curious about who, if anyone, funds Pharo development - especially if there are any medium-large companies backing it's development.<p>I found this link to the Pharo "consortium" but it's not loading for me <a href="https://consortium.pharo.org/" rel="nofollow">https://consortium.pharo.org/</a>
It seems like the code/system browser has essentially stayed the same since Smalltalk-80. See Figure 17.11 on page 298 (PDF page 320) of the blue book [1]. I've often wondered about "modernizing" it, or at least exploring other options for interacting with the source. Have there been attempts at this? This is pretty far down on my list of things to fund even if I were to win the lottery some day. But I like to think about it anyway.<p>[1] <a href="http://stephane.ducasse.free.fr/FreeBooks/BlueBook/Bluebook.pdf" rel="nofollow">http://stephane.ducasse.free.fr/FreeBooks/BlueBook/Bluebook....</a>
>In Pharo, everything is an object. This purity and uniformity in the system and language design makes Pharo clean and comfortable to learn.<p>Does this mean Python and JS meet the same definition and are as "clean and comfortable"?
For anyone that wants to learn about Pharo, I recommend this online course:
<a href="https://www.fun-mooc.fr/en/courses/live-object-programming-pharo/" rel="nofollow">https://www.fun-mooc.fr/en/courses/live-object-programming-p...</a>
It's available in English and French.
Purely object oriented languages did fall out of fashion lately. While the environment looks sophisticated, I have the feeling I would bet on a limping horse?