Hi,
A while ago we had a discussion between the use of the importer and
extractor terms. In particular, Stef argued that the SmalltalkImporter
should be named SmalltalkExtractor to denote that we talk about source
code. I think it is useful to get a consensus around this topic.
I happen to have implemented recently a half a dozen importers for
various situations, and here is the current status of my understanding
of the meaning of terms:
- importer stands for creating a model out of some source that is
external to Moose. This can be source code in a file, an XML file, an
MSE file, or source code in Smalltalk. It is the importer that
contains the factory logic of creating and ensuring entities. This is
a simple meaning that can be communicated in a simple manner: "we
import the model from something"
- extractor stands for the dedicated logic of traversing the external
source. In most cases, the importer requires one or more extractors as
helpers to do the job. For example, the SmalltalkImporter requires the
SmalltalkMethodVisitor. The MSE importer is special, because it does
not have explicit factory methods, and thus it is one with the
extractor.
What do you think?
Cheers,
Doru
--
www.tudorgirba.com
"Every thing has its own flow"