Hello Hyrum,

On Mon, Jun 28, 2010 at 1:20 PM, Hyrum K. Wright
<[email protected]> wrote:
>> But, beg your pardon, what's so "heavy-weight" with RAT? I can't see
>> any advantages of a Python implementation, other than it would be
>> preferrable to Python developers.
>
> In our discussion, Robert and I observed that improving and extending
> RAT as it is today can be quite a chore.  He explained the origins of
> RAT as "and experiment in software architecture" and that it had
> horribly gone wrong.  The architecture is way over-engineered for the
> core mission of RAT, but because the tool proved useful, it was
> adopted anyway.  mouse is an attempt to greatly reduce the amount of
> code needed to accomplish that mission, and be much easier to extend
> down the road.
>
> Another goal of mouse is to be easily incorporated into a post-commit
> hook, so that it could audit the files being modified during each
> commit.

I'm not sure using Python as a programming language would make it
simpler : Many people from the Java world enjoy audit tools such as
CPD, Findbugs, Cobertura and so on, but they will only use a tool like
RAT if it integrates with their build and integration tools such as
Ant, Maven and Hudson. I have the feeling that you may waste much more
time developing Maven/Ant plug-ins that call Python code (need to fork
a process, what if Python is not installed?) than what you will gain
by writing the core in Python. Another solution would be to rely on
Jython to seemlessly integrate your code inside a Maven/Ant plug-in,
but it looks more like a magic trick than the right thing to do, in my
opinion.

I admit that my arguments may sound a little bit Java-centric, but I
think that there are many potential users of RAT among Java developers
because of their love for audit tools. :-)

-- 
Adrien Grand

Reply via email to