You should excuse me. What follows is a combination of wishful thinking and inquiry, and I really don't know if there's place or interest in this kind of discussion here.

An Author should be an object. Right? Because a String or an "annotation" is not the most accurate concept that describes you in the system, and I know smalltalkers which feel a subtle ontological degradation when they realize they are not an object :)

But, what is an Author anyway? It is different from a Mantainer? There are External Contributors? The role plays an important game here. And an Author or Mantainer is not necessarily an individual, it could be even an Institution or Team. Often Institutions, for example, have hierarchical names, historical names, they are joined or splitted, etc. Modelling this set of interactions in an universal way is very complex [*], and there should be a reasonable stopper, which I honestly think, is the most difficult thing to find because requires a lot of experience building systems. I am the only one who think this?

This little issue (not having Authors and friends as objects) prevents doing possibly some pretty cool tools.
-What about finding the role of somebody in a method?
-And what about assessing the author of a class and the maintainer?
-You may want to find the e-mail of somebody (to verify a patch, to ask him something), but is not there.
-Avoiding impersonation when commiting in public repositories?
-You comment a message, compile the method and...magically you're the new "author".
-And could limit the evolution of some research developments like Subjectivity, or reverse engineering tools.

But, I'm lying to you if I advocate such simplistic view. There's no such Author, and in history the authors as we know today are just a constructed figure in Literature after the Renaissance. In fact computer practicioners adopted that word, as many others, as a common practice taking words from other fields, but there's a real challenge in determining the very nature of an Author.�� An anonymous method has a writer, but not an author, and one could think the same about auto-generated code. So an author could be a constructed figure out of the writers, and there are other figures not so visible in a first sight. So having a good reification of a Writer, Author, and its roles, bring new possibilities to Smalltalk/Pharo, because the richer your "human model" and vocabulary, the more you can express and think about the continuous, the problem of interpretation and authority, etc.

Cheers

Hern��n

[*] We are facing this situation in our FRBRoo model currently.

2009/7/22 Alexandre Bergel <alexandre@bergel.eu>
> This package, in the last core image is modified but not commited so
> when following the steps
> from the HowToContribute wiki page, in the part of creating a mcz
> package with the change the mcz
> generate will include the other uncommited changes. Should I use a
> changeset instead in order to not
> commit changes that I don't want?

First, you should update your image. It should be a core. Your change
must be produced for Core.
Then, implement your fixe. If more than one package is touched, then
produce a slice. You should save your fix in PharoInbox using
Monticello.
Last step, make sure your fix load in a fresh and updated core image;
add an issue in the google website; send an email to the mailing list.

> What is the goal with the Author class?

A reification of author. Authors should not be strings passed around.