2012-09-20 24 views
7

Kendimi FRP ve Reaktif-muz öğretirken, beni takip edenler için daha yararlı bir öğretici olacağını umuyorum. Eğitimim here'da ilerlememi kontrol edebilirsiniz.Neden etkinlikler reaktif muzda olmayan olayların dışında inşa etmek için bir işlev yok?

Olayları kullanarak basit beepy gürültü örneklerini uygulamaya çalışırken takılıyorum.

reactimate $ fmap (uncurry playNote) myEvent 

benim NetworkDescription yılında, ama nasıl ağına sahibiz sadece anlamaya defalarca aynı şeyi yapmak ya da bir kez bir şey yapamaz: Ben böyle bir şey yapmak gerektiğini biliyorum. İdeal olarak, bu gibi şeyler için arıyorum:

once :: a -> Event t a 
repeatWithDelay :: Event t a -> Time -> Event t a 
concatWithDelay :: Event t a -> Event t a -> Time -> Event t a 

yukarıda Time tip kullandığımız sona zamanın ne olursa olsun ölçümü için sadece bir stand-içindedir. Sistem zamanını "gecikme" işlevlerini yürütmek için bir Davranış olarak bağlamalı mıyım? Bu gerekenden daha karmaşık görünüyor. peşin

sayesinde

Yankı Nolan

DÜZENLEME: Tamam repeatWithDelay ve concatWithDelay için türleri anlamı yok. İşte aslında ben kastettim.tutarlılık için çeşitli sorunlar yaratır zaman çünkü şimdilik çekirdek modelinde bu tür fonksiyonları dahil etmemeye seçmiş

repeatWithDelay :: a -> Time -> Event t a 
concatWithDelay :: a -> a -> Time -> Event t a 
+0

Olayları oluşturmak için bir zamanlayıcı kullanmaya ne dersiniz? – AndrewC

cevap