2010-02-03 14 views
5

aşağıdakileri yapacak yerleşik bir işleve Aranan:Haskell'de, bir elemanın bir listesini oluşturan yerleşik bir fonksiyon var mı?

mklist x = [x] 

yararı ben bir elementin bir listesini oluşturmak için bir kompozisyonda kullanabilirsiniz olmasıdır. Bunu (çoğalt 1) kullanılabilir olduğunu anlayın, ancak daha doğrudan bir işlevi var mı? Böyle durumlarda faydalı olur:

["Alice", "Bob", "Charlie"] >>= mklist . ("Hello " ++) 

cevap

11

Monadik return:

return x 

Veya: Daha az karakter, ancak daha fazla vardiya anahtar kullanımını, bu yüzden daha zor olabilir

(:[]) x 

yazın.

+0

Oh. Sağ. Duh. Teşekkürler. – me2

+0

:-) Elbette, örneğin haritanızı kullanarak kolayca yapılabilir, ama gerçek senaryonuzun daha karmaşık olduğunu varsayıyorum. Control.Applicative gelen –

+5

'saf' da çalışır. Bu, dört adet kaymayan harf! 'Return' ile olduğu gibi, herhangi bir tür hatalar olsa da, daha karmaşık olabilir. – yatima2975

İlgili konular