Completely re-compiling croquet from source

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Completely re-compiling croquet from source

S E Horne
To understand the entire croquet software, I want to setup a development environment with all the source code and re-compile everything.  Any recommendations for this?

Does the CroquetSource hedgehog project contain everything, including any native c++ code and makefiles?
Reply | Threaded
Open this post in threaded view
|

Re: Completely re-compiling croquet from source

Bert Freudenberg-3
Am 20.07.2006 um 17:12 schrieb S E Horne:

> To understand the entire croquet software, I want to setup a  
> development environment with all the source code and re-compile  
> everything.  Any recommendations for this?

My recommendation? Don't. ;-)

You're looking at a truly object-oriented system. There is no way of  
rebuilding it from source, because it is not defined by source code  
only. It was created by directly manipulating objects in memory, and  
saving a snapshot of these objects (which we call an image). Other  
people loaded that snaphot, manipulated the objects in it, and saved  
it again. Coding in Croquet means to manipulate class objects - the  
text is only a by-product.

> Does the CroquetSource hedgehog project contain everything,  
> including any native c++ code and makefiles?

Croquet is implemented on top of Squeak. Squeak is a Smalltalk,  
consisting of two parts: a virtual machine, and the image.

The virtual machine is written in Squeak Smalltalk and translated to  
C. The code for this is contained in the package "VMMaker",  
installable from SqueakMap. Additionally, there is hand-coded C for  
interfacing the hardware and operating system. These platform-
dependend parts can be downloaded from squeakvm.org.

The Croquet image was created by taking a Squeak image and loading  
various packages, and modifying the image in between. The process can  
be followed by looking into the homebase image which is part of the  
Croquet SDK.

The Squeak image is evolved from an older image, going back to an  
Smalltalk-80 image, which goes back to even older object images.  
Quoting the FAQ: "Some bits in this Squeak are descended from  
Smalltalk-76. They have been loaded and saved in a 'core image' many  
times. It is, theoretically possible to start from nothing (since it  
has been done in the past, back before the earth cooled), but it is  
not easy." (http://minnow.cc.gatech.edu/squeak/769)

Welcome to the wonderful world of objects. You might even like it,  
and never look back ;-)

- Bert -