A simple chat example using re-frame and websockets #706
Replies: 6 comments
-
Interesting! |
Beta Was this translation helpful? Give feedback.
-
BTW, as part of our effort, Daniel has been doing work on https://github.com/apa512/clj-rethinkdb |
Beta Was this translation helpful? Give feedback.
-
I'm interested in looking at this, but I'm unsure what impact the GPL license has on this. I'm already doing work on this, and I suspect that I won't be able to take any inspiration from your work without also licensing our work as GPL. Can you give any guidance on the implications of the license? |
Beta Was this translation helpful? Give feedback.
-
Excellent question. The GPL and EPL are incompatible, however as the copyright holder I can (and do) make certain amendments in the GPL terms allowing specific dependencies to be re-distributed together. I might need to revisit my licensing statement to ensure that is clear. What this means for me (among other things) is that all contributors to my code must agree to the GPL and it's amendments (obviously) just as I would have to agree to your usage of the EPL if I wished to create a derivative work. This is the FSF stance on GPL+EPL: And GNU licence's approach to declaring exceptions: This is the EPL FAQ's statement: Which states:
So - taking chunks of GPL licenced code and sticking it in your framework is probably a no-go, not that you would need to do that, my demo isn't terribly sophisticated. It certainly doesn't limit how much or how little inspiration you may take from my code ;) Here is a very readable article exploring what constitutes a derived work, just in case it's definition in the context of the GPL/EPL legalese is as fuzzy for you as it is for me: I use the GPL licence in the spirit of making my software free to use, modify and distribute and of having those same freedoms enshrined for other users and in other derived works. It's the small part I play in the larger ecosystem that concerns me. There are clauses in the EPL I reject but at the same time I respect the decisions of others to use the EPL. I mentioned my demo only because it may help others using re-frame come to terms with reactive programming spanning the client-server gap. I certainly can't see it being used as a library nor do I expect anyone to re-licence their work. Thanks again for all of your hard work on re-frame. I humbly offer up my demo as an example and nothing more. |
Beta Was this translation helpful? Give feedback.
-
Hey thanks for this, I really appreciate you sharing it with us. My only concern was that I might be 'tainted' if I look at your ideas, but it doesn't sound like that's the case. |
Beta Was this translation helpful? Give feedback.
-
And I totally respect your choice of license, hope it didn't come off as otherwise. |
Beta Was this translation helpful? Give feedback.
-
Hi there,
I'd like to thank you for renewing my interest in Reagent and Cljs by re-framing (no pun intended) how I was looking at the architecture of my applications.
I've just put together a simple chat application that uses re-frame, rethink and websockets for a dev team presentation here: https://bitbucket.org/lskibinski/frp-demo/
Everyone who uses Clojure and Clojurescript seem way smarter than I am so I'm not sure how much of a useful example it will be, but I'd thought I'd be put it out there for consideration.
Beta Was this translation helpful? Give feedback.
All reactions