News for hackers. Stuff that matters.
Re:Pharo 6.0 Released by i_don_t_know on Wednesday June 07, 2017 @08:15AM (#14505622)
Very nice. Congratulations!

Unfortunately, the announcement is a bit terse. Does anyone have any links or more detailed information on these items?

- A new code changes management system named Epicea for easier reviewing and recovering of your code easily

How does it differ from the old system?

- Integrated support for Git through an easy-to-use tool for repositories and commits management named Iceberg (as a preview for Pharo 6, it will be the default in Pharo 7)

Documentation? Screenshots? Any more information so I (we) can get an idea of how it compares to Git integration in other tools like VisualStudio Code?

Epicea and Iceberg seem to cover roughly the same ground. What are the relative advantages and disadvantages? When would you pick one tool over the other?

- The PharoVM is now part of OpenSmalltalk initiative

What's the OpenSmalltalk initiative?

- Introduction of object immutability, alternative bytecode sets and block closures independent of outer context

Very interesting. Is there documentation on any of this? How do you use it? Why was this added? Can you point to some projects that use any of this?

- Pharo is faster

How much faster? And, more interestingly, how did you achieve it?

Re:Pharo 6.0 Released by fniephaus on Wednesday June 07, 2017 @08:20AM (#14505668)
- - The PharoVM is now part of OpenSmalltalk initiative

- What's the OpenSmalltalk initiative?

Pharo used a fork of the CogVM [1] for some time which has been moved to GitHub and is now called OpenSmalltalkVM [2]. For Pharo 6.0, the team has merged their changes back into the OSVM repository.

[1] http://www.mirandabanda.org/cogblog/about-cog/

[2] https://github.com/OpenSmalltalk/opensmalltalk-vm

Re:Pharo 6.0 Released by philippeback on Wednesday June 07, 2017 @10:29AM (#14506695)
Iceberg: code management with Git, so lots of actions can directly happen from inside Pharo. There can be other backends than Git in the design. Git is the only backend atm.

Epicea is something dealing with code changes even if you are not using git. Instead of .changes files. You can see what you changed in a given session.

FullBlockClosure: A FullBlockClosure is a closure that can be independent of any outerContext if desired. It has its own method (currently reusing the startpc inst var) and its own receiver. outerContext can be either a MethodContext/Context or nil.

Alternative bytecode sets is paving the way for the new VM developments, which will really make the VM super fast.

How much faster is Pharo6? On the VM side, depends. But 30% or 200% depending on what one looks at. Definitely speedy. On the image side, feeling is much improved because instead of scrolling through slow lists, FastTable is underneath a lot of things and that is simply much much faster (especially when inspecting super long collections, like thousands and thousands of entries).