> With any tech, there is always this hype cycle with the disullusionment > after the "peak of excitement" and that is needed to reach the > productivity. > > I would urge all Pharo users to keep pushing and not let go of the vision, > because there is really nothing like Pharo around. >
The one things I love about Pharo is Live Coding. The ability to change the code while it executes without all this recompile-restart nonsense. I also was under the assumption you were when it came to live coding that none is doing better than Smalltalk and Lisp. So just for fun I went on to experiment how easy it would be to re implement live coding in C++ and Python. I was not expecting much if anything. With Python it was super easy, I only need a main loop, wrap the loop inside an exception that in case of an error would catch the error , not stop the execution but rather using the import tools that come with Python will import the module. Worked like a charm. I use this to develop a blender addon. But the really shock was how easy it was to do this with C++. I thought that memory leaks would make live coding with C++ impossible , I was dead wrong. Apparently OS exceptions can capture even crashes, they wont allow the executable to crash. Instead of python modules I use DLLs on windows , .dylibs on MacOS and .so on Ubuntu. Executable is a tiny loop reloading the dlls and providing to them a pointer to a very large array that contains the entire memory of the app, DLLs handle the memory to share it between objects etc. https://github.com/kilon/LiveCPP Next step is integrating iPython and also python debugger and testing unit testing with live coding. So yes definetly learn Pharo because it has many hidden gems , if you are newcomer. But if you miss Pharo , like me, when you code in other language, despair not, its very easy to recreate at least live coding.