5
Szukasz wbudowanej funkcji, która będzie wykonać następujące czynności:W Haskell, czy istnieje wbudowana funkcja, która tworzy listę jednego elementu?
mklist x = [x]
Korzyścią jest to, że można go używać w kompozycji, aby utworzyć listę jednego elementu. Zrozum, że (replikacja 1) jest dostępna, ale czy istnieje bardziej bezpośrednia funkcja? Byłaby przydatna w sytuacjach tak:
["Alice", "Bob", "Charlie"] >>= mklist . ("Hello " ++)
Och. Dobrze. Duh. Dzięki. – me2
:-) Oczywiście twój przykład może równie dobrze zostać wykonany przy użyciu 'map', ale zakładam, że twój prawdziwy scenariusz jest bardziej złożony. –
'czysty' od Control.Applicative również działa. To cztery niezmienione litery! Podobnie jak w przypadku 'return', wszelkie błędy typu mogą być bardziej skomplikowane. – yatima2975