axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Automation & algebra lattice (was: Re: [Axiom-developer] lattice)


From: Bill Page
Subject: RE: Automation & algebra lattice (was: Re: [Axiom-developer] lattice)
Date: Mon, 18 Aug 2003 13:45:55 -0400

David, Tim,

About "parsing .spad files to write dependencies". I wrote
a Perl script that does this last week. Unfortunately the
code is sitting on a machine that is still in the black-out
zone following last week's power failure. I do have a print
out and it is quite short, so if you are interested I can
re-key it and send it. The parsing is a bit "heuristic" in
places because of the macro flexibility in spad, but I
think that it is at least 95% accurate.

The sorted list of dependencies is over 600 pages in length!
But maybe it might be of some use to Tim in verifying the
new make file?

Also, it occurs to me that this information aught to be
presented in an easier to obtain form, perhaps as ++
comments in the spad.pamphlet source. It seems perhaps
a design flaw of the spad language that these references
do not have to be declared explicitly. No?

Anyway, One thing I did try was to use the list with tsort
to find the cycles. And I found lots of cycles!

Another thing I noted was that there seemed to be a lot
of (possibly) duplicated code in files with the same name
but one in all upper case and one in all lower case. I am
not sure what is the cause of this yet. In some cases the
differences in the files seem obvious and both seem
required. In other cases I am not so sure.

Chhers

> -----Original Message-----
> From: 
> address@hidden 
> [mailto:address@hidden
> .org] On Behalf Of David MENTRE
> Sent: Monday, August 18, 2003 1:16 PM
> To: address@hidden; Tim Daly
> Cc: address@hidden
> Subject: Automation & algebra lattice (was: Re: 
> [Axiom-developer] lattice)
> 
> 
> Hi Tim,
> 
> root <address@hidden> writes:
> 
> > The lattice is quite subtle in places. The hardest part is 
> the size of 
> > the thing. ~1100 domains in ~375 files. Every time I set out to do 
> > anything like change the authors which takes less than 1 minute per 
> > file it turns into a several hour task. Some of the tasks took
> 
> I hope you use Perl to do such things like:
> 
>   perl -pi -e 's/Old Author/New Author/g' *.spad.pamphlet
> 
> 
> > over an hour per domain. I've been at this task since 
> January. I have 
> > much "back-checking" to do but I can do that after upload. (e.g. I 
> > have to check that the bootstrap code is current, a painfully slow 
> > process).
> 
> For such task (i.e. checking that bootstrap code is 
> up-do-date regarding generated .spad file), we could probably 
> write some Perl scripts that would automate it. I'm not 
> saying it's easy, but it would be worth it considering the 
> size of the algebra.
> 
> 
> BTW, regarding the algebra lattice, I have considered 
> automatically parsing .spad files to write dependencies in a 
> file and then generate the (currently cyclic) graph using 
> free software tools like VCG (Visualization of Compiler 
> Graphs, [1]). The hairy 
> space-indentation-determines-code-blocks of SPAD files has 
> stopped me (and also my lack of knowledge in SPAD grammar) 
> but, with a working Axiom, it might be possible to hack the 
> SPAD parser to output dependencies. Producing the graph is 
> then very easy.
> 
> 
> Yours,
> d.
> 
> [1] http://www.cs.uni-sb.de/RW/users/sander/html/gsvcg1.html
> -- 
>  address@hidden
> 
> 
> _______________________________________________
> Axiom-developer mailing list
> address@hidden 
> http://mail.nongnu.org/mailman/listinfo/axiom-> developer
> 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]