Logs on 2022-05-28 (liberachat/#haskell)
| 00:09:07 | Gambino | is now known as POLO |
| 00:23:05 | × | dcleonarski quits (~user@2804:d51:479c:4300:c312:71c1:ee9b:86ea) (Remote host closed the connection) |
| 00:24:31 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 00:28:29 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 00:28:40 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 00:30:47 | × | gurkenglas quits (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) (Ping timeout: 260 seconds) |
| 00:33:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 00:36:20 | × | POLO quits (~Gambino@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 00:38:45 | → | Polo joins (~Gambino@user/polo) |
| 00:38:53 | × | Polo quits (~Gambino@user/polo) (Client Quit) |
| 00:42:17 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 00:43:09 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 276 seconds) |
| 00:43:32 | Lord_of_Life_ | is now known as Lord_of_Life |
| 00:44:11 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 00:47:16 | → | harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 00:47:46 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5) |
| 00:48:28 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 00:49:40 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 00:58:52 | → | Polo joins (~Gambino@user/polo) |
| 01:00:49 | → | anon76437670 joins (~anon76437@host-80-41-95-245.as13285.net) |
| 01:05:11 | × | anon76437670 quits (~anon76437@host-80-41-95-245.as13285.net) (Remote host closed the connection) |
| 01:10:52 | × | Polo quits (~Gambino@user/polo) (Quit: Textual IRC Client: www.textualapp.com) |
| 01:11:04 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:12:10 | → | Polo joins (~Gambino@user/polo) |
| 01:14:21 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 244 seconds) |
| 01:17:04 | × | dfip^ quits (~dfip@173-160-91-30-atlanta.hfc.comcastbusiness.net) (Remote host closed the connection) |
| 01:17:12 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:25:37 | × | Polo quits (~Gambino@user/polo) (Read error: Connection reset by peer) |
| 01:26:44 | → | Polo joins (~Gambino@user/polo) |
| 01:34:26 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds) |
| 01:41:47 | × | perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Ping timeout: 246 seconds) |
| 01:47:01 | → | perrierjouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 01:47:23 | Polo | is now known as money |
| 01:47:23 | × | money quits (~Gambino@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:51:49 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 01:56:40 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 01:58:54 | → | andrey__ joins (~andrey@p200300dbcf2e1000eb0596aaa95b8a32.dip0.t-ipconnect.de) |
| 02:01:47 | × | andrey_ quits (~andrey@p508d494e.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 02:03:44 | → | Polo__ joins (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) |
| 02:04:03 | → | Polo joins (~Gambino@user/polo) |
| 02:07:08 | Polo | is now known as money |
| 02:08:47 | → | coot joins (~coot@213.134.190.95) |
| 02:08:53 | × | waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 255 seconds) |
| 02:10:50 | × | coot quits (~coot@213.134.190.95) (Client Quit) |
| 02:11:10 | × | jinsun quits (~jinsun@user/jinsun) (Ping timeout: 240 seconds) |
| 02:11:45 | → | shapr joins (~user@pool-173-73-44-186.washdc.fios.verizon.net) |
| 02:14:10 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 02:15:53 | × | Polo__ quits (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 02:15:53 | × | money quits (~Gambino@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 02:16:25 | × | tomboy64 quits (~tomboy64@user/tomboy64) (Ping timeout: 248 seconds) |
| 02:19:58 | × | unit73e quits (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Ping timeout: 244 seconds) |
| 02:22:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 02:30:16 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 02:30:27 | → | jinsun joins (~jinsun@user/jinsun) |
| 02:33:46 | × | Digit quits (~user@user/digit) (Remote host closed the connection) |
| 02:34:54 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 02:40:09 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 02:43:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 02:52:16 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 02:52:20 | × | kenaryn quits (~aurele@89-88-44-27.abo.bbox.fr) (Quit: leaving) |
| 02:52:22 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 02:52:43 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Remote host closed the connection) |
| 02:53:12 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:53:12 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 02:53:12 | finn_elija | is now known as FinnElija |
| 02:56:04 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 02:56:59 | → | dsrt^ joins (~dfip@173-160-91-30-atlanta.hfc.comcastbusiness.net) |
| 03:09:22 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 03:13:40 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 03:22:16 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 03:25:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 03:26:38 | → | Guest3869 joins (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) |
| 03:27:06 | → | Polo joins (~Gambino@user/polo) |
| 03:32:03 | <zzz> | how do i uninstall all ghc versions that were not installed through ghcup? |
| 03:33:18 | → | vysn joins (~vysn@user/vysn) |
| 03:33:56 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 248 seconds) |
| 03:38:11 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 03:39:54 | → | z0k joins (~z0k@206.84.141.67) |
| 03:46:56 | → | nate1 joins (~nate@98.45.169.16) |
| 03:47:13 | × | Polo quits (~Gambino@user/polo) (Ping timeout: 258 seconds) |
| 03:47:13 | × | Guest3869 quits (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) (Ping timeout: 258 seconds) |
| 03:48:29 | → | fef joins (~thedawn@user/thedawn) |
| 03:48:30 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 240 seconds) |
| 03:48:41 | × | stackdroid18 quits (14094@user/stackdroid) (Quit: Lost terminal) |
| 03:51:25 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 244 seconds) |
| 03:53:16 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 03:54:42 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Remote host closed the connection) |
| 03:57:34 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 04:00:01 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 04:02:57 | → | Polo joins (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) |
| 04:03:04 | → | Gambino joins (~Gambino@user/polo) |
| 04:03:16 | Polo | is now known as Guest8992 |
| 04:03:52 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 04:04:02 | <monochrom> | If you think that the answer does not have to depend on how you installed them, then you're in luck, formatting the whole disk is an option. |
| 04:04:16 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 04:14:01 | × | rembo10 quits (~rembo10@main.remulis.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 04:14:35 | → | rembo10 joins (~rembo10@main.remulis.com) |
| 04:14:37 | × | vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.4) |
| 04:20:42 | → | stevechavez joins (~stevechav@190.237.35.175) |
| 04:20:59 | → | coot joins (~coot@213.134.190.95) |
| 04:22:48 | <stevechavez> | Hello haskellers. Question, will running a program with `+RTS -s -RTS`(statistics) incur into some performance penalty? |
| 04:24:57 | → | bahamas joins (~lucian@84.232.141.167) |
| 04:27:34 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 04:29:50 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 240 seconds) |
| 04:35:56 | × | Gambino quits (~Gambino@user/polo) (Read error: Connection reset by peer) |
| 04:35:56 | × | Guest8992 quits (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) (Read error: Connection reset by peer) |
| 04:36:26 | × | dsrt^ quits (~dfip@173-160-91-30-atlanta.hfc.comcastbusiness.net) (Ping timeout: 246 seconds) |
| 04:36:46 | <sm> | I don't believe so stevechavez |
| 04:38:00 | <zzz> | monochrom: lol good point |
| 04:38:43 | <sm> | if you ever get depressed about haskell tooling, this epic thread suggests most languages are no easier: https://news.ycombinator.com/item?id=31526370 |
| 04:40:31 | → | obabo joins (~obabo@563BF107.catv.pool.telekom.hu) |
| 04:40:54 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 04:40:56 | → | Inst joins (~Liam@2601:6c4:4080:3f80:14ba:6ec2:95f7:e2c) |
| 04:41:06 | <Inst> | hmmm |
| 04:41:20 | <Inst> | question, if i wanted to put in C code into my haskell, what's the best way to do it? |
| 04:41:22 | <Inst> | inline C? |
| 04:41:25 | <Inst> | CHS? |
| 04:41:38 | <Inst> | i can't find chs documentation |
| 04:41:40 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Remote host closed the connection) |
| 04:41:57 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 04:42:11 | <sm> | look for FFI in the ghc user guide |
| 04:42:46 | <sm> | or do you mean specifically inlined in a haskell module ? |
| 04:43:05 | <Inst> | inlined |
| 04:43:16 | <Inst> | i want to do K&R without leaving my Haskell IDE |
| 04:43:28 | <sm> | I haven't heard of CHS, but inline-c package sounded pretty good |
| 04:44:01 | <Inst> | there's something called a c2hs and .chs file |
| 04:44:07 | <Inst> | thanks |
| 04:44:18 | → | Guest5209 joins (~Z@181.226.86.142) |
| 04:44:27 | ← | Guest5209 parts (~Z@181.226.86.142) () |
| 04:46:04 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 04:54:18 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 04:55:26 | → | dsrt^ joins (~dsrt@173-160-91-30-atlanta.hfc.comcastbusiness.net) |
| 04:55:39 | → | Polo joins (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) |
| 04:55:56 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 04:56:02 | Polo | is now known as Guest3852 |
| 04:56:02 | × | harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 04:56:27 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 04:58:32 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 05:00:51 | → | Polo joins (~Gambino@user/polo) |
| 05:01:07 | <stevechavez> | sm: Thank you. Some load tests I've been running indicate so as well. |
| 05:03:07 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 258 seconds) |
| 05:04:55 | Polo | is now known as money |
| 05:05:49 | → | _PSY_ joins (~PSY@2600:1700:2050:1040:498:6f6:79f8:6819) |
| 05:07:41 | <sm> | great |
| 05:17:56 | × | Me-me quits (~me-me@user/me-me) (Ping timeout: 248 seconds) |
| 05:18:30 | × | benin quits (~benin@183.82.25.126) (Ping timeout: 240 seconds) |
| 05:18:51 | → | Me-me joins (~me-me@v.working.name) |
| 05:19:29 | <EvanR> | uninstalling is like reversing entropy |
| 05:19:56 | → | benin joins (~benin@183.82.25.126) |
| 05:20:25 | <EvanR> | rather, not increasing it |
| 05:24:56 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
| 05:25:57 | × | causal quits (~user@50.35.83.177) (Quit: WeeChat 3.5) |
| 05:32:16 | × | Guest3852 quits (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 05:32:16 | × | money quits (~Gambino@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 05:32:17 | × | mvk quits (~mvk@2607:fea8:5ce3:8500::ba9a) (Ping timeout: 255 seconds) |
| 05:33:31 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 05:34:18 | → | bahamas joins (~lucian@84.232.141.167) |
| 05:37:57 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 05:38:27 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 240 seconds) |
| 05:43:39 | × | Hafydd quits (~Hafydd@user/hafydd) (Quit: WeeChat 3.3) |
| 05:44:57 | → | Guest8458 joins (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) |
| 05:50:46 | × | whatsupdoc quits (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 05:56:20 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 06:00:38 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Ping timeout: 255 seconds) |
| 06:03:17 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 06:05:27 | → | bahamas joins (~lucian@84.232.141.167) |
| 06:06:45 | × | coot quits (~coot@213.134.190.95) (Ping timeout: 258 seconds) |
| 06:09:27 | → | YourMom joins (~YourMom@S01069050ca4e3573.cg.shawcable.net) |
| 06:09:57 | → | Infinite joins (~Infinite@49.39.113.80) |
| 06:10:05 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 255 seconds) |
| 06:10:13 | <YourMom> | song about you and your mom: https://www.youtube.com/watch?v=HbGwKVwlTTg |
| 06:18:19 | <EvanR> | #haskell after dark |
| 06:21:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 06:25:28 | × | stevechavez quits (~stevechav@190.237.35.175) (Quit: WeeChat 3.3) |
| 06:33:39 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 06:34:03 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 06:38:16 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 06:38:40 | × | Guest8458 quits (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) (Quit: Textual IRC Client: www.textualapp.com) |
| 06:38:58 | → | Polo joins (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) |
| 06:39:19 | Polo | is now known as Guest4393 |
| 06:39:26 | × | Guest4393 quits (~Gambino@pool-100-34-212-74.phlapa.fios.verizon.net) (Changing host) |
| 06:39:26 | → | Guest4393 joins (~Gambino@user/polo) |
| 06:39:56 | × | Guest4393 quits (~Gambino@user/polo) (Client Quit) |
| 06:40:30 | <Infinite> | I've been playing with ghci solely and only recently started to use stack to build haskell projects. When I did stack build, it showed me this: Preparing to install GHC (tinfo6) to an isolated location. |
| 06:40:31 | <Infinite> | Does this mean stack wasn't able to find my ghc path and installed another binary instead? |
| 06:42:55 | <sm> | Infinite: it uses its own by default. You can encourage it to use the one in path with --use-system-ghc --no-install-ghc |
| 06:45:39 | → | bahamas joins (~lucian@84.232.141.167) |
| 06:49:45 | <Infinite> | Ohk. Just saw stack.yaml and it had system-ghc commented. I'm just curious, what's the reason that stack doesn't by default choose the ghc path? |
| 06:49:59 | <Infinite> | *choose the installed ghc |
| 06:50:08 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 246 seconds) |
| 06:53:09 | <sm> | reproducibility |
| 06:53:32 | <sm> | haskell projects tend to need specific ghc versions |
| 06:55:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 06:58:26 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 07:01:03 | <maerwald[m]> | <sm> "haskell projects tend to need..." <- Not really |
| 07:01:14 | <maerwald[m]> | Stack is overly specific |
| 07:02:15 | <maerwald[m]> | If 8.10.1 works, 8.10.7 should work too. Most of the time the boot libraries even have the same version or are in PVP range |
| 07:02:43 | <sm> | projects can be made compatible with many ghc versions but it's extra work so there's a tendency to break, pinning ghc is a way to ensure it keeps building over time |
| 07:03:06 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Ping timeout: 258 seconds) |
| 07:03:23 | <maerwald[m]> | No, it's not extra work if it's the same minor version |
| 07:03:52 | → | lopata joins (~theo@user/lopata) |
| 07:05:26 | × | z0k quits (~z0k@206.84.141.67) (Ping timeout: 255 seconds) |
| 07:07:04 | <sm> | I think Infinite got the general idea and we're splitting hairs a bit, but: yes in theory same minor version of ghc should be fine as far as compatibility goes.. in practice, a different minor version of ghc can behave very differently.. |
| 07:07:14 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 07:07:39 | <sm> | s/typo/correct thing/ |
| 07:10:33 | → | HotblackDesiato_ joins (~HotblackD@gateway/tor-sasl/hotblackdesiato) |
| 07:10:55 | ← | lopata parts (~theo@user/lopata) (WeeChat 1.6) |
| 07:11:04 | × | HotblackDesiato quits (~HotblackD@gateway/tor-sasl/hotblackdesiato) (Ping timeout: 240 seconds) |
| 07:13:25 | → | Polo joins (~Gambino@user/polo) |
| 07:15:40 | → | _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl) |
| 07:15:54 | × | Polo quits (~Gambino@user/polo) (Client Quit) |
| 07:19:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 07:19:36 | → | JannisO joins (~JannisO@89.233.86.138) |
| 07:21:02 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 07:25:24 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 07:25:43 | → | JannisO joins (~JannisO@89.233.86.138) |
| 07:31:04 | × | Infinite quits (~Infinite@49.39.113.80) (Ping timeout: 252 seconds) |
| 07:31:05 | × | dsrt^ quits (~dsrt@173-160-91-30-atlanta.hfc.comcastbusiness.net) (Ping timeout: 258 seconds) |
| 07:33:50 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 07:34:09 | → | JannisO joins (~JannisO@89.233.86.138) |
| 07:37:20 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 07:41:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 07:42:36 | → | bahamas joins (~lucian@84.232.141.167) |
| 07:42:59 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 07:44:39 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 07:44:58 | → | JannisO joins (~JannisO@89.233.86.138) |
| 07:46:38 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 07:46:57 | → | JannisO joins (~JannisO@89.233.86.138) |
| 07:47:12 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 07:47:17 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 255 seconds) |
| 07:48:28 | → | nate1 joins (~nate@98.45.169.16) |
| 07:49:34 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 07:52:49 | → | bahamas joins (~lucian@84.232.141.167) |
| 07:53:07 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 07:56:33 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 07:56:50 | → | nick__ joins (~nick@203.217.73.254) |
| 07:57:11 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 255 seconds) |
| 07:58:12 | → | gurkenglas joins (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) |
| 07:58:37 | × | cosimone quits (~user@93-44-186-171.ip98.fastwebnet.it) (Remote host closed the connection) |
| 08:01:42 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:02:01 | → | JannisO joins (~JannisO@89.233.86.138) |
| 08:02:08 | × | auri quits (~auri@fsf/member/auri) () |
| 08:02:44 | → | auri joins (~auri@fsf/member/auri) |
| 08:05:44 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:06:03 | → | JannisO joins (~JannisO@89.233.86.138) |
| 08:08:08 | → | whatsupdoc joins (uid509081@id-509081.hampstead.irccloud.com) |
| 08:09:48 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:10:07 | → | JannisO joins (~JannisO@89.233.86.138) |
| 08:11:47 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:12:06 | → | JannisO joins (~JannisO@89.233.86.138) |
| 08:12:39 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:12:44 | × | _PSY_ quits (~PSY@2600:1700:2050:1040:498:6f6:79f8:6819) (Quit: .) |
| 08:13:45 | × | nick__ quits (~nick@203.217.73.254) (Quit: Leaving) |
| 08:17:46 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:18:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 08:19:47 | → | cosimone joins (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
| 08:21:15 | × | [Leary] quits (~Leary]@122-58-228-205-vdsl.sparkbb.co.nz) (Remote host closed the connection) |
| 08:21:29 | × | HotblackDesiato_ quits (~HotblackD@gateway/tor-sasl/hotblackdesiato) (Remote host closed the connection) |
| 08:21:48 | → | HotblackDesiato joins (~HotblackD@gateway/tor-sasl/hotblackdesiato) |
| 08:23:51 | → | coot joins (~coot@213.134.190.95) |
| 08:27:00 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:27:19 | → | JannisO joins (~JannisO@89.233.86.138) |
| 08:31:02 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:31:15 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 08:31:21 | → | JannisO joins (~JannisO@89.233.86.138) |
| 08:33:10 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:33:29 | → | JannisO joins (~JannisO@89.233.86.138) |
| 08:34:18 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 08:35:51 | × | auri quits (~auri@fsf/member/auri) () |
| 08:37:31 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:37:50 | → | JannisO joins (~JannisO@89.233.86.138) |
| 08:39:30 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:39:38 | × | zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection) |
| 08:39:49 | → | JannisO joins (~JannisO@89.233.86.138) |
| 08:40:34 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 08:40:43 | → | zaquest joins (~notzaques@5.130.79.72) |
| 08:41:26 | → | [Leary] joins (~Leary]@122-58-228-205-vdsl.sparkbb.co.nz) |
| 08:42:39 | → | aliosablack joins (~chomwitt@2a02:587:dc05:e000:eaa1:d30:2c04:8e84) |
| 08:45:20 | × | Unicorn_Princess quits (~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Remote host closed the connection) |
| 08:47:00 | → | bahamas joins (~lucian@84.232.141.167) |
| 08:47:28 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:49:08 | × | gurkenglas quits (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) (Ping timeout: 246 seconds) |
| 08:49:18 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 08:49:48 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Remote host closed the connection) |
| 08:51:14 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 246 seconds) |
| 08:52:07 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 08:52:52 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 08:53:37 | → | dsrt^ joins (~dsrt@173-160-91-30-atlanta.hfc.comcastbusiness.net) |
| 08:57:11 | × | JannisO quits (~JannisO@89.233.86.138) (Remote host closed the connection) |
| 08:58:02 | → | money joins (~Gambino@user/polo) |
| 08:59:32 | × | money quits (~Gambino@user/polo) (Client Quit) |
| 09:00:13 | × | boxscape quits (~boxscape@user/boxscape) (Quit: You have been kicked for being idle) |
| 09:00:38 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 255 seconds) |
| 09:04:14 | → | auri joins (~auri@fsf/member/auri) |
| 09:04:33 | → | unit73e joins (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) |
| 09:06:19 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 09:07:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 09:08:18 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 09:10:26 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 09:12:28 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 09:13:28 | → | akegalj joins (~akegalj@95.168.120.0) |
| 09:16:00 | → | tomboy64 joins (~tomboy64@user/tomboy64) |
| 09:18:33 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 09:19:11 | × | dsrt^ quits (~dsrt@173-160-91-30-atlanta.hfc.comcastbusiness.net) (Ping timeout: 258 seconds) |
| 09:24:08 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 250 seconds) |
| 09:26:05 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 09:26:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 09:27:00 | → | Guest9029 joins (~Guest90@2409:4071:4e18:ade2:c838:3d7:fb0a:e3a) |
| 09:27:59 | → | bahamas joins (~lucian@84.232.141.167) |
| 09:29:53 | × | Guest9029 quits (~Guest90@2409:4071:4e18:ade2:c838:3d7:fb0a:e3a) (Client Quit) |
| 09:29:54 | × | akegalj quits (~akegalj@95.168.120.0) (Read error: Connection reset by peer) |
| 09:30:11 | × | [Leary] quits (~Leary]@122-58-228-205-vdsl.sparkbb.co.nz) (Remote host closed the connection) |
| 09:30:39 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 09:31:04 | × | mima quits (~mmh@net-5-95-238-67.cust.vodafonedsl.it) (Ping timeout: 258 seconds) |
| 09:31:34 | → | [Leary] joins (~Leary]@122-58-228-205-vdsl.sparkbb.co.nz) |
| 09:31:39 | → | mima joins (~mmh@net-5-95-63-251.cust.vodafonedsl.it) |
| 09:32:36 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 258 seconds) |
| 09:36:14 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 09:37:03 | → | JannisO joins (~JannisO@89.233.86.138) |
| 09:37:10 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 09:38:07 | × | JannisO quits (~JannisO@89.233.86.138) (Client Quit) |
| 09:38:29 | → | JannisO joins (~JannisO@89.233.86.138) |
| 09:41:34 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 09:42:04 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 09:42:16 | → | dsrt^ joins (~dsrt@173-160-91-30-atlanta.hfc.comcastbusiness.net) |
| 09:43:09 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 09:58:27 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 10:00:46 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 10:02:52 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 10:04:59 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Ping timeout: 255 seconds) |
| 10:06:41 | × | briandaed quits (~briandaed@109.95.143.129.r.toneticgroup.pl) (Remote host closed the connection) |
| 10:10:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 10:14:43 | → | gurkenglas joins (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) |
| 10:14:52 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 10:16:25 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 10:23:51 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 10:27:16 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Read error: Connection reset by peer) |
| 10:28:12 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 10:30:17 | <fendor[m]> | maerwald, if you depend on GHC directly, minor versions may require extra maintenance |
| 10:30:59 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Remote host closed the connection) |
| 10:31:20 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 10:32:56 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 10:33:28 | <maerwald[m]> | fendor: right |
| 10:34:42 | → | bahamas joins (~lucian@84.232.141.167) |
| 10:34:48 | × | [Leary] quits (~Leary]@122-58-228-205-vdsl.sparkbb.co.nz) (Remote host closed the connection) |
| 10:37:01 | → | [Leary] joins (~Leary]@122-58-228-205-vdsl.sparkbb.co.nz) |
| 10:39:02 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 246 seconds) |
| 10:39:46 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 10:46:07 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 10:50:32 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 10:51:17 | × | gurkenglas quits (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) (Read error: Connection reset by peer) |
| 10:55:32 | × | mima quits (~mmh@net-5-95-63-251.cust.vodafonedsl.it) (Ping timeout: 260 seconds) |
| 11:02:13 | → | mima joins (~mmh@net-2-32-53-225.cust.vodafonedsl.it) |
| 11:03:43 | → | CiaoSen joins (~Jura@p200300c95731a0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 11:04:59 | × | dsrt^ quits (~dsrt@173-160-91-30-atlanta.hfc.comcastbusiness.net) (Ping timeout: 258 seconds) |
| 11:11:37 | × | mima quits (~mmh@net-2-32-53-225.cust.vodafonedsl.it) (Ping timeout: 244 seconds) |
| 11:13:23 | → | mima joins (~mmh@net-5-95-63-61.cust.vodafonedsl.it) |
| 11:22:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 11:22:46 | → | jgeerds joins (~jgeerds@55d45f48.access.ecotel.net) |
| 11:24:11 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 255 seconds) |
| 11:26:18 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 11:27:14 | → | dsrt^ joins (~dsrt@173-160-91-30-atlanta.hfc.comcastbusiness.net) |
| 11:28:18 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 11:30:46 | × | dsrt^ quits (~dsrt@173-160-91-30-atlanta.hfc.comcastbusiness.net) (Remote host closed the connection) |
| 11:46:33 | × | YourMom quits (~YourMom@S01069050ca4e3573.cg.shawcable.net) (Quit: Client closed) |
| 11:50:01 | → | nate1 joins (~nate@98.45.169.16) |
| 11:51:55 | × | CiaoSen quits (~Jura@p200300c95731a0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 244 seconds) |
| 11:53:21 | → | coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 11:54:02 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 11:54:47 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 255 seconds) |
| 11:58:29 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 12:00:46 | × | whatsupdoc quits (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 12:03:08 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 12:05:23 | → | AlexNoo_ joins (~AlexNoo@178.34.160.101) |
| 12:08:15 | × | AlexZenon quits (~alzenon@178.34.163.188) (Ping timeout: 276 seconds) |
| 12:09:00 | × | AlexNoo quits (~AlexNoo@178.34.163.188) (Ping timeout: 258 seconds) |
| 12:09:33 | × | Alex_test quits (~al_test@178.34.163.188) (Ping timeout: 276 seconds) |
| 12:11:24 | → | AlexZenon joins (~alzenon@178.34.160.101) |
| 12:11:35 | → | trisolaran joins (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 12:12:41 | → | Alex_test joins (~al_test@178.34.160.101) |
| 12:17:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 12:18:48 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 12:22:26 | × | coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
| 12:28:48 | → | zincy joins (~zincy@2a00:23c8:970c:4801:5ce3:174f:85c3:8411) |
| 12:36:37 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 12:41:53 | × | mima quits (~mmh@net-5-95-63-61.cust.vodafonedsl.it) (Ping timeout: 246 seconds) |
| 12:42:03 | → | mima joins (~mmh@net-5-95-63-61.cust.vodafonedsl.it) |
| 12:43:21 | → | polo joins (~money@user/polo) |
| 12:44:19 | × | polo quits (~money@user/polo) (Excess Flood) |
| 12:44:50 | AlexNoo_ | is now known as AlexNoo |
| 12:52:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 12:57:00 | → | moonsheep joins (~user@user/moonsheep) |
| 12:57:29 | <moonsheep> | How can I create an EntityDef from an already existing haskell type in persistent? |
| 12:58:05 | <moonsheep> | I can't use something like persistLowerCase because I'm trying to use a library type that's already defined |
| 12:58:36 | <moonsheep> | so I found derivePersistFieldJSON (my type does implement both ToJSON and FromJSON) |
| 12:58:44 | <moonsheep> | but that only creates a PersistField, I also need the PersistEntity |
| 12:58:55 | → | coot joins (~coot@213.134.190.95) |
| 13:01:34 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 13:05:50 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 13:07:10 | × | jgeerds quits (~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 240 seconds) |
| 13:10:01 | × | benin quits (~benin@183.82.25.126) (Quit: The Lounge - https://thelounge.chat) |
| 13:10:14 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 13:11:47 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 13:12:20 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 13:16:06 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 13:21:56 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 13:22:45 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 13:22:51 | × | unit73e quits (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Ping timeout: 244 seconds) |
| 13:37:13 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 13:37:39 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 13:39:05 | × | exarkun quits (~exarkun@user/exarkun) (Ping timeout: 248 seconds) |
| 13:40:37 | → | bahamas joins (~lucian@84.232.141.167) |
| 13:42:23 | × | zincy quits (~zincy@2a00:23c8:970c:4801:5ce3:174f:85c3:8411) (Remote host closed the connection) |
| 13:42:55 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 13:44:23 | → | coot joins (~coot@213.134.190.95) |
| 13:44:47 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 13:45:14 | × | mima quits (~mmh@net-5-95-63-61.cust.vodafonedsl.it) (Ping timeout: 246 seconds) |
| 13:47:20 | → | mima joins (~mmh@net-93-151-174-210.cust.dsl.teletu.it) |
| 13:49:26 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 13:55:31 | <moonsheep> | Where should I ask for help about Persistent? |
| 13:59:47 | → | king_gs joins (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) |
| 13:59:51 | → | waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
| 14:00:21 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 14:00:47 | × | trisolaran quits (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 255 seconds) |
| 14:02:01 | → | trisolaran joins (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 14:02:15 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 14:02:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 14:03:39 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 14:07:59 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Ping timeout: 255 seconds) |
| 14:10:31 | <geekosaur> | this would normally be the channel to ask, but I think many people will be away until Tuesday |
| 14:11:00 | <Bulby[m]> | on todays episode of using languages for things they aren't meant to be used for... |
| 14:11:02 | <Bulby[m]> | game engine haskell? |
| 14:11:04 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 14:11:17 | × | king_gs quits (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) (Ping timeout: 258 seconds) |
| 14:12:27 | <maerwald> | geekosaur: why? |
| 14:12:53 | <geekosaur> | Memorial Day weekend in the U.S. |
| 14:13:03 | <geekosaur> | and just a weekend for everyone else :) |
| 14:13:10 | <Bulby[m]> | oh it is? \o/ |
| 14:13:40 | <moonsheep> | ah, I didn't know that thanks |
| 14:13:47 | <Bulby[m]> | i never keep track of time |
| 14:13:59 | <geekosaur> | Bulby[m], there are a few game engines around but not many; most people start from existing game engines (mostly written in C++) |
| 14:14:12 | <Bulby[m]> | any names? |
| 14:14:17 | <geekosaur> | https://gitlab.com/unit73e/sdl2-examples might be of interest according to my logs |
| 14:14:30 | <moonsheep> | Well for now I think I'll resort to the ultimate database: huge in-memory linked list ;) |
| 14:14:34 | <geekosaur> | Cale's employer has one on development but it's not ready for release yet |
| 14:14:48 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 14:14:53 | <Bulby[m]> | SDL2... sounds fun 😉 |
| 14:15:09 | <moonsheep> | The SDL2 bindigs are really nice, I've used them before |
| 14:15:28 | <Bulby[m]> | yes but i've never written direct sdl2 before |
| 14:15:40 | <Bulby[m]> | always something higher level, like haxeflixel |
| 14:15:53 | <Bulby[m]> | or unity (but unity is a different beast) |
| 14:16:20 | → | zebrag joins (~chris@user/zebrag) |
| 14:16:32 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 14:17:15 | → | king_gs joins (~Thunderbi@187.201.97.18) |
| 14:17:44 | <moonsheep> | Well, SDL2 will handle window and input and stuff (and can even do some basic rendering I think) but if you want to write a full game engine you'll need a graphics API |
| 14:18:15 | <Bulby[m]> | lovely... I knew haskell wouldn't be an ideal language for game engines |
| 14:18:21 | <Bulby[m]> | because IO and whatnot |
| 14:18:30 | <geekosaur> | SDL2 (including the Haskell bindings) also comes with SDL_Image |
| 14:19:10 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 14:19:15 | <geekosaur> | actually I wouldn't necessarily consider that a shortcoming; it helps you keep your game logic separate from the UI logic |
| 14:19:16 | <Bulby[m]> | i see SDL.Video as a namespace... |
| 14:20:03 | <Bulby[m]> | true... I still have it engrained in my mind that OOP works for software dev |
| 14:20:13 | <Bulby[m]> | game dev, not software dev |
| 14:20:21 | <geekosaur> | there may also be a game engine (other than Cale's) based on FRP |
| 14:20:34 | ← | moonsheep parts (~user@user/moonsheep) (ERC 5.4 (IRC client for GNU Emacs 28.1)) |
| 14:20:34 | <geekosaur> | which is more Haskelly in nature |
| 14:20:40 | <Bulby[m]> | time to google FRP 🙂 |
| 14:21:04 | <Bulby[m]> | functional reactive programming - reactive - like jsx??? |
| 14:21:58 | <geekosaur> | not reactive as in the React JS framework |
| 14:22:13 | <Bulby[m]> | 🤔 |
| 14:22:17 | <geekosaur> | FRP predates React by several years |
| 14:22:20 | <Bulby[m]> | define reactive then |
| 14:22:49 | <geekosaur> | basically a fancy way to say it's intended for user interfaces |
| 14:22:59 | <Bulby[m]> | ah |
| 14:23:04 | <Bulby[m]> | i can see that |
| 14:23:13 | <Bulby[m]> | i.e. reacts to the user |
| 14:23:18 | × | trisolaran quits (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 244 seconds) |
| 14:23:55 | <geekosaur> | https://hackage.haskell.org/package/reactive-banana is one of the early FRP frameworks |
| 14:24:14 | <Bulby[m]> | reminds me - another question... I know ghc has a GHCJs target... so web haskell? |
| 14:24:19 | <geekosaur> | it's known to be a bit slow for things like gamedev; that's one of the things Cale and company are working on, iirc |
| 14:24:22 | <Bulby[m]> | i.e. webpages |
| 14:24:51 | <Bulby[m]> | wow it's actually actively updated \o/ |
| 14:25:14 | <geekosaur> | right now ghcjs is a separate project. ghc is supposed to gain js and wasm backends in 9.6 although I'd not be surprised if they're not ready for production use until 9.8 |
| 14:25:50 | <Bulby[m]> | ... remind me what GHCs default project is |
| 14:25:54 | <Bulby[m]> | default target |
| 14:26:16 | <geekosaur> | existing targets are -fasm (default) and -fllvm |
| 14:26:26 | × | mima quits (~mmh@net-93-151-174-210.cust.dsl.teletu.it) (Ping timeout: 255 seconds) |
| 14:26:26 | <Bulby[m]> | is it via C or does it directly compile. I see it goes thru `.hi` which isn't a `.o` |
| 14:26:32 | <Bulby[m]> | `-fllvm` \o/ |
| 14:26:33 | <geekosaur> | up until ghc7 or so it compiled to C instead of directly producing assembly |
| 14:26:45 | <Bulby[m]> | so WASM is theoritically possible with llvm? |
| 14:27:04 | <geekosaur> | .hi goes along with a .o and includes things like Haskell type information that can't fit into a .o |
| 14:27:19 | <Bulby[m]> | interesting |
| 14:27:40 | <Bulby[m]> | but emscripten would work on llvm, no? |
| 14:27:40 | <geekosaur> | the llvm backend is fairly weak and iirc wasm produced via it is slow and doesn't work very well |
| 14:27:47 | <Bulby[m]> | oh |
| 14:28:04 | <geekosaur> | -fllvm is mostly intended to help porting ghc to a new architecture |
| 14:28:04 | → | mima joins (~mmh@net-37-179-177-102.cust.vodafonedsl.it) |
| 14:28:31 | <Bulby[m]> | directly producing ASM seems to be bad, no? GHC would have to know all arches it targets |
| 14:28:37 | <geekosaur> | you capture the generated files and compile them (opt/lld) on the target |
| 14:28:47 | <Bulby[m]> | altho LLVM is my latest fixation 🙂 |
| 14:29:25 | <geekosaur> | ghc can do optimizations llvm can't, though: llvm isn't designed for lazy languages |
| 14:29:34 | <Bulby[m]> | ohhhh |
| 14:29:50 | <Bulby[m]> | I forget how special lazyness is 🙂 |
| 14:29:54 | × | king_gs quits (~Thunderbi@187.201.97.18) (Quit: king_gs) |
| 14:30:18 | <geekosaur> | there's been discussion of improving llvm support but it would require a bunch of new support in llvm for lazy languages which only ghc (and maybe idris if they ever decided to target llvm) would ever use, so the llvm folks aren't interested |
| 14:30:33 | <Bulby[m]> | hm... |
| 14:30:45 | <Bulby[m]> | how would the JS target work, then? |
| 14:31:11 | <geekosaur> | lots of lambdas |
| 14:31:18 | <Bulby[m]> | figures |
| 14:31:27 | <Bulby[m]> | thunks are just lambdas? |
| 14:31:40 | <geekosaur> | that is, you can mostly simulate laziness by changing a value v into a function nil -> v |
| 14:31:43 | <Bulby[m]> | makes sense tbh |
| 14:32:31 | <Bulby[m]> | interesting - so no (stable) web haskell |
| 14:32:33 | <int-e> | > let x = 1+1 :: Integer in [x] -- x may be a thunk until forced... depends on the smartness of the compiler |
| 14:32:35 | <lambdabot> | [2] |
| 14:33:10 | <int-e> | so thunks are about delayed computations, not really about lambdas |
| 14:33:13 | <Bulby[m]> | there is a special ghci print that prints stuff w/o evaluating it |
| 14:33:43 | <Bulby[m]> | Prelude> :print x |
| 14:33:43 | <Bulby[m]> | x = (_t1::t1) |
| 14:33:44 | <Bulby[m]> | ... |
| 14:33:50 | <Bulby[m]> | oh |
| 14:33:55 | <Bulby[m]> | I didn't do the `[x]` |
| 14:34:23 | <Bulby[m]> | same deal - that means it's a thunk right |
| 14:34:31 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 14:35:38 | <Bulby[m]> | web haskell is slow... ☹️ |
| 14:36:23 | <Bulby[m]> | and I love abusing GHC extensions, so using a different compiler isn't a good decision either |
| 14:36:35 | <Rembane> | Bulby[m]: Have you checked out Purescript? |
| 14:36:46 | <Bulby[m]> | I have not 🙂 |
| 14:37:12 | <Bulby[m]> | wait, the mainpage example looks like haskell |
| 14:37:23 | Bulby[m] | sent a code block: https://libera.ems.host/_matrix/media/r0/download/libera.chat/73f3a8ff33df738c10b2ae9752ba92fdaf199551 |
| 14:37:28 | <Bulby[m]> | oops, this is irc |
| 14:37:33 | <Bulby[m]> | sorry for the mess |
| 14:37:49 | <Bulby[m]> | https://www.purescript.org/ |
| 14:37:54 | <Bulby[m]> | that's basically haskell |
| 14:38:16 | <geekosaur> | https://paste.tomsmeding.com/O48CfU3F |
| 14:38:25 | <Rembane> | Bulby[m]: Yeah, a subset of Haskell that's strict and compiles to Javascript. |
| 14:38:43 | <Bulby[m]> | \o/ subset of haskell?!? sign me up! |
| 14:38:48 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Remote host closed the connection) |
| 14:38:55 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 14:39:24 | <Bulby[m]> | and I assume it doesn't work with any GHC extensions tho |
| 14:39:28 | <Bulby[m]> | (which I make liberal use of) |
| 14:40:24 | <geekosaur> | right, but it has some of them natively |
| 14:41:01 | <Bulby[m]> | ghc hangs on that too |
| 14:41:01 | <Bulby[m]> | well |
| 14:41:02 | <Bulby[m]> | `main = print [1..]` |
| 14:41:02 | <Bulby[m]> | that means in purescript (if it's even possible), this would hang |
| 14:41:02 | <Bulby[m]> | um |
| 14:41:29 | <Bulby[m]> | you know what I mean, does it still handle infinite lists elegantly? |
| 14:41:42 | <geekosaur> | no because it's strict |
| 14:41:49 | <int-e> | well, that has infinite output... try this? `print $ take 10 [1..]` |
| 14:41:54 | <Rembane> | There are infinite lists in Purescript, but they are their own datatype and slightly messy. |
| 14:42:01 | <geekosaur> | (ghc won't handle that because you're trying to print it) |
| 14:42:08 | <Bulby[m]> | I know |
| 14:42:30 | <geekosaur> | > zip [1..] ['a'..'g'] |
| 14:42:32 | <lambdabot> | [(1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e'),(6,'f'),(7,'g')] |
| 14:42:51 | <Bulby[m]> | that's how zip works 😝 |
| 14:43:06 | <int-e> | Ah. https://github.com/purescript/documentation/blob/master/language/Differences-from-Haskell.md "Unlike Haskell, PureScript is strictly evaluated." |
| 14:43:24 | <geekosaur> | but if the language were strict it'd try to evaluate [1..] to completion *before* running zip |
| 14:43:52 | <int-e> | No need to experiment. Also, that makes a lot of sense, since it covers a lot of useful territory and laziness makes compilation and execution quite a bit more messy. |
| 14:43:59 | <Bulby[m]> | interesting. I knew haskell would likely not have good libs for game engines and web. Was unaware that web didn't even work |
| 14:44:04 | <Bulby[m]> | well |
| 14:44:05 | <Bulby[m]> | it works |
| 14:44:08 | <Bulby[m]> | but |
| 14:44:10 | <int-e> | So... it's kind of an ML with a Haskell-like Syntax and type classes. :P |
| 14:44:18 | <Bulby[m]> | it |
| 14:44:21 | <geekosaur> | like I said, targeted for 9.6 |
| 14:44:24 | <Bulby[m]> | it's a subset of haskell |
| 14:44:27 | <geekosaur> | both JS and wasm |
| 14:44:32 | <Rembane> | int-e: Yeah, Haskell's strict cousin. :D |
| 14:45:44 | <Bulby[m]> | WASM is slow as you said |
| 14:45:46 | <Bulby[m]> | via LLVM |
| 14:46:00 | <geekosaur> | but it will be compiling directly to wasm, not via llvm |
| 14:46:12 | × | mima quits (~mmh@net-37-179-177-102.cust.vodafonedsl.it) (Ping timeout: 276 seconds) |
| 14:46:23 | <Bulby[m]> | oh, 9.6 has that target? |
| 14:46:27 | <geekosaur> | it's going through llvm (at all) that is not great for Haskell because llvm doesn't really support compiling lazy languages |
| 14:47:05 | <geekosaur> | it is yet to be seen whether the backends will make 9.6 (9.4 is still in alpha, 9.6 is still a moving target) but that's the intent |
| 14:47:15 | <Bulby[m]> | hm |
| 14:47:21 | <yushyin> | https://gitlab.haskell.org/ghc/ghc/-/issues/21200 for reference |
| 14:47:32 | → | mima joins (~mmh@net-5-94-119-222.cust.vodafonedsl.it) |
| 14:47:43 | <Bulby[m]> | so no webapps for haskell rn? I think react-like haskell would work well |
| 14:48:54 | <geekosaur> | https://gitlab.haskell.org/ghc/ghc/-/milestones/375 is the milestone for 9.6.1, wasm backend is 2nd in the "open and active issues" column |
| 14:48:54 | <Bulby[m]> | i'll look into purescript - it probably has support for that |
| 14:49:24 | <geekosaur> | there is a separate ghcjs although development on it is stalled because all the work is going into the new backend |
| 14:49:24 | <yushyin> | well, there is https://github.com/obsidiansystems/obelisk ... |
| 14:50:25 | <Bulby[m]> | idk how I feel about it lol... haskell is cool but lazyness seems to be a major restriction in targets |
| 14:51:12 | <Bulby[m]> | I keep getting reminded of how every competent language can call C and export to C |
| 14:51:49 | <geekosaur> | haskell can do that |
| 14:51:56 | <Bulby[m]> | a C lib is a universal lib, at least natively |
| 14:51:59 | <Bulby[m]> | geekosaur: i know |
| 14:52:01 | <Bulby[m]> | oops |
| 14:52:04 | <Bulby[m]> | sorry for the irc mess |
| 14:52:45 | <geekosaur> | there's just no guarantee that a native Haskell type will make sense to C. but that's true of any language with a type system richer than C's |
| 14:53:07 | <geekosaur> | which is something of a low bar; even rust surpasses it |
| 14:53:28 | <Bulby[m]> | which is what the storable typeclass is for, no? |
| 14:53:32 | <geekosaur> | yes |
| 14:53:41 | <Bulby[m]> | well C is a procedural language, not oop |
| 14:53:45 | × | [Leary] quits (~Leary]@122-58-228-205-vdsl.sparkbb.co.nz) (Remote host closed the connection) |
| 14:53:47 | × | mima quits (~mmh@net-5-94-119-222.cust.vodafonedsl.it) (Ping timeout: 240 seconds) |
| 14:53:56 | <Bulby[m]> | no classes, just structs |
| 14:54:44 | → | mima joins (~mmh@net-5-94-119-222.cust.vodafonedsl.it) |
| 14:55:17 | → | [Leary] joins (~Leary]@122-58-228-205-vdsl.sparkbb.co.nz) |
| 14:55:27 | <Bulby[m]> | rust's traits are kinda like haskell type classes afaik |
| 14:57:28 | <Bulby[m]> | which is why rust is another one of my favorites - it's a bit OOP but still has functional flair |
| 14:57:31 | <Bulby[m]> | no |
| 14:57:46 | <Bulby[m]> | it's procedural* with functional flair |
| 15:00:15 | <Bulby[m]> | ok, so reactive banana doesn't work as a game engine but as a UI 🤔 |
| 15:00:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 15:01:39 | <Bulby[m]> | very informative, love learning about this stuf |
| 15:04:11 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 258 seconds) |
| 15:04:50 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 15:04:53 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit) |
| 15:06:29 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 258 seconds) |
| 15:07:47 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 15:08:40 | → | Guest92 joins (~Guest92@31.9.104.84) |
| 15:10:07 | × | Guest92 quits (~Guest92@31.9.104.84) (Client Quit) |
| 15:18:44 | → | jollygood2 joins (~bc8147f2@cerf.good1.com) |
| 15:20:06 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 15:22:46 | × | Xe quits (~cadey@tailscale/xe) (Quit: WeeChat 3.5) |
| 15:23:38 | → | harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 15:24:29 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Ping timeout: 255 seconds) |
| 15:25:23 | → | coot joins (~coot@213.134.190.95) |
| 15:26:53 | → | Xe joins (~cadey@tailscale/xe) |
| 15:28:19 | <zzz> | can I write this main function in a more elegant way? https://paste.jrvieira.com/1653751599458 |
| 15:29:44 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 15:30:19 | <zzz> | [w,h,from,to,_] <- args -- this is no good because i dont want to accept a wrong number of arguments, and i'm avoiding if ... else inside a do block |
| 15:30:51 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 15:31:28 | <zzz> | i meant (w:h:from:to:_) obviously |
| 15:33:38 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 15:34:43 | <[exa]> | zzz: if you want 4 items of the same type, patternmatching [w,h,f,t] is IMO allright |
| 15:35:34 | <[Leary]> | I would replace `go args` with the equivalent case-of expression, but it's pretty much fine as-is. |
| 15:37:16 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 15:38:49 | <hpc> | if this was a more sophisticated program, something like optparse-applicative might help you out with adding --help output and such |
| 15:38:57 | <hpc> | but for just writing the simplest possible thing, what you have is pretty clean |
| 15:39:55 | <zzz> | thank you all |
| 15:40:52 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 15:41:30 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 15:43:43 | × | kadobanana quits (~mud@user/kadoban) (Quit: quit) |
| 15:44:37 | <zzz> | i personally avoid writing case expressions but i agree this would be a good case for their value |
| 15:46:47 | → | mud joins (~mud@user/kadoban) |
| 15:47:34 | → | __monty__ joins (~toonn@user/toonn) |
| 15:49:11 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 15:50:56 | <maerwald> | case expressions are the hole point of Haskell :D |
| 15:51:27 | <maerwald> | if you look at GHC core, it's all case expressions |
| 15:51:32 | → | nate1 joins (~nate@98.45.169.16) |
| 15:53:24 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 15:54:40 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Remote host closed the connection) |
| 15:56:40 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 15:57:03 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 15:58:03 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 16:01:05 | <zzz> | i like things simple. pattern matching lets me ignore that case ecpressions even exist |
| 16:01:28 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 16:02:01 | <zzz> | i try to use a minimal subset of syntax features |
| 16:03:36 | <zzz> | to the point where i avoid if else and `fun x = ... ; fun y = ...` |
| 16:04:04 | <zzz> | but i assume that it's kind of a disease :p |
| 16:05:09 | <zzz> | took me a while to convince myself that do notation is not that bad |
| 16:06:46 | <zzz> | i get out of my way to avoid let in favour of where |
| 16:07:48 | <zzz> | and for a time even used GADT notation for all data declarations just to maximize uniformity |
| 16:08:28 | <hpc> | i like GADT syntax |
| 16:08:53 | <hpc> | the type signatures are nice, and there's less mixing of levels within a single line of code which always used to trip me up |
| 16:09:27 | <hpc> | a regular data definition reads as "keyword Type type type = Data type type | Data type | ..." |
| 16:11:40 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 16:13:24 | <monochrom> | If you value both minimalism and completeness, you would prefer case expressions pervasively and forget that "f Nothing = ... ; f (Just a) = ..." existed. |
| 16:13:46 | <monochrom> | s/value/valued/ |
| 16:13:54 | <[Leary]> | My issue isn't really about case-of; it's more that the binding of `go` is entirely superfluous---you're essentially writing `... = x where x = ...`. |
| 16:14:15 | <[Leary]> | And yeah, if you really want minimal syntax, you should try a sugar-free diet. |
| 16:14:56 | <zzz> | i agree |
| 16:15:00 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 16:15:38 | <int-e> | "An Iota program is either an i, or a * followed by two Iota (sub-)programs." https://esolangs.org/wiki/Iota |
| 16:16:02 | <int-e> | now that's some minimal syntax |
| 16:16:18 | <[Leary]> | Is that just SKI reduced to SKK or something? |
| 16:16:45 | <int-e> | No, it's worse, it uses a single combinator from which S and K can be obtained by applications. |
| 16:16:48 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 16:17:06 | <int-e> | well, pseudo-combinator |
| 16:17:09 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 16:17:37 | → | mvk joins (~mvk@2607:fea8:5ce3:8500::ba9a) |
| 16:17:38 | <zzz> | one has to find a balance between curruption and insanity |
| 16:17:44 | <int-e> | (it's a lambda term) |
| 16:18:20 | <int-e> | I think you can have both. |
| 16:18:22 | <int-e> | :) |
| 16:19:26 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 16:21:57 | → | bahamas joins (~lucian@84.232.141.167) |
| 16:22:26 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 16:24:00 | <zzz> | :) |
| 16:26:35 | → | vglfr joins (~vglfr@coupling.penchant.volia.net) |
| 16:30:46 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 16:31:56 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4) |
| 16:35:12 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 16:39:20 | <hololeap> | is there a way to override source-repository-package in my cabal.project using my cabal.project.local? I have the package downloaded locally and I don't want it to try to connect to the internet every time I run cabal |
| 16:40:10 | <hololeap> | I have "packages: ../my-pkg/" in cabal.project.local, but it still tries to connect every time |
| 16:41:23 | <hololeap> | I also added "ignore-project: True" to cabal.project.local |
| 16:46:30 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 16:47:12 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 16:49:14 | <hololeap> | "offline: True" doesn't work either... |
| 16:54:03 | → | econo joins (uid147250@user/econo) |
| 16:54:33 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 16:58:53 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 16:59:21 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 17:01:44 | × | harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 17:02:18 | → | Infinite joins (~Infinite@49.39.112.232) |
| 17:03:51 | <[exa]> | hololeap: I assume you use the local repo location in source-repository-package? |
| 17:04:20 | <[Leary]> | The docs say later entries override earlier ones, so that /should/ work. But according to my test, it doesn't. |
| 17:04:53 | <hololeap> | no, I want to have the github location in source-repository-package in cabal.project, so that I can use it when running github tests |
| 17:05:44 | <hololeap> | but my local internet is flakey and I want to override this in my cabal.project.local, so that it doesn't try to connect to github every time I run `cabal build` |
| 17:07:01 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:07:16 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 17:08:30 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 17:10:19 | <shapr> | hi tromp, I have found a fun application of kolmogorov complexity |
| 17:10:35 | <shapr> | at least, I think it fits into this thing I'm doing |
| 17:11:44 | <Rembane> | shapr: Explain it to us! :D |
| 17:12:27 | <shapr> | uh, I decided to do metaprogramming with logo (the turtle drawing language) |
| 17:12:49 | <shapr> | I purchased a remarkable 2, but you have to pay $10 a month to get handwriting recognition |
| 17:12:56 | <shapr> | so I figured I'd look into building my own |
| 17:13:05 | <Rembane> | By programming a turtle? |
| 17:13:14 | <shapr> | and one of my wacky ideas has been to construct a programming language that's designed to be handwritten |
| 17:13:24 | <shapr> | and then recognized and evaluated |
| 17:13:33 | <shapr> | I came up with a list of five, one of which was logo |
| 17:13:51 | <shapr> | (I'd seen the recent xkcd april fool's puzzle: https://github.com/theinternetftw/xkcd2601 ) |
| 17:13:51 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 17:14:25 | <shapr> | I realized I could stick with only the drawing parts of logo, and evaluate logo to produce more logo |
| 17:14:37 | <Rembane> | Recursive logo! Super powerful! |
| 17:15:12 | <shapr> | someone else suggested I use graphical symbols instead of words `repeat 3 [ forward 10 right 60]` |
| 17:15:49 | <shapr> | I realized that the 'best' design here is the one where the glyphs are most easily drawn with logo |
| 17:16:43 | <shapr> | so I started out with ^ as forward, ⌈ as turn right, ⌉ as turn left |
| 17:17:04 | <shapr> | and I decided to try baking the values/amounts into the repeat command, so △ is `repeat 3` |
| 17:17:15 | <shapr> | and then I tried to draw all of the symbols using only the symbols |
| 17:18:01 | <shapr> | Kolmogorov complexity came up when I realized I'm looking for the least fixed point of: instruction count to draw each instruction, over every possible design |
| 17:19:26 | <shapr> | for my first design, I can draw △ with △ [ ^ ⎔ ⌈ ] |
| 17:19:49 | <shapr> | though that assumes the repeat commands baked into a polygon can be applied to a single glyph as well as a quoted phrase |
| 17:20:14 | <shapr> | Rembane: anyway, what do you think? |
| 17:20:34 | <shapr> | I found bugs in my first take on the design, and the second, and I'm on a third that fixes some things, and breaks others :-/ |
| 17:20:56 | <shapr> | for example, the first take can't easily produce ⬠ or ⯃ because there's no way to do things twice! |
| 17:21:13 | <Rembane> | shapr: This is mind bending and amazing. It makes me super happy! :D |
| 17:21:19 | <shapr> | yay! I'm glad you enjoy it! |
| 17:21:30 | <shapr> | I was doing something else entirely, then this idea attacked my brain and won't let go |
| 17:21:44 | <Rembane> | shapr: does this mean that you're building proto-Logo in many levels until you have a proper Logo? |
| 17:21:55 | <shapr> | what's a proto-logo ? |
| 17:22:31 | <shapr> | My goal is to find the least fixpoint of glyphs that can draw those same glyphs |
| 17:22:37 | <Rembane> | A subset of logo in syntax and/or semantics |
| 17:22:45 | <shapr> | yes, logo turns out to be large |
| 17:23:09 | <shapr> | on the good side, did you know the original logo turtles had headlights and whistles? |
| 17:23:18 | <shapr> | if you look at section 12.3 of http://bitsavers.org/pdf/mit/ai/aim/AIM-313.pdf there are many surprises |
| 17:23:23 | <Rembane> | I didn't! That's lovely! |
| 17:23:55 | <shapr> | I think there's some connection to stack based languages in here, but I can't quite see it. |
| 17:24:06 | <shapr> | There's definitely a connection to lisp, since logo is pretty much a DSL inside lisp |
| 17:24:54 | <Rembane> | What parts of logo are smelling like stack based languages? |
| 17:25:14 | <shapr> | well, trying to find a way to draw things twice without having functions |
| 17:25:35 | <shapr> | it's looking like instructions may work better if they modify their next argument on a stack? |
| 17:26:04 | <Rembane> | That seems reasonable. |
| 17:26:09 | <shapr> | my first design baked in the value of 10 for each instruction, so ^ was `forward 10` |
| 17:26:32 | <shapr> | but as I said, I couldn't draw pentagons or octagons because the internal angles need a multiplier of 2 to get right |
| 17:26:37 | <shapr> | (I could be wrong about all this) |
| 17:26:59 | <shapr> | so I tried baking in the default value of an instruction as 2 but then I needed more than one factor of 2 in other places |
| 17:27:33 | <shapr> | I've been rolling with the repeat commands as multipliers of each other, vaguely stack like |
| 17:28:00 | <shapr> | so ⎔ which is "repeat 6 times" would then be ⎔ [ ^ △ ⌷ ⌈ ] |
| 17:28:18 | <juri_> | use primes? ;) |
| 17:28:30 | <shapr> | which is, `repeat 6 [ forward 10 repeat 3 [ repeat 4 [ right 10 ]]]` |
| 17:28:35 | <Rembane> | Could it be that there's a stack in your implementation because stacks are quite nice to have when you need somewhere to put arguments when they must be implicit? |
| 17:28:41 | <shapr> | juri_: that's an idea, where each indexes into the set of primes |
| 17:28:52 | <shapr> | Rembane: could be, I'm not sure |
| 17:29:51 | <shapr> | someone pointed out that the two side polygon is, by induction, `repeat 2 [ forward 10 right 180 ]` |
| 17:29:59 | <shapr> | and that's just | |
| 17:30:08 | <shapr> | so that could give me a factor of 2 |
| 17:30:31 | <shapr> | they also suggested indexing into the primes, but I'm still not convinced about that |
| 17:30:56 | <shapr> | this person also suggested a reciprocal operator N |
| 17:31:45 | <shapr> | for that, if you allow self referential definitions, then ⬠ is `[ ^ N ⬠ ⌈ ]` |
| 17:32:11 | <shapr> | anyway, this is a crazy fun brain twisty project, and I hope I can get it working in the next week |
| 17:35:53 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 17:37:52 | <juri_> | shapr: remind me to rant at you about slicing in scad at some point in the future. :) |
| 17:41:24 | <shapr> | now you have my interest :-) |
| 17:41:52 | <shapr> | The slow part of designing the optimal metaprogrammed logo is that I have to reimplement all of the glyphs after each change |
| 17:42:15 | <shapr> | I wonder if I could use the SMT solver trick to come up with minimal definitions for each change and build a tree of possibilities? |
| 17:47:37 | → | whatsupdoc joins (uid509081@id-509081.hampstead.irccloud.com) |
| 17:47:39 | <juri_> | shapr: I've been writing a slicer for the last few years. it's written using projective geometric algebra, and a whole lot of wishful thinking. the main loop already has a scad interpreter available, but the geometry / language problems there.. are going to be a lot of fun for whoever gets to them. :) |
| 17:48:20 | <juri_> | I'm up to my eyeballs in the geometry library. i can see the light at the end of the tunnel, but i'm measuring it in discrete photons. :) |
| 17:48:40 | <shapr> | yikes |
| 17:49:21 | <darkling> | Sounds like fun. :) |
| 17:50:07 | <juri_> | it has been! PGA, FPUs, and precise geometry (not game-geometry) are not playing well.. but i think i have a hand on it. |
| 17:51:35 | <darkling> | Yeah, I can imagine the numerics are horrible. |
| 17:51:57 | <juri_> | I'm learning new curse words, yen. |
| 17:52:00 | <juri_> | yes. |
| 17:54:07 | <darkling> | Look on the bright side -- at least you're not trying to do molecular dynamics or ab initio quantum mechanics. :) |
| 17:54:18 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 17:54:18 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 17:54:18 | → | wroathe joins (~wroathe@user/wroathe) |
| 17:54:52 | <EvanR> | at least quantum mechanics doesn't have any corners? |
| 17:55:12 | <darkling> | I once went to a seminar on fluid dynamics. Not just fluid dynamics, but relativistic magnetohydrodynamics. Never again. :) |
| 17:55:49 | <EvanR> | so you have a chance of doing harmonic analysis |
| 17:56:20 | → | mokee joins (~mokee@37.228.215.185) |
| 17:56:49 | <juri_> | nope! and some of the diagrams are pretty. i added an export to ganja.js, so i could see what i'm doing. https://enkimute.github.io/ganja.js/examples/coffeeshop.html#uz2hGv6s0 |
| 17:57:21 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:57:29 | <juri_> | I'm implementing straight skeletons, which AFAICT is the first time this has been done in PGA. |
| 17:57:36 | <darkling> | Nice. Do you have that as a t-shirt? :) |
| 17:57:50 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds) |
| 17:58:13 | <juri_> | or in haskell. |
| 17:58:43 | <juri_> | i'm way off the edge of what's sane, in a project that's taken years. wheee! |
| 17:58:59 | juri_ | gets out her single photon detector. |
| 17:59:01 | <shapr> | if I can get this metalogo working, I want to figure out how to increase the semantic density with something like icelandic magical staves |
| 17:59:38 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 17:59:54 | <geekosaur[m]> | Runic? |
| 18:00:11 | <shapr> | yup |
| 18:02:12 | <Rembane> | Before you know it you'll have summoned the great old ones |
| 18:02:18 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Remote host closed the connection) |
| 18:03:32 | <darkling> | And then the Laundry will recruit you... |
| 18:04:16 | <Rembane> | Exactly! |
| 18:04:24 | <Rembane> | Say hi to Bob Howard from me! |
| 18:10:10 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 18:14:29 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 18:14:56 | × | Infinite quits (~Infinite@49.39.112.232) (Ping timeout: 252 seconds) |
| 18:15:17 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 244 seconds) |
| 18:16:33 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 18:21:48 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 18:21:50 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
| 18:22:31 | × | tired quits (~tired@user/tired) (Quit: /) |
| 18:23:59 | → | tired joins (~tired@user/tired) |
| 18:25:56 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 18:25:56 | × | joo-_ quits (~joo-_@fsf/member/joo--) (Ping timeout: 246 seconds) |
| 18:26:43 | → | jgeerds joins (~jgeerds@55d45f48.access.ecotel.net) |
| 18:28:02 | → | joo-_ joins (~joo-_@87-49-44-12-mobile.dk.customer.tdc.net) |
| 18:28:02 | × | joo-_ quits (~joo-_@87-49-44-12-mobile.dk.customer.tdc.net) (Changing host) |
| 18:28:02 | → | joo-_ joins (~joo-_@fsf/member/joo--) |
| 18:30:24 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 18:32:54 | → | Demmy joins (~Demmy@102.89.34.232) |
| 18:37:08 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 246 seconds) |
| 18:38:26 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 18:42:48 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 18:50:47 | × | bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 246 seconds) |
| 18:51:21 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 18:54:09 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 19:00:46 | × | Demmy quits (~Demmy@102.89.34.232) (Ping timeout: 252 seconds) |
| 19:03:02 | × | obabo quits (~obabo@563BF107.catv.pool.telekom.hu) (Ping timeout: 246 seconds) |
| 19:05:27 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 19:05:33 | <Bulby[m]> | https://hackage.haskell.org/package/megaparsec-9.2.1/docs/Text-Megaparsec.html#v:oneOf why is this less performant |
| 19:05:35 | <Bulby[m]> | specifically on lists |
| 19:06:40 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 19:09:08 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 19:10:24 | <EvanR> | the lambda shown in the satisfy example will get compiled to a fast test |
| 19:10:43 | <EvanR> | (`elem` whateverlist) might not |
| 19:10:53 | <EvanR> | especially if whateverlist is unknown |
| 19:10:54 | <Bulby[m]> | get compiled to... makes sense |
| 19:11:50 | <Bulby[m]> | maybe template haskell could do some witchcraft here? |
| 19:12:23 | <Bulby[m]> | e.g. `[foo|'"|]` will compile to that lambda |
| 19:13:32 | <EvanR> | template haskell is like a nuclear option |
| 19:13:47 | <Bulby[m]> | 🤔 why |
| 19:13:49 | <hpc> | it's the only way to be sure? |
| 19:14:08 | <jean-paul[m]> | Was ghc in 2013 happy with... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/17d01ccac428e8fdbecddeea090d1b5cb9067422) |
| 19:14:25 | <EvanR> | if there's a better way to do it, then going template haskell leads you into high compilation times and other complexities |
| 19:14:36 | <EvanR> | on balance might seem silly |
| 19:14:51 | <Bulby[m]> | lol |
| 19:15:02 | → | wroathe joins (~wroathe@50-205-197-50-static.hfc.comcastbusiness.net) |
| 19:15:02 | × | wroathe quits (~wroathe@50-205-197-50-static.hfc.comcastbusiness.net) (Changing host) |
| 19:15:02 | → | wroathe joins (~wroathe@user/wroathe) |
| 19:15:13 | <Bulby[m]> | high compilation time? makes sense ig |
| 19:15:25 | <EvanR> | and if there's a better way to do it, often I notice the better way is more satisfying anyway xD |
| 19:15:50 | <Bulby[m]> | then how would one make it optimize well 🤔 |
| 19:18:06 | <EvanR> | what are you even trying to do again |
| 19:19:05 | <Bulby[m]> | make `oneOf` faster by compiling `[oneOfQ|'"]` to `satisfy (\x -> x == '\'' || x == '\"')` |
| 19:19:10 | <Bulby[m]> | oops |
| 19:19:16 | <EvanR> | oh that's easy |
| 19:19:19 | <Bulby[m]> | pretend there is a `|` before that `]` |
| 19:19:32 | <EvanR> | write satisfy (\x -> x == '\'' || x == '\"') instead |
| 19:19:43 | <Bulby[m]> | lol |
| 19:19:47 | <Bulby[m]> | i'm talking generally |
| 19:21:15 | <EvanR> | step 1, in the whole parser is this the thing that is the actual bottleneck |
| 19:21:30 | <Bulby[m]> | HAAHAHH |
| 19:21:33 | <Bulby[m]> | LOL |
| 19:21:44 | <Bulby[m]> | pick your battles 😉 |
| 19:21:59 | <Bulby[m]> | i was just curious as why it was less performant |
| 19:22:30 | <EvanR> | ghc not smart enough to rewrite a list algorithm as an equivalent couple of tests, I'm guessing |
| 19:28:16 | <c_wraith> | in general, recursive traversals don't get inlined, even if the recursion is over a small constant |
| 19:33:53 | <[exa]> | inlining recursive stuff is highly unpopular among inliners |
| 19:34:04 | <Bulby[m]> | oh, right |
| 19:34:18 | <[exa]> | "am I going to create ∞ of code?" |
| 19:34:55 | <Bulby[m]> | why is template haskell so slow to compile then |
| 19:35:33 | <c_wraith> | it's slow to compile because it starts a ghci interpreter to run the TH code |
| 19:35:46 | <Bulby[m]> | 😱 |
| 19:35:48 | <Bulby[m]> | WHAT |
| 19:35:55 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Remote host closed the connection) |
| 19:35:56 | <c_wraith> | what else is it going to do? |
| 19:36:00 | <c_wraith> | it needs to run haskell code |
| 19:36:33 | <Bulby[m]> | oh right it needs to run `[foo|a|]` foo |
| 19:36:46 | <c_wraith> | and in fact, *arbitrary* haskell code. TH can do anything at compile time |
| 19:36:59 | × | jollygood2 quits (~bc8147f2@cerf.good1.com) (Ping timeout: 246 seconds) |
| 19:39:21 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 19:39:36 | → | exarkun joins (~exarkun@user/exarkun) |
| 19:39:38 | × | Inst quits (~Liam@2601:6c4:4080:3f80:14ba:6ec2:95f7:e2c) (Ping timeout: 255 seconds) |
| 19:40:36 | → | kenaryn joins (~aurele@89-88-44-27.abo.bbox.fr) |
| 19:44:41 | × | mokee quits (~mokee@37.228.215.185) (Quit: off) |
| 19:46:28 | → | king_gs joins (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) |
| 19:46:50 | → | Inst joins (~Liam@c-98-208-218-119.hsd1.fl.comcast.net) |
| 19:47:50 | Sauvin | is now known as Lemniscate |
| 19:51:09 | Lemniscate | is now known as Sauvin |
| 19:52:01 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 19:52:47 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 260 seconds) |
| 19:53:10 | → | nate1 joins (~nate@98.45.169.16) |
| 19:54:13 | <EvanR> | does arbitrary haskell code include... code with more TH in it, and then more arbitrary haskell code with tertiary TH in it etc |
| 19:54:33 | <Bulby[m]> | /o\ |
| 19:55:50 | × | Inst quits (~Liam@c-98-208-218-119.hsd1.fl.comcast.net) (Ping timeout: 255 seconds) |
| 19:57:11 | × | bahamas quits (~lucian@84.232.141.167) (Ping timeout: 255 seconds) |
| 19:57:38 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 246 seconds) |
| 19:59:26 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 20:01:58 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Remote host closed the connection) |
| 20:02:08 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 255 seconds) |
| 20:02:53 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds) |
| 20:03:27 | <maerwald> | haskell is all about correctnes... xD |
| 20:06:41 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 20:11:24 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 20:14:53 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Remote host closed the connection) |
| 20:15:10 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 20:15:45 | → | wroathe joins (~wroathe@50-205-197-50-static.hfc.comcastbusiness.net) |
| 20:15:45 | × | wroathe quits (~wroathe@50-205-197-50-static.hfc.comcastbusiness.net) (Changing host) |
| 20:15:45 | → | wroathe joins (~wroathe@user/wroathe) |
| 20:16:36 | × | oo_miguel quits (~pi@77.252.47.226) (Ping timeout: 258 seconds) |
| 20:18:39 | → | oo_miguel joins (~pi@77.252.47.226) |
| 20:20:40 | × | _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection) |
| 20:21:26 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 20:22:04 | × | fef quits (~thedawn@user/thedawn) (Quit: Killer) |
| 20:29:35 | × | hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 255 seconds) |
| 20:31:33 | → | hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net) |
| 20:33:30 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 20:34:49 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 20:35:47 | × | hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 246 seconds) |
| 20:37:56 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 20:38:14 | → | notzmv joins (~zmv@user/notzmv) |
| 20:39:48 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 276 seconds) |
| 20:42:59 | → | hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net) |
| 20:45:46 | → | trisolaran joins (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 20:46:55 | × | phma quits (~phma@2001:5b0:211c:55f8:2664:c781:c87b:c562) (Read error: Connection reset by peer) |
| 20:48:00 | → | phma joins (~phma@2001:5b0:2172:ae88:fc08:5bd9:8059:e51c) |
| 20:48:54 | → | moonsheep joins (~user@user/moonsheep) |
| 20:49:52 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 20:52:06 | × | moonsheep quits (~user@user/moonsheep) (Client Quit) |
| 20:54:04 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 20:55:30 | → | wroathe joins (~wroathe@50-205-197-50-static.hfc.comcastbusiness.net) |
| 20:55:30 | × | wroathe quits (~wroathe@50-205-197-50-static.hfc.comcastbusiness.net) (Changing host) |
| 20:55:30 | → | wroathe joins (~wroathe@user/wroathe) |
| 21:06:18 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 21:07:56 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 21:08:28 | → | cyanide4dinner joins (~cyanide4d@122.168.60.162) |
| 21:10:56 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 21:13:08 | → | alx741 joins (~alx741@host-186-3-154-14.netlife.ec) |
| 21:13:50 | → | Jake3 joins (~Jake@c-76-119-102-91.hsd1.ma.comcast.net) |
| 21:16:04 | × | cyanide4dinner quits (~cyanide4d@122.168.60.162) (Remote host closed the connection) |
| 21:22:37 | × | aliosablack quits (~chomwitt@2a02:587:dc05:e000:eaa1:d30:2c04:8e84) (Quit: Leaving) |
| 21:22:44 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 21:22:59 | <Bulby[m]> | reading about LLVM target - it says it can produce as good as native but at the cost of compilation time |
| 21:23:10 | <Bulby[m]> | is it specifically WASM that is slow? |
| 21:23:41 | × | dextaa quits (~DV@user/dextaa) (Read error: Connection reset by peer) |
| 21:25:14 | <Jake3> | does anyone have any insight on why these two functions don't typecheck? https://paste.tomsmeding.com/lw9Py8ZA |
| 21:25:54 | → | dextaa joins (~DV@user/dextaa) |
| 21:26:09 | <hpc> | Jake3: in the expression (f True), what's the type of f? |
| 21:26:14 | <Bulby[m]> | for b2 - `z` means it can be ANY type |
| 21:26:14 | → | unit73e joins (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) |
| 21:26:35 | × | dextaa quits (~DV@user/dextaa) (Read error: Connection reset by peer) |
| 21:26:49 | <maerwald> | Jake3: https://play-haskell.tomsmeding.com/play/paste/PVt7qir2/1 |
| 21:26:50 | <geekosaur> | Jake3, types work in reverse of what you might expect from e.g. Java |
| 21:27:04 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 21:27:27 | <Bulby[m]> | it's type variables and they are expected to work for all types |
| 21:28:28 | <geekosaur> | so for a1, you have w -> (z -> z) -> w, then you try to use a `w` as a `z`. but the caller can specify *any* type for `z`, not guaranteed to be the same as `w` |
| 21:28:43 | <Bulby[m]> | ^ |
| 21:28:43 | → | dextaa joins (~DV@user/dextaa) |
| 21:29:36 | × | mvk quits (~mvk@2607:fea8:5ce3:8500::ba9a) (Ping timeout: 272 seconds) |
| 21:29:38 | <geekosaur> | and it's not under your control, neither can you inspect the type the user chose, but you have to go along with what the user did |
| 21:31:13 | <Bulby[m]> | i don't really get how this types would even work in java |
| 21:31:49 | <Jake3> | geekosaur, I think that makes sense, thanks. |
| 21:32:42 | <geekosaur> | in java everything descends from java.lang.Object and types tend to be inclusive. in Haskell they're exclusive |
| 21:33:18 | <Jake3> | for a1, why does adding `forall x.` make ghc happy? |
| 21:33:27 | <Bulby[m]> | could it work with existential qualification? |
| 21:34:16 | <geekosaur> | becuase that makes it so the caller must supply a function that works on any type of *your* choice |
| 21:34:31 | <geekosaur> | so now you can pick `w` |
| 21:34:41 | <Bulby[m]> | that |
| 21:34:46 | <Bulby[m]> | that's a bit silly |
| 21:35:18 | <Jake3> | I guess I assumed that the polymorphic version of a1 would be fine but any function usage of it that supplies parameters that don't match would then fail the typecheck |
| 21:35:54 | <Bulby[m]> | which would be a bit silly, no? |
| 21:37:14 | <geekosaur> | to oversimplify a bit: the actual type of a1 is `forall w x. w -> (x -> x) -> w`. this forall means the caller can choose any `w` and any `x` it wants. |
| 21:38:00 | <Jake3> | interesting... |
| 21:39:10 | <Jake3> | _still trying to wrap my head around that_ |
| 21:39:50 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 21:40:05 | <geekosaur> | your modified one is `forall w. w -> (forall x. x -> x) -> w`. the first forall still means the caller can choose any `w`. the second, because it's to the left of an inner arrow, means *you* can pick any `z` |
| 21:40:46 | <geekosaur> | this has to do with positive vs. negative position of arguments, and I admit I'm still a bit weak on it myself but I think there was a discussion in here last night |
| 21:42:21 | × | vjoki quits (~vjoki@2a00:d880:3:1::fea1:9ae) (Quit: ...) |
| 21:43:06 | → | vjoki joins (~vjoki@2a00:d880:3:1::fea1:9ae) |
| 21:43:06 | <hpc> | notably, in forall w. w -> (forall x. x -> x) -> w, the only thing you can pass as the second argument is id |
| 21:44:08 | <Bulby[m]> | i only ever see unconstrained polymorphic types when you don't really care about that type |
| 21:44:18 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 21:44:59 | <hpc> | % let f :: forall w. w -> (forall x. x -> x) -> w; f = undefined in f () (+1) |
| 21:45:10 | <hpc> | > let f :: forall w. w -> (forall x. x -> x) -> w; f = undefined in f () (+1) |
| 21:45:12 | <lambdabot> | error: |
| 21:45:12 | <lambdabot> | • Cannot instantiate unification variable ‘a0’ |
| 21:45:12 | <lambdabot> | with a type involving polytypes: w -> (forall x. x -> x) -> w |
| 21:45:16 | <hpc> | guess yahb isn't around |
| 21:46:52 | × | Jake3 quits (~Jake@c-76-119-102-91.hsd1.ma.comcast.net) (Quit: Client closed) |
| 21:47:46 | <Bulby[m]> | yeah looking up `a -> a` they are all some form of id |
| 21:48:09 | <Bulby[m]> | (ignoring unconstrained) |
| 21:48:42 | <hpc> | there's a whole other thing you can do to show that id is the only thing of type (forall a. a -> a) |
| 21:49:00 | <Bulby[m]> | what is it called |
| 21:49:02 | <hpc> | or rather, that id is the only inhabitant of (forall a. a -> a) |
| 21:49:13 | <Bulby[m]> | free theorem? or am i thinking of something else |
| 21:49:29 | → | Jake23 joins (~Jake@c-76-119-102-91.hsd1.ma.comcast.net) |
| 21:50:15 | <hpc> | it has to do with the "algebra" part of algebraic data types, but i don't remember exactly |
| 21:50:43 | <hpc> | very roughly, you can treat types as numbers, where their number is how many values are of that type |
| 21:50:52 | <hpc> | Bool = 2, Either a b = a + b, etc |
| 21:51:12 | <hpc> | and there's a correspondance between all the properties of an algebra and all the properties of ADTs |
| 21:52:09 | → | Inst joins (~Liam@2601:6c4:4080:3f80:a989:72d:12c5:f097) |
| 21:52:11 | <hpc> | a good exercise is to work out for yourself what (a -> b) is |
| 21:53:15 | <hpc> | you'll have to google for how forall fits into that |
| 21:55:04 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving) |
| 21:55:38 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 21:55:42 | × | alx741 quits (~alx741@host-186-3-154-14.netlife.ec) (Quit: alx741) |
| 21:56:53 | → | tzh_ joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 21:58:45 | × | tired quits (~tired@user/tired) (Quit: /) |
| 21:59:05 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 21:59:23 | → | tired joins (~tired@user/tired) |
| 22:00:38 | × | trisolaran quits (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 272 seconds) |
| 22:01:33 | → | pavonia joins (~user@user/siracusa) |
| 22:05:55 | → | foul_owl joins (~kerry@23.82.194.98) |
| 22:05:56 | × | Jake23 quits (~Jake@c-76-119-102-91.hsd1.ma.comcast.net) (Ping timeout: 252 seconds) |
| 22:06:33 | × | vjoki quits (~vjoki@2a00:d880:3:1::fea1:9ae) (Quit: ...) |
| 22:07:07 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 22:07:46 | → | vjoki joins (~vjoki@2a00:d880:3:1::fea1:9ae) |
| 22:09:45 | → | gurkenglas joins (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) |
| 22:11:08 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
| 22:13:03 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 22:13:27 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Remote host closed the connection) |
| 22:14:17 | × | zer0bitz quits (~zer0bitz@2001:2003:f444:8f00:d47c:b2d:c58e:501b) (Ping timeout: 258 seconds) |
| 22:15:04 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 22:17:04 | × | gehmehgeh quits (~user@user/gehmehgeh) (Ping timeout: 240 seconds) |
| 22:19:36 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 22:19:40 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 22:35:31 | → | Unicorn_Princess joins (~Unicorn_P@93-103-228-248.dynamic.t-2.net) |
| 22:41:05 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 246 seconds) |
| 22:43:12 | → | jao joins (~jao@45.134.213.210) |
| 22:52:14 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 22:56:16 | → | CiaoSen joins (~Jura@p200300c95731a0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 22:59:50 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 23:03:14 | → | anon15041149 joins (~anon15041@host-80-41-95-245.as13285.net) |
| 23:05:44 | × | king_gs quits (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) (Remote host closed the connection) |
| 23:06:03 | → | king_gs joins (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) |
| 23:07:32 | × | anon15041149 quits (~anon15041@host-80-41-95-245.as13285.net) (Ping timeout: 252 seconds) |
| 23:12:27 | × | jgeerds quits (~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 240 seconds) |
| 23:13:25 | × | foul_owl quits (~kerry@23.82.194.98) (Quit: WeeChat 2.3) |
| 23:13:50 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) |
| 23:16:23 | × | Tuplanolla quits (~Tuplanoll@91-159-68-39.elisa-laajakaista.fi) (Quit: Leaving.) |
| 23:17:53 | × | Inst quits (~Liam@2601:6c4:4080:3f80:a989:72d:12c5:f097) (Ping timeout: 255 seconds) |
| 23:18:20 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5051:4e02:b5d9:aa15) (Ping timeout: 255 seconds) |
| 23:18:30 | → | foul_owl joins (~kerry@71.212.150.111) |
| 23:21:54 | → | Inst joins (~Liam@c-98-208-218-119.hsd1.fl.comcast.net) |
| 23:27:57 | × | king_gs quits (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) (Remote host closed the connection) |
| 23:29:15 | → | king_gs joins (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) |
| 23:33:15 | × | jao quits (~jao@45.134.213.210) (Ping timeout: 258 seconds) |
| 23:35:12 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 23:37:42 | × | king_gs quits (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) (Remote host closed the connection) |
| 23:38:00 | → | king_gs joins (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) |
| 23:42:06 | × | king_gs quits (~Thunderbi@2806:103e:29:5eb8:48de:d3eb:9d44:3d55) (Client Quit) |
| 23:42:22 | → | king_gs joins (~Thunderbi@187.201.97.18) |
| 23:54:34 | → | nate1 joins (~nate@98.45.169.16) |
| 23:57:30 | × | foul_owl quits (~kerry@71.212.150.111) (Ping timeout: 240 seconds) |
| 23:59:08 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 246 seconds) |
All times are in UTC on 2022-05-28.