lambdaclass / lambdaclass/lambda_compiler_kit
nit: several low-priority polish items in JSON parser (decimal rendering, ordering invariant, docstrings)
Nessuno ha ancora preso questa issue.
- Lingua principale
- Lean
- Stelle
- 2
- Fork
- 1
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Items
These are low-priority nits flagged by AI code review on PR #8. Grouping them into a single issue to keep the tracker clean.
1. Decimal rendering precision (cli/LckJsonFmt.lean:30)
The renderNumber function may truncate fractional digits beyond 20 decimal places, losing round-trip fidelity for numbers with high precision.
2. Dependent types for ordering invariant (Lck/Json/Syntax.lean:444-450)
SortedKVs currently enforces its key-sorted ordering invariant by convention. Using dependent types (a sigma type or a subtype with a Sorted proof) would make the invariant enforcement compile-time rather than runtime.
3. Missing docstrings (Lck/Json/Parser.lean)
convOfPolicy: no docstring explaining what it does or why it existsSortedKVs.ofList: no documentation of the byte-lexicographic key ordering behavior- Consider making
convOfPolicyprivateto reduce public API surface
References
- Flagged by AI code review on PR #8
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Leggi prima le tre aree indicate: cli/LckJsonFmt.lean:30, Lck/Json/Syntax.lean:444-450 e Lck/Json/Parser.lean. Separa le proposte relative a precisione, invarianza dell'ordine e documentazione prima di decidere il loro ambito; per considerare il lavoro completato sarebbe necessaria una risoluzione concordata per ciascun elemento elencato, inclusa la questione della visibilità dell'API per convOfPolicy.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Ambito
- compilers
- Tipo di issue
- Refactoring
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 25/100