> 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.

Reply via email to