[Vm-dev] Squeak/Pharo VM fork history
K K Subbu
kksubbu.ml at gmail.com
Mon May 18 09:24:41 UTC 2020
On 17/05/20 11:33 pm, Jakob Reschke wrote:
> What remains indisputable is that the CMake build system was not
> promoted as the official one in the OpenSmalltalk repository. Many
> of the Squeak folks would also like to use CMake to build...
CMake and autoconf tools are not exclusive. Both will work in the
typical 'configure && make && make install' sequence.
[I am just jotting down my own recollections below. please correct if I
am wrong]
Squeak was developed on Darwin (Unix flavor) and then quickly ported to
other Unix flavors (Solaris, HPUX) and Wintel because of portability of
both its code and its CMake build scripts. GNU/Linux port appeared only
around 2005 (2.5?) but quickly dominated over other Unix ports,
especially when Etoys shipped in OLPC's XO. Its native toolset -
Autotools - came to be preferred over CMake. Squeak VM continued with
its CMake build tools in SVN while the newer Open Smalltalk VM moved
towards GNU toolchain and github.
The choice of build tools affects only the platforms code maintained in
github and not the VMMaker code. The platform champions get to pick
their build tools. If there are sufficient supporters for a platform
port, then its code is likely to evolve sustainably. When supporters
dwindle, build rot is inevitable. That's life :-(.
So the real question is "Are there enough supporters to make a platform
fork (either in build tools or OS flavors) viable in the long term?" If
not, the fork will gets its seven days of fame and then rot slowly.
GNU/Linux and MacOS have a large supporter base, but ports like Solaris,
FreeBSD may not. So Squeak/Pharo platform fork will affect them much
more deeply than GNU/Linux or MacOS, particularly when it comes to
hardware plugins like graphics or sound.
But a bigger risk is that if GNU/Linux starts dominating the ports, then
Squeak/Pharo will become like other apps in the GNU stack with
increasing dependencies on GNU toolchain and runtime frameworks. There
is nothing wrong in building an app. It is just not a virtual personal
computing system. It is just a balloon descending into its castle ;-).
Regards .. Subbu
More information about the Vm-dev
mailing list