ReactiveX / rxjs

A reactive programming library for JavaScript
https://rxjs.dev
Apache License 2.0
30.8k stars 3.01k forks source link

ReasonML support #5274

Open ambientlight opened 4 years ago

ambientlight commented 4 years ago

Feature Request

Is your feature request related to a problem? No

I have been using rxjs internally with reasonML and recently has refined and released the bindings https://github.com/ambientlight/bs-rx with most rxjs functionality covered. (ajax / fetch / websocket apis not done yet). There is base code coverage available for most iterators and static observable creators as well as auto-generated documentation (though docs are not so readable yet).

@cartant: I am curious about what would it take to bring such project under ReactiveX umbrella and curious generally about what's your view on supporting ReasonML as a platform, since it is js-land it doesn't need a seperate implementation and also, the functional nature makes Rx syntax there so delightful with build-in piping. Eager to hear your feedback on this.

(I haven't posted this to https://github.com/ReactiveX/reactivex.github.io since it doesn't look there is any activity in issues there)

cartant commented 4 years ago

Nice. The example snippets look pretty sweet.

ReasonML is something that I'm interested in, but haven't been able to find the time to learn/play with.

Which is kinda related to your question. I don't know that the bindings could be brought in unless the core team had the experience and appetite for maintaining them. If the bindings are in this package, they would need to be kept up-to-date whenever something changed. I know that this was a concern with adding Flow types to this repo - see #3889.

Regarding the ReactiveX umbrella, @mattpodwysocki or @benlesh would be more able to offer guidance than me.

ambientlight commented 4 years ago

@cartant: Thanks a lot of the prompt feedback, this makes sense, for the ReactiveX umbrella, I am open to any requests for changes, updates etc. just thinking having it under ReactiveX umbrella can help to build a healthy ecosystem for it there, accounting for very early state of reasonml ecosystem overall

ambientlight commented 4 years ago

If the bindings are in this package, they would need to be kept up-to-date whenever something changed. I know that this was a concern with adding Flow types to this repo

To add to this, I think this might be a later phase, given there is a userbase building for it in reasonml, it can be auto generated from typescript definition, an example for it is in: https://github.com/jsiebern/bs-material-ui