Bootstrap (was Smalltalk for small projects only)

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

Bootstrap (was Smalltalk for small projects only)

Chris Cunnington
"If you compare building an automated bootstrap for Smalltalk
(I just did one for Newspeak over the last few days)"

Hi Eliot, 

If you could say something about this bootstrap for Newspeak, it would better inform Squeak's development. 
Or at lease better inform this apparatchik. :)


Clearly, you are not a fan of an image bootstrapped from external files using an external compiler. 
How is what you just did for Newspeak different?


" In Squeak the FFI, file system
and external process interfaces are really weak.  A good challenge would be
to reimplement ANT (a Java application) in Squeak/Pharo."

Apache Ant. A build tool. We use CMake. A build tool for making vms. 
I want to ask a question here, but I cannot, because I cannot see how that relates to FFI. 
I'm tempted to say you mean a build tool written in Smalltalk to grow  a bootstrap nubbin...  

Chris 


Reply | Threaded
Open this post in threaded view
|

Re: Bootstrap (was Smalltalk for small projects only)

Frank Shearar-3
On 1 February 2012 03:55, Chris Cunnington
<[hidden email]> wrote:

> "If you compare building an automated bootstrap for Smalltalk
>
> (I just did one for Newspeak over the last few days)"
>
>
> Hi Eliot,
>
> If you could say something about this bootstrap for Newspeak, it would
> better inform Squeak's development.
> Or at lease better inform this apparatchik. :)
>
> http://lists.squeakfoundation.org/pipermail/squeak-dev/2010-December/155965.html
> http://lists.squeakfoundation.org/pipermail/squeak-dev/2010-December/155981.html
>
> Clearly, you are not a fan of an image bootstrapped from external files
> using an external compiler.
> How is what you just did for Newspeak different?
>
>
> " In Squeak the FFI, file system
>
> and external process interfaces are really weak.  A good challenge would be
> to reimplement ANT (a Java application) in Squeak/Pharo."
>
>
> Apache Ant. A build tool. We use CMake. A build tool for making vms.
> I want to ask a question here, but I cannot, because I cannot see how that
> relates to FFI.
> I'm tempted to say you mean a build tool written in Smalltalk to grow  a
> bootstrap nubbin...

We do: it's called Metacello [1]. It lets you
* describe the (acyclic!) dependency graph between your packages
* describe what versions of those packages make up your versioned release
* describe your external dependencies
* bootstrap the whole lot, loading transitive dependencies.

There are a few wrinkles in it, as with everything - things don't work
perfectly (yet) in an offline environment - but Dale Henrichs welcomes
bug reports/fixes and is actively maintaining the project.

The only things that I don't particularly like about Metacello at the moment are
* the description's in Smalltalk, a Turing complete language. It
requires (not a lot of) discipline not to make your build crazily
parameterised and unrepeatable.
* you have inessential artifacts - your ConfigurationOfFoo packages +
classes - in your image because Metacello builds from the inside of an
image.

The latter's easily addressable by turning your ConfigurationOfFoo
into an Installer script and using that as a startup script for a
blank/default image.

frank

[1] http://code.google.com/p/metacello/

Reply | Threaded
Open this post in threaded view
|

Re: Bootstrap (was Smalltalk for small projects only)

Frank Shearar-3
On 1 February 2012 10:40, Frank Shearar <[hidden email]> wrote:

> On 1 February 2012 03:55, Chris Cunnington
> <[hidden email]> wrote:
>> "If you compare building an automated bootstrap for Smalltalk
>>
>> (I just did one for Newspeak over the last few days)"
>>
>>
>> Hi Eliot,
>>
>> If you could say something about this bootstrap for Newspeak, it would
>> better inform Squeak's development.
>> Or at lease better inform this apparatchik. :)
>>
>> http://lists.squeakfoundation.org/pipermail/squeak-dev/2010-December/155965.html
>> http://lists.squeakfoundation.org/pipermail/squeak-dev/2010-December/155981.html
>>
>> Clearly, you are not a fan of an image bootstrapped from external files
>> using an external compiler.
>> How is what you just did for Newspeak different?
>>
>>
>> " In Squeak the FFI, file system
>>
>> and external process interfaces are really weak.  A good challenge would be
>> to reimplement ANT (a Java application) in Squeak/Pharo."
>>
>>
>> Apache Ant. A build tool. We use CMake. A build tool for making vms.
>> I want to ask a question here, but I cannot, because I cannot see how that
>> relates to FFI.
>> I'm tempted to say you mean a build tool written in Smalltalk to grow  a
>> bootstrap nubbin...
>
> We do: it's called Metacello [1]. It lets you

<snip>

Now that I've caught up on the context of the discussion, Metacello's
useful for _Smalltalk_only_ things, unlike ant/maven/msbuild/etc.

If I had a project that had mixed components, with a Smalltalk
component, I'd probably reach for maven.

frank