[racket] How ought I run the annotate function in gui-debugger/annotator on a datum?

From: Patrick Boe (patrickboe at gmail.com)
Date: Mon Jan 20 19:40:31 EST 2014

Thanks for taking a look, John.  Here's a reduced version.  I don't think
there's any missing namespace information here at the time of evaluation,
since the syntax is being manipulated in a macro, but I am relatively new
to using namespace anchors, so I could be wrong. It seems to me like the
syntax is being expanded either more or less fully than the annotator wants.

#lang racket
(require (for-syntax racket/format gui-debugger/annotator))
(define-syntax fail-to-annotate
  (lambda (stx)
    (let-values
      ([(annotated _)
        (annotate-stx (expand (cadr (syntax-e stx))) '_ '_ '_ )])
      annotated)))
(fail-to-annotate (string-append "hi" "lo"))



On Mon, Jan 20, 2014 at 2:18 AM, John Clements <clements at brinckerhoff.org>wrote:

>
> On Jan 16, 2014, at 4:05 PM, Patrick Boe wrote:
>
> > I am trying to learn how to use the DrRacket debugger's annotate
> function. My ultimate aim is to build a REPL that you can execute from
> within a closure and have access to everything that's in scope. (see my
> StackOverflow question on that topic and Greg Hendershott's well-researched
> answer) For the time being, I'm just trying to explore how the annotate
> function works. You can see my first exploratory attempt at using it, and
> the results, here.
> >
> > The error, which is happing inside of the annotator, seems to arise when
> it tries to pattern-match he application of string-append. The matcher is
> looking for a #%plain-app and the expanded syntax I'm presenting to it
> contains an #%app. I'm unsure if I should be expanding the syntax
> differently so it comes out as a #%plain-app or if there's something else
> I'm doing wrong to produce the syntax I'm feeding into the annotator. Does
> anybody see where my error is?
>
> Sadly, I don't have a browser right now, so I can't take a look at your
> links. Perhaps you can reduce it to a ten-line example? Could the solution
> have something to do with namespace anchors?
>
> John Clements
>
> >
> > I originally posted this question to SO, but Greg suggested I might have
> more luck with it here.
> >
> > Best,
> > Patrick
> >
> > PS - if you're reading this, thanks the great PLAI class last year, SK!
> > ____________________
> >  Racket Users list:
> >  http://lists.racket-lang.org/users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20140120/880bb3db/attachment.html>

Posted on the users mailing list.