Logs: liberachat/#haskell
| 2021-06-08 10:50:47 | <amirouche> | I am wondering if they are similar approaches to drive a whole web page? |
| 2021-06-08 10:50:55 | <amirouche> | Is that what people call FRP? |
| 2021-06-08 10:51:51 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 2021-06-08 10:52:03 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2021-06-08 10:52:35 | <amirouche> | related to that there is also http://conal.net/papers/functional-images/fop-conal.pdf |
| 2021-06-08 10:52:58 | → | agumonke` joins (~user@88.160.31.174) |
| 2021-06-08 10:53:09 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 2021-06-08 10:54:25 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 2021-06-08 10:54:54 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-06-08 10:55:36 | <liskin> | Torro: I am here, but it's too high-traffic for me to read it, so if something needs my attention, a highlight is necessary |
| 2021-06-08 10:57:12 | <amirouche> | maybe easier question is: how to create a frontend app with haskell? |
| 2021-06-08 10:59:37 | × | amk quits (~amk@176.61.106.150) (Remote host closed the connection) |
| 2021-06-08 11:00:10 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 2021-06-08 11:00:26 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-06-08 11:00:29 | <Toast52_> | are you asking about techniques? or tools |
| 2021-06-08 11:00:51 | → | amk joins (~amk@176.61.106.150) |
| 2021-06-08 11:02:11 | <sshine> | amirouche, here is one tutorial using Asterius: https://www.tweag.io/blog/2019-12-19-asterius-diagrams/ |
| 2021-06-08 11:03:14 | × | Toast52_ quits (~Toast52@151.192.167.120) (Quit: Leaving) |
| 2021-06-08 11:05:26 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds) |
| 2021-06-08 11:05:46 | <amirouche> | re techniques or tools: both. |
| 2021-06-08 11:05:52 | <amirouche> | looking at asterius |
| 2021-06-08 11:05:56 | → | waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
| 2021-06-08 11:06:05 | <sshine> | amirouche, yes, FRP is thought of being a good paradigm for front-end. this is what PureScript's Halogen framework uses... |
| 2021-06-08 11:06:13 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-06-08 11:06:37 | <sshine> | amirouche, reactive program is currently very popular in front-end (React, Vue, etc.) so FRP is the cherry on top. |
| 2021-06-08 11:08:22 | <sshine> | amirouche, but this is more of a front-end framework question. if you're asking "how to do haskell in the front-end", that's still a bit researchy, I think... GHCJS, Asterius, ... |
| 2021-06-08 11:09:38 | <amirouche> | I know about React. What I am looking for a DSL to describe an interactive program in a non-imperative way. |
| 2021-06-08 11:10:29 | <amirouche> | In particular, how to create animations in a declarative way, and how to handle events such as click, and also xhr kind of stuff. |
| 2021-06-08 11:10:36 | → | benin03 joins (~benin@183.82.206.233) |
| 2021-06-08 11:11:17 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 2021-06-08 11:11:32 | <amirouche> | wikipedia article (https://en.wikipedia.org/wiki/Functional_reactive_programming) mention The Reactive and Etage libraries. |
| 2021-06-08 11:11:47 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-06-08 11:12:55 | → | Brumaire joins (~quassel@81-64-14-121.rev.numericable.fr) |
| 2021-06-08 11:13:17 | <amirouche> | that https://hackage.haskell.org/package/reactive |
| 2021-06-08 11:13:40 | <amirouche> | by the original author of C. Elliot (above fop-conal.pdf) |
| 2021-06-08 11:14:17 | <sshine> | you can find some interesting FRP libraries in Haskell, but they don't necessarily bridge to a front-end web library. |
| 2021-06-08 11:14:43 | <amirouche> | https://hackage.haskell.org/package/Etage |
| 2021-06-08 11:15:07 | <sshine> | https://www.reddit.com/r/haskell/comments/ajxq3a/how_can_i_best_learn_functional_reactive/ |
| 2021-06-08 11:15:20 | <amirouche> | sshine: no worries, I will bridge the gap, I am working with Scheme / Kernel (!) anyway, I am looking for ideas more than readily useable code. |
| 2021-06-08 11:15:30 | × | dunkeln quits (~dunkeln@94.129.65.28) (Ping timeout: 252 seconds) |
| 2021-06-08 11:17:08 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds) |
| 2021-06-08 11:17:08 | → | dunkeln joins (~dunkeln@94.129.65.28) |
| 2021-06-08 11:17:31 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-06-08 11:18:48 | × | mc47 quits (~yecinem@89.246.239.190) (Quit: Leaving) |
| 2021-06-08 11:18:54 | <amirouche> | eventually, what I have in mind is given the description of a frontend app compile to html with js and html without js (and then see how this can work with non browser targets) |
| 2021-06-08 11:19:06 | → | mc47 joins (~yecinem@89.246.239.190) |
| 2021-06-08 11:20:00 | × | mc47 quits (~yecinem@89.246.239.190) (Client Quit) |
| 2021-06-08 11:20:51 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 2021-06-08 11:21:36 | × | wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2021-06-08 11:23:07 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 2021-06-08 11:23:32 | <amirouche> | haskell websites are very stylish (compared to Scheme) |
| 2021-06-08 11:24:18 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-06-08 11:24:42 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
| 2021-06-08 11:25:30 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 2021-06-08 11:26:44 | → | mc47 joins (~mc47@89.246.239.190) |
| 2021-06-08 11:29:30 | <tdammers> | sshine: Halogen isn't actually FRP. It's functional, it's reactive, but it's not FRP in the true sense - most importantly, it does not have Behaviors (continuous or quasi-continuous time signals), only Events (discrete signals) |
| 2021-06-08 11:29:37 | → | buggy joins (~buggy@49.36.188.169) |
| 2021-06-08 11:29:53 | <tdammers> | which is fine, you don't actually need continuous time in a web GUI most of the time |
| 2021-06-08 11:30:04 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 258 seconds) |
| 2021-06-08 11:30:42 | × | buggy quits (~buggy@49.36.188.169) (Client Quit) |
| 2021-06-08 11:32:11 | <sshine> | tdammers, that reminds me of https://elm-lang.org/news/farewell-to-frp -- and https://www.fatalerrors.org/a/using-mvvm-design-pattern-in-django.html |
| 2021-06-08 11:33:58 | → | buggy joins (~buggy@49.36.188.169) |
| 2021-06-08 11:34:35 | × | buggy quits (~buggy@49.36.188.169) (Changing host) |
| 2021-06-08 11:34:35 | → | buggy joins (~buggy@user/smorgasbord) |
| 2021-06-08 11:34:38 | → | dhil joins (~dhil@195.213.192.47) |
| 2021-06-08 11:35:24 | <maerwald> | The only interesting thing about FRP for me is that it allows wildly different codebase structure compared to e.g. callback-driven architecture. But that's not enough to get me sold on the idea, especially since there are many competing approaches, each of them having hard problems |
| 2021-06-08 11:36:16 | <tdammers> | sshine: ugh, that terrible thing |
| 2021-06-08 11:36:17 | → | machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 2021-06-08 11:36:56 | <dminuoso> | I like how the elm webpage doesn't display anything when JS is disabled., |
| 2021-06-08 11:37:11 | <tdammers> | that's par for the course for a frontend framework |
| 2021-06-08 11:37:14 | <dminuoso> | To me this communicates lack of web competence.. :-> |
| 2021-06-08 11:37:29 | <tdammers> | but that article? urgh. Elm has never been FRP, not before the Elm Architecture, nor after |
| 2021-06-08 11:37:35 | × | buggy quits (~buggy@user/smorgasbord) (Client Quit) |
| 2021-06-08 11:37:45 | <tdammers> | but Evan didn't understand FRP when he built Elm, and called it that even though it wasn't |
| 2021-06-08 11:38:14 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:ea21:4b5e:38c6:5b35) |
| 2021-06-08 11:38:21 | <maerwald> | dminuoso: the haskell foundation web page is broken without js too |
| 2021-06-08 11:38:35 | <maerwald> | only very few websites these days can deliver that |
| 2021-06-08 11:38:53 | <tdammers> | mine can |
| 2021-06-08 11:38:58 | <tdammers> | as a matter of principle |
| 2021-06-08 11:39:10 | × | MidAutumnMoon quits (~MidAutumn@user/midautumnmoon) (Quit: Leaving for a break - theLounge) |
| 2021-06-08 11:39:19 | <maerwald> | github can to a degree, which is astonishing |
| 2021-06-08 11:39:25 | <dminuoso> | I dont expect the entire webpage to work, but at least some rudimentary things.. |
| 2021-06-08 11:39:39 | <dminuoso> | Even if it displays some meaningful error message, that's acceptable |
| 2021-06-08 11:39:39 | <tomsmeding> | maerwald: https://paste.tomsmeding.com works without js, though without multi-file |
| 2021-06-08 11:39:46 | → | MidAutumnMoon joins (~MidAutumn@user/midautumnmoon) |
| 2021-06-08 11:40:07 | tomsmeding | feels cool |
| 2021-06-08 11:40:21 | <boxscape> | funny, back in the day using javascript was the cool thing |
| 2021-06-08 11:40:33 | <maerwald> | https://www.haskell.org/ghcup/ sigh... why does it now work without js |
| 2021-06-08 11:40:38 | <maerwald> | my html skills are terrible |
| 2021-06-08 11:41:39 | <boxscape> | oh haskellfoundation.org is the wong website, eh |
| 2021-06-08 11:41:44 | <boxscape> | s/wong/wrong |
| 2021-06-08 11:41:50 | <maerwald> | There is a <noscript> section, but it doesn't shot up, lol |
| 2021-06-08 11:42:00 | <maerwald> | gg |
| 2021-06-08 11:46:20 | → | FreeVariable joins (~Thunderbi@wifi-unifr-154-135.unifr.ch) |
| 2021-06-08 11:46:29 | × | user2718281828 quits (~user27181@dyn-34-6.mobile.unibas.ch) (Quit: Leaving) |
| 2021-06-08 11:46:58 | × | FreeVariable quits (~Thunderbi@wifi-unifr-154-135.unifr.ch) (Client Quit) |
| 2021-06-08 11:47:28 | → | mattil_ joins (~mattil@airio.portalify.com) |
| 2021-06-08 11:47:56 | × | azeem quits (~azeem@176.201.35.122) (Read error: Connection reset by peer) |
| 2021-06-08 11:48:10 | → | azeem joins (~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) |
| 2021-06-08 11:48:28 | × | pera quits (~pera@user/pera) (Ping timeout: 258 seconds) |
All times are in UTC.