It was my fault to start discussion in two places, sorry for duplication.
So, I suppose event buses is one of use cases for reagi's event streams. If 
I want to pass all data inside application through reagi/events and hold 
its state in them then ability to plug/unplug existing streams looks 
natural for me. But if you point me alternate solution for this case which 
emphasizes immutability, I will be happy.

On Thursday, December 26, 2013 12:14:51 PM UTC+2, James Reeves wrote:
>
> Reagi's event streams are not dissimilar to Clojure's seqs, in that while 
> their content may come from a side-effectful source, seqs and streams 
> themselves are immutable. It therefore doesn't make a lot of sense to add 
> an protocol for back-door mutation - in fact, excluding this was a 
> deliberate design decision.
>
> May I ask in what context you found yourself wanting mutation? There might 
> be a better way of achieving what you want.
>
> - James
>
>
> On 26 December 2013 07:35, Ruslan Prokopchuk <fer....@gmail.com<javascript:>
> > wrote:
>
>> I've just posted pull request to make streams pluggable, allowing to plug 
>> another stream as source to current. What are caveats of doing things in 
>> such way? I ask this question in general, not only as related to reagi 
>> functionality. May be it makes streams <<too mutable>>?
>>
>>
>> четверг, 26 декабря 2013 г., 1:15:57 UTC+2 пользователь James Reeves 
>> написал:
>>
>>> Happy Holidays and Merry Christmas,
>>>
>>> Reagi 0.7.0 has been released, now with support for ClojureScript.
>>>
>>> Reagi is an FRP library that introduces two new reference types: 
>>> behaviors and event streams. Behaviors model continuous change, and work a 
>>> little like delays, while events represent discrete changes, and work a 
>>> little like promises. More information is available on the project page:
>>>
>>>   https://github.com/weavejester/reagi
>>>
>>> It's my opinion that Reagi provides a very clean and idiomatic 
>>> implementation of FRP for Clojure. It's only dependency is core.async, so 
>>> it doesn't need to make the compromises that a wrapper of an existing Java 
>>> or Javascript library might need.
>>>
>>> I've been using Reagi for Clojure for a while now, but the ClojureScript 
>>> code is still rather new, and may exhibit problems I haven't anticipated.
>>>
>>> - James
>>>  
>>
>

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to