Jacqueline Firth
Jacqueline Firth
@AlexKnauth What if indentation information was stored in something more like a rename transformer? Say you had something like this: ```racket (define (plain-call-with-input-file ...) ...) (define-syntax call-with-input-file (make-indentation-rule-transformer #'plain-call-with-input-file (......
@lassik What if `froz` is imported with `rename-in`? Or [`qualified-in`](https://github.com/MichaelMMacLeod/qualified-in)?
Is this something that can be handled entirely by the language server? Does the protocol have a standard way for servers to tell editors to show that kind of overlay?
Oh wow, that's really cool. This definitely seems worth looking into then.
@gus-massa I personally find the initial example you gave hard to read. I like that I can tell the difference between sequence accesses / dictionary lookups and arbitrary function calls,...
So given that code: ```racket (define (average-xyz v) (/ (+ (vector-ref v 0) (vector-ref v 1) (vector-ref v 2)) 3)) ``` Here are some options: ### Option 1: Applicative collections...
@soegaard Along the same lines, it could be something that you have to opt-in to with `(require )`.
Generally I prefer collection views over `setf`-style syntactic DSLs. ```scheme ;; Assuming a generic mutable-list interface, returns an implementation of that interface backed by the array's fifth row. ;; The...
I like that, and furthermore it doesn't even need `set!` to be a macro. `(row 7)` can return a mutable box view. `set!` can just be `set-box!`
Possibly. That kind of question is why I like to work out the underlying view semantics first and make the `set!` syntax a layer on top.