This page is part of the web mail archives of SRFI 72 from before July 7th, 2015. The new archives for SRFI 72 contain all messages, not just those from before July 7th, 2015.
Andre van Tonder <andre@xxxxxxxxxxxxxxxxx> writes: > On Tue, 23 Aug 2005, Michael Sperber wrote: > >> I want to change the representation ot carry location >> information, possibly to record if parens or brackets were used, >> possibly whether dots appeared in the source code, possibly comments, >> and probably all kinds of other stuff in the future. > > Bear with me while I play devil's advocate. > > Syntax as lists (or isomorphic to) represents the highest level of abstraction > (on the input) that preserves the meaning of Scheme code. It is pretty much > the unique interface satisfying this theoretically nice criterion, which IMO > makes it a very valid minimal API for a Scheme macro system. I think we differ on what "high" and "low" mean in this context, but that's a minor point. I can't really fault your argument here for a purely compilation-oriented notion of "meaning." But I disagree that "meaning" is restricted to that---I think source-code location information is part of the meaning, and I can think of contexts where I would even use it in a compilation setting, say, for spotting errors in restricted environments > A minimal level of support for user-access to location would attach location to > identifiers only. Are there sufficiently many compelling use cases that are > not covered by this? I'm not sure comments or square brackets qualify ;-) As someone pointed out, how do you point to the location of ( 3 4 ) for an error message? (Or anything where the opening paren is removed from the operator, say.) You can always put more intelligence in your IDE, but at the cost of replicating functionality that the compiler already has. -- Cheers =8-} Mike Friede, Völkerverständigung und überhaupt blabla