
@sorawee Thank you! For whatever reason, I saw your replies only now. I’ll look into your suggestions.

I’m trying to create a new package on http://pkgd.racket-lang.org\|pkgd.racket-lang.org but each time I click on ‘save’ it just reloads the page with all fields empty. The package doesn’t seem to be created. @jeapostrophe maybe?

I think @tonyg but he isn’t on slack right now


R-Cade (https://r-cade.io/) v. 0.5 has been released! Not a lot of updates, but good ones.

Racket news and/or racketfest?

It is all working now

@greg just out of curiosity, given how racket-backend-server runs, is it feasible to make racket-mode tramp-aware?

I don’t know. The back end expects to be running on the same machine as the source files, and get paths that work locally. As a start: 1. Can you give racket-program
a value that works to run the back end remotely, connecting stdin/stdout/stderr. 2. Can you supply functions for the pair of filename translation functions I added to support a certain use case with Window Subsystem for Linux? (e.g. to translate between TRAMP and local paths). If the answers are yes and yes, then I think you would be able to… discover what other hurdles I’m not thinking of yet? :slightly_smiling_face:

re item 2 I mean this and the one after it: https://www.racket-mode.com/#racket_002dpath_002dfrom_002demacs_002dto_002dracket_002dfunction

Thanks for the information. I’ll give a try

Is there a @racketlangname[]
scribble form similar to @racketmodname[]
? I’d like See also @racketlangname[foo]
to render like See also #lang foo
where #lang
and foo
are both clickable (and the former takes you to https://docs.racket-lang.org/guide/Module_Syntax.html#%28part._hash-lang%29)

@racket[@#,hash-lang[] @#,racketmodname[foo]]

I do think it’s worth making a proper abstraction, however.

And the name that you suggest sounds right to me.

add to the list of Would Be Nice things

What would be the best way to go about implementing a check for alpha equivalence of two syntax objects?

I think that’s implemented somewhere

That only makes sense for fully expanded syntax objects, right?

Yes, I just need alpha equivalence over core forms (albeit, I’m using custom core forms, but the idea should work, nonetheless).

I have a solution to my equivalence-checking problem (thanks @michael.ballantyne!)

What circumstances would cause syntax-transforming-with-lifts?
to return #false
when syntax-transforming?
returns #true
?

“Currently, (syntax-transforming?) implies (syntax-transforming-with-lifts?).”

I’ve managed to write code in which that implication is not true.

Sounds like a bug somewhere

Hm, it’s only the case that syntax-transforming-with-lifts?
returns #false
when I use the REPL.

That’s odd… things work as expected, if all the code is in a module.

However, it appears that the same phase1 code is being run three times.

That is incredibly bizarre: all code in a begin-for-syntax
block is run three times, when a module is run.

Is this in DrRacket? I would normally expect it to be run twice.

Yes, it’s in DrRacket.

Why is the code being run more than once?

I forget all the details of this, but I think it’s partly compiling the code, running the code, setting up the REPL

ah

Oh, it’s not just the REPL.

I suppose I should clarify: the error that I’m trying to figure out is syntax-local-lift-expression: no lift target
.