"I am sure there will always be skeptics. But my own experience was
different. For me, the most weird thing about Squeak (and now Pharo) IDE
is its insistence in showing only one method at a time. A method is too
small a chunk of code. It is easy to miss the forest for the trees. In
Dimitris video, you see lots more code in one glance in vim session. So
there are pragmatic reasons why some coders fallback to using fileOuts
for browsing classes."
I could not agree more , I find the column GUI weird and a waste of space. This is why I have ended up relying a lot on GTSpotter (finder) which help me browse classes a lot faster than the class browser. Kinda ironic.
I am using Pharo since 2011. I am still dont like Class Browser :D
"In summary, if someone misses Emacs or Vim when working with Pharo, it could be due to:
- being stuck in the file-based way to think of coding.
"
Its a common misconception that Pharo does not heavily rely on text files, it actually does. Not only the source file makes it possible to view the code even the oldest method of version control tha Pharo being a fork, inherited from Squeak, the known mcz files they may look small binary files like the Pharo image but they are merely zip files with source code text files with the st extension.
The image is merely the bytecode, the VMs machine code sort of, the actually source works the same way as other languages. Like other languages you dont need the source code to execute , only the bytecode. What makes the image special is that its one file and its a memory dump which makes it easy to store both live code and live state. Which is very helpful, technically its mandatory for true live coding, but still Pharo has to rely on source code files to make our lives easy. From there on is just a question whether you break the source code files in several small ones, or keep one large.
"Besides that, is there an easy way to run an image in text-only mode, with a REPL or a playground or something like that?"
Yeap its possible and has been around for a very long time. Pharo also makes it dead easy to expose any method as command line argument, so its possible to code completely from the command line although definitely not recommended.
Deep Into Pharo book explains how.