Jacqueline Firth

Results 356 issues of Jacqueline Firth

In order to make things like #185 easier to implement, it would be handy if refactoring rules could look up binding info for identifiers. This ought to be possible by...

enhancement

Resyntax ought to suggest rewriting this code: ```scheme (define (quote x) (* x 2)) 'a ``` Into this: ```scheme (define (quote x) (* x 2)) (quote a) ``` That is,...

new lint

Resyntax should be able to refactor more than just `#lang racket` and `#lang racket/base` code. For example, Resyntax should be able to rewrite this: ``` #lang rhombus (1 + 2)...

enhancement

This program: ```scheme #lang racket/base (require rackunit) (with-check-info (['multiline-string (string-info "hello\nworld")]) (check-equal? 1 2)) ``` Produces this failure message: ``` -------------------- FAILURE multiline-string: hello world name: check-equal? location: 3-unsaved-editor:6:2 actual:...

bug

I think the community has pretty much standardized on your action as the default approach to using Racket in GitHub Actions (RIP jackfirth/racket-package-ci-action my beloved). Would you be interested in...

**Is your feature request related to a problem? Please describe.** In [Resyntax](https://github.com/jackfirth/resyntax), I want to write a refactoring rule that suggests replacing certain `#hash(...)` literals with `(hash ...)` expressions. (Hash...

feature request
macro system

**What version of Racket are you using?** 8.14 [cs] **What program did you run?** ```scheme #lang racket (require syntax/parse) (define-syntax-class clause #:attributes (id rhs) (pattern [id:id rhs:expr])) (syntax-parse #'[a 1]...

bug
macro system

`fmt` turns this code: ```scheme (define-syntax-parse-rule (m) #:fail-when (string-append "longggggggggggggg" "stringgggggggg") "very very very long failure message goes here" (void)) ``` Into this: ```scheme (define-syntax-parse-rule (m) #:fail-when (string-append "longggggggggggggg" "stringgggggggg")...

`fmt` currently formats this code: ```scheme (void (thread (λ () (let loop () (define vec (sync evt)) (define str (vector-ref vec 1)) (when (regexp-match #rx"^cm: *compil(ing|ed)" str) (display str) (newline))...

The expression `(program-format "(define x 1) (define y (* x 2))" #:indent 2)` produces this code: ```scheme (define x 1) (define y (* x 2)) ``` But to be correct...