haskell / haskell/haskell-language-server

Inlay hints for implicit parenthesization

Open
#4,214 0 comments 0 reactions 0 assignees View on GitHub
type: enhancement
Dominant language
Haskell
Stars
3k
Forks
455
Avg merge
3d 21h
Merged PRs (30d)
13

Description

## Is your enhancement request related to a problem? Please describe.

When you are looking at code that uses a lot of operators, it's not always obvious how their various fixities will work out. One way of showing this would be to put in the implicit parentheses that show how the parser associates the operations. This would work nicely as an inlay hint, since you could also trigger the hint to insert the parentheses if you want to make things explicit.

## Describe the solution you'd like

```
a * b + c / d
```
becomes
```
(a * b)>hint> + (c / d)
```

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue does not name files, tests, or an entry point. Begin by locating existing inlay-hint support and the handling of operator fixities in the language server, then determine how implicit parentheses would be represented and inserted. Done means hints display the parser's association for expressions and can make that grouping explicit.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell
Domain
devtools
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.