[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Zodiac questions
Instead of using Zodiac's output, you could create a Zodiac vocabulary to
build your tool. You may need several of them. To be more precise, you
should build vocabularies that override some of the expansions in the
default Zodiac front-end and instead use more appropriate elaborations.
-- Matthias
X-Authentication-Warning: fast.cs.utah.edu: majordom set sender to owner-plt-scheme@flux.cs.utah.edu using -f
Date: Mon, 30 Oct 2000 03:01:06 -0800 (PST)
From: Noel Welsh <noelwelsh@yahoo.com>
Content-Type: text/plain; charset=us-ascii
Sender: owner-plt-scheme@fast.cs.utah.edu
Precedence: bulk
Hi,
As part of a system to extract comments from Scheme
code I want to parse the code to extract summary
information such as the fields of a structure, the
parameters of a function and so on. I am doing this
with Zodiac, but I now think Zodiac may not be the
best way to go and I'm looking for suggestions. The
problems I've had with Zodiac are:
- the parsed code loses some information (eg units
lose signatures - they are flattened) which is
difficult to recover as links from parsed code to
source are not maintained. I know I can recover that
information from the location fields (I realise this
is the whole point of Zodiac) but it is a pain to do
so - I have to open the file again, count lines till I
reach the correct line, then count columns etc.
- Zodiac dies when processing files that have
signatures included with require-library statements,
which is most code. This is most code. The only way
I see around it is to concatentate all the required
files together, and pass that to Zodiac.
I think I may be better off with a pattern-matching
system that operates on the source code rather than
its Zodiac representation. On the other hand, I may
be missing stuff in Zodiac. Essentially all I want to
do is transform stuff like
(define (a-function param1 param2 param3) ...)
into a structure with fields name and parameters.
Things that might useful:
- Zodiac (see above problems)
- Zodiac pattern-matching (but this is only textual
transformations? - the documentation is broken).
- Swindle pattern-matching
Suggestions/help appreciated.
Thanks,
Noel
__________________________________________________
Do You Yahoo!?
Yahoo! Messenger - Talk while you surf! It's FREE.
http://im.yahoo.com/