On Apr 24, 2015, at 8:44 AM, Jens Axel Søgaard <jensa...@soegaard.net> wrote:

> As it turns out, it is at-exp that are at fault.
> 
> The screen shot below show that arrows and renaming works when using the 
> infix packages with the syntax:
>       ($ "b^2-4*a*x")
> 
> Note that it works even for identifiers inside the string.

Oh! Well that’s a pleasant surprise! I didn’t know that check-syntax arrows 
could point to “identifiers” within strings! 

> The arrows disappear when I use the at-exp syntax:  @${b^2-4*a*x}. 
> I am not sure why. Anyone?

I tried this and this worked with at-exp:
#lang at-exp racket
(require (for-syntax syntax/parse))
(define-syntax m
  (syntax-parser
    [(m str)
     (datum->syntax #'str (string->symbol (syntax-e #'str)) #'str #'str)]))
(let ([x 5])
  @m{x})

But that made me think of doing this:

In main.ss, line 68, you use datum->syntax with three arguments, but it works 
if you add the fourth argument:
                     (datum->syntax 
                      #'str
                      (apply string-append
                             (map syntax->datum 
                                  (syntax->list #'(str str* ...))))
                      (list (syntax-source #'str)
                            line col pos
                            (syntax-span #'str))
                       #'str)

> The planet package took a *very* long time to install, so I intend to upload 
> a version to pkg.racket-lang.org.
> 
> /Jens Axel
> <infix.png>

-- 
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