restaumatic/purescript-specular

Question: re "The FRP implementation is based on Incremental" - what this means?

Closed this issue · 4 comments

how this library https://github.com/janestreet/incremental is related to https://github.com/reflex-frp/reflex?

in 2015year video Ryan Trinkle said that he would want to publish a specification to reflex-frp ? is this it?

zyla commented

Hi, thanks for the question!

Incremental and Reflex solve similar problems, and are related by having the same basic shape of the API - Incr.t is a monad similar to Reflex's Dynamic.

The Specular API was initially inspired by Reflex, though it is quite different now.
The current implementation, however, is based on Incremental (the version presented in Jane Street's videos).

@zyla tnx, I'll try to learn Reflex AND Incremental

TODO:

  1. post list of methods that have same implementation, but different names
  2. post list of utility methods that are present in reflex, but not present in specular

P.S. I would gladly hear more from you re topic I you want

zyla commented

P.S. I would gladly hear more from you re topic I you want

@srghma I created a chat room, feel free to join and ask questions: https://gitter.im/purescript-specular/community

@zyla I'll better ask here

why not just port reflex function by function

I mean first

  1. https://github.com/reflex-frp/reflex
    then
  2. https://github.com/reflex-frp/reflex-dom/blob/develop/reflex-dom-core
  3. https://github.com/reflex-frp/reflex-dom/blob/develop/reflex-dom

rename .hs to .purs and remove parts not related to ghcjs

  1. this would give ability to easier orient which functions are missing
  2. would be easier to port optimisations from haskell version to purescript

What Incremental gives which is not present in haskell reflex?