Lazy List's mapWithIndex is not lazy
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 48/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Ferma
- Ambito
- backend
Direzione di ricerca
Start in src/Data/List/Lazy/Types.purs at the linked FunctorWithIndex instance around line 116. Compare its folding implementation with the lazy Functor implementation, then check how the proposed recursive mapping handles the list one step at a time. Done means mapWithIndex preserves laziness while supplying each element’s index; the issue provides no test file to run.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The implementation of FunctorWithIndex for Lazy List uses folding, which, unlike Functor, is not lazy.
It should be:
instance functorWithIndexList :: FunctorWithIndex Int List where
mapWithIndex f xs = List (go 0 <$> unwrap xs)
where
go i = \step -> case step of
Nil -> Nil
Cons x xs' -> Cons (f i x) (List (go (i + 1) <$> unwrap xs'))
- Lingua principale
- PureScript
- Stelle
- 61
- Fork
- 50
- Merge medio
- 2g 6h
- PR unite (30g)
- 1
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
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.
Altre issue di purescript/purescript-lists
-
ZipList is BindAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
purescript/purescript-lists#219 · 1 commento · 1 reazione ·
-
Data.List.NonEmpty.intersect and Data.List.NonEmpty.intersectBy throw when intersection emptyForse già presa @evaogbe l’ha presa 1066 giorni fa. Apertagood first issue type: bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 1/100
purescript/purescript-lists#216 · 2 commenti ·
-
type: enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
purescript/purescript-lists#197 · 1 commento ·
-
type: enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 24/100
purescript/purescript-lists#194 · 5 commenti ·
-
type: enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
purescript/purescript-lists#192 · 4 commenti · 1 reazione ·
Tutte le issue di purescript/purescript-lists
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
remove the use of `forget`Apertagood first issue help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 80/100
I maintainer di solito rispondono entro 1 giorno
-
bug good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
milind-soni/OpenMausBot#5829 ·
I maintainer di solito rispondono entro 1 giorno