2012-04-10 7 views
6

Przetestowałem to i wydaje się, że kolejność obsługi zdarzeń jest taka sama jak kolejność listy w zdarzeniu źródłowym. Nie sądzę, abym mógł na tym polegać, ponieważ tylko dokumentacja stwierdza:Jaka jest kolejność obsługi zdarzeń dla funkcji przelewu w Reactive-Banana?

Występują równoczesne zdarzenia zdarzeń. Do surowości, mamy wyciek. zbierać = id

Jak mogę utworzyć funkcję podobną do wycieku specyfikacji takich jak:

Emit kolejne wystąpienia zdarzeń z gwarancją, że żadne inne wydarzenia będą ognia między pierwszym a ostatnim

Czy powinienem spróbować zastosować inne podejście? Staram się realizacji funkcji makr w reaktywnie Banana

Odpowiedz

3

(jestem autorem reaktywnego-banana.)

Wydaje się, że kolejność obsługi zdarzeń jest taka sama jak kolejność na liście w zdarzeniu źródłowym.

To prawda, możesz na tym polegać. W rzeczywistości mniej więcej wynika to z równania spill . collect = id. W końcu, aby uzyskać odwzorowanie tożsamości, spill musi zachować kolejność zdarzeń, ponieważ collect umieścił je na liście.

Ponadto można sprawdzić kod źródłowy modułów Reactive.Banana.Model (Reactive.Banana.Internal.Model w wersji 0.5) i Reactive.Banana.Combinators. Łącznie dają one autorytatywne wdrożenie modelu. Możesz bezpośrednio sprawdzić, jak zachowuje się spill. (Choć może to być trochę mylące, ponieważ model jest zbudowany na dwie części.)

Niemniej jednak dodam kilka słów do dokumentacji.

+0

Doskonale, dziękuję. – llayland

+0

I dziękuję za bibliotekę. Naprawdę lubię uczyć się z nim FRP. – llayland

Powiązane problemy