I guess, under these circumstances, I should
try and make my own continuation marks in the parser/compiler.

I managed to to that. I can not say that it is a beautiful implementation, but 
it works.

For "a+b",  instead of a syntax object of '(plus a b),
the parser now generates a syntax object of
'(with-cont-mark (plus a b)), and my compiler replaces it with
(with-continuation-mark my-generated-mark-key scrloc (plus a b))
where srcloc is calculated from the syntax object.

So the same source location is specified twice: first in the custom 
continuation mark, for my custom diagnostics, and second in the syntax object 
itself, for Racket standard diagnostics.

I wonder how errortrace manages to thread the continuation marks through all 
the syntax transformers without them noticing.

In general, I have a vague feeling that I am making inferior ad-hoc Racket 
tools for tasks that are solved in Racket itself with better tools. An issue 
that I find similar was reported by Konrad Hinsen earlier this year: 
http://www.mail-archive.com/racket-users@googlegroups.com/msg32937.html

Best regards,

Dmitry

--
You received this message because you are subscribed to the Google Groups "Racket 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to