Dustin Getz on 26 Jun 2013 13:28:07 -0700


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: workshop request: GHCJS


One problem we encountered when developing Flapjax <http://flapjax-lang.org/> was that 
> developing in FRP tends to be "all or nothing". But since developers are already willing to 
> put up with callback hell, who knows?

Its a wider problem than that. Where I work, we contract out some of our frontend work to a graphic design firm who delivers us HTML, CSS and _javascript_. UX is the priority, so the designer is allowed to use any widget library they want (JqueryUI, KendoUI) - for datepickers, combo boxes, grids, etc. It's going to be 5-10 years before the widget vendors catch up with functional programming, so in this transition period, any library that does DOM manipulation absolutely has to have some sort of FFI to allow side effecting code to do it's thing, for it to gain widespread adoption. 

Companies like facebook or google have the resources to rewrite entire ecosystems to be compatible with an "all or nothing" FRP approach - they can write their own well behaved widget sets, etc. But all the open source shops just can't use FRP until someone figures out how to work with poorly behaving code. Maybe you guys at Flapjax or maybe other FRP projects have put some thought into this.

On Wed, Jun 26, 2013 at 4:18 PM, Dan Mead <d.w.mead@gmail.com> wrote:
IIRC, many of the hac-phi attendees from penn are working on phds on lenses. seems interesting


On Wed, Jun 26, 2013 at 4:01 PM, Dustin Getz <dustin.getz@gmail.com> wrote:
I had no idea that one or more flapjax committers were based in Philly. Wow. Your stuff is excellent. Would you consider doing a talk or workshop on FRP? 

On Wed, Jun 26, 2013 at 3:32 PM, Michael Greenberg <michael.m.greenberg@gmail.com> wrote:
Research into applying lenses to the DOM isn't news: my undergraduate honors thesis was about using lenses as a view mapping for functional reactive programming (FRP) on the DOM. See <http://www.cis.upenn.edu/~mgree/papers/ugrad_thesis.pdf> for the barely readable document; <http://www.cis.upenn.edu/~mgree/ugrad/lenses/> has the slightly more legible implementation. No one has gone to the trouble of implementing the more recent re-conceptions of lenses (e.g., edit lenses---see the work of Daniel Wagner for what's new in lens-land.). I think that it would be very fruitful---and wouldn't be particularly hard.

This is the first I've heard of Facebook React, and I'm curious to see what their diff algorithm is. In <http://www.cis.upenn.edu/~mgree/papers/icfp2010_matching.pdf>, we found that choosing a diff algorithm presents difficult trade offs. I think the advantage of manipulating the pseudo-DOM in Haskell is that Haskell has a type discipline that's designed for working with complicated trees. Since the pseudo-DOM structure is immutable, monads don't enter into it---it's just good old functional programming.
I'm very curious to see what the programming/engineering community makes of lenses and FRP in general. One problem we encountered when developing Flapjax <http://flapjax-lang.org/> was that developing in FRP tends to be "all or nothing". But since developers are already willing to put up with callback hell, who knows?

Cheers,
Michael

--
 
---
You received this message because you are subscribed to the Google Groups "Philly Lambda" group.
To unsubscribe from this group and stop receiving emails from it, send an email to philly-lambda+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

--
 
---
You received this message because you are subscribed to the Google Groups "Philly Lambda" group.
To unsubscribe from this group and stop receiving emails from it, send an email to philly-lambda+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

--
 
---
You received this message because you are subscribed to the Google Groups "Philly Lambda" group.
To unsubscribe from this group and stop receiving emails from it, send an email to philly-lambda+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

--
 
---
You received this message because you are subscribed to the Google Groups "Philly Lambda" group.
To unsubscribe from this group and stop receiving emails from it, send an email to philly-lambda+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.