Logs on 2020-09-25 (freenode/#haskell)
| 00:00:01 | × | chmac quits (~chmac@195.140.213.38) () |
| 00:01:15 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 00:01:21 | → | mu__ joins (~mu@unaffiliated/mu) |
| 00:02:57 | hackage | ttc 0.2.3.0 - Textual Type Classes https://hackage.haskell.org/package/ttc-0.2.3.0 (TravisCardwell) |
| 00:04:45 | × | Amras quits (~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds) |
| 00:04:58 | × | whiteline quits (~whiteline@unaffiliated/whiteline) (Ping timeout: 260 seconds) |
| 00:11:08 | × | mu__ quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 00:11:19 | → | mu joins (~mu@unaffiliated/mu) |
| 00:11:33 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 00:12:03 | → | whiteline joins (~whiteline@unaffiliated/whiteline) |
| 00:16:35 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 00:19:21 | → | adamwespiser joins (~adam_wesp@209.6.42.110) |
| 00:21:15 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 00:21:21 | → | mu__ joins (~mu@unaffiliated/mu) |
| 00:23:20 | → | fendor_ joins (~fendor@91.141.3.153.wireless.dyn.drei.com) |
| 00:25:08 | × | adamwespiser quits (~adam_wesp@209.6.42.110) (Ping timeout: 272 seconds) |
| 00:25:58 | × | fendor quits (~fendor@178.165.129.251.wireless.dyn.drei.com) (Ping timeout: 260 seconds) |
| 00:27:13 | → | mud joins (~mud@unaffiliated/kadoban) |
| 00:29:12 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:5ab:3807:9c89:ee30) (Ping timeout: 260 seconds) |
| 00:30:50 | × | mu__ quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 00:31:20 | → | mpereira joins (~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) |
| 00:31:23 | → | mu joins (~mu@unaffiliated/mu) |
| 00:32:00 | ← | archaephyrryx parts (~archaephy@straasha.imrryr.org) () |
| 00:32:00 | → | archaephyrryx joins (~archaephy@straasha.imrryr.org) |
| 00:32:53 | <koz_> | I need to go from Data.Fixed.Pico to Data.Fixed.Milli, rounding down (i.e., hacking off all the digits I'm not interested in). How do I spell that? |
| 00:34:11 | → | mnrmnaugh joins (~mnrmnaugh@unaffiliated/mnrmnaugh) |
| 00:34:45 | <Axman6> | coerce . (`div` 1000) |
| 00:34:46 | <Axman6> | >_> |
| 00:34:58 | <koz_> | Axman6: Wait seriously. |
| 00:35:00 | <Axman6> | that's almost definitely wrong |
| 00:35:07 | → | crobbins_ joins (~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089) |
| 00:35:07 | <koz_> | Yeah, I thought so. |
| 00:35:18 | <koz_> | Since I don't think Fixed coerces like that. |
| 00:35:18 | <Axman6> | I think |
| 00:35:52 | × | mpereira quits (~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) (Ping timeout: 260 seconds) |
| 00:36:12 | <Axman6> | but, picoToMilli is probably something like picoToMilli (Fixed n) = Fixed (n `div` 1000000) -- I can't remember what the right factor is |
| 00:37:04 | → | lambda-11235 joins (~lambda-11@108-237-120-58.lightspeed.frokca.sbcglobal.net) |
| 00:37:22 | <koz_> | Well, Pico is Fixed E12, while Milli is Fixed E3, so I guess nine zeroes? |
| 00:38:13 | <c_wraith> | I'm surprised there isn't a conversion function that uses a class to get those right. |
| 00:38:31 | <koz_> | c_wraith: Me neither. |
| 00:38:32 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:48c0:4650:53a9:7885) (Ping timeout: 260 seconds) |
| 00:38:38 | <koz_> | s/neither/too/ |
| 00:38:41 | <koz_> | Argh. |
| 00:38:46 | <Axman6> | would be nice if these days Fixed used Nat instead of unrelated data types |
| 00:39:04 | <Axman6> | argh indeed, the queen would be ashamed commonwealth bro |
| 00:39:05 | <c_wraith> | still, I think you should be able to use realToFrac ? |
| 00:41:02 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 00:41:02 | <koz_> | c_wraith: Like, directly? |
| 00:41:06 | <koz_> | :t 1e9 |
| 00:41:07 | → | nbloomf joins (~nbloomf@2600:1700:83e0:1f40:9deb:11e:5cda:a60a) |
| 00:41:08 | <lambdabot> | Fractional p => p |
| 00:41:12 | <koz_> | > 1e9 |
| 00:41:15 | <lambdabot> | 1.0e9 |
| 00:41:19 | → | mu joins (~mu@unaffiliated/mu) |
| 00:41:32 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:bc6f:f4f1:b8da:13b1) |
| 00:41:49 | <c_wraith> | yeah, Fixed has all the right instances |
| 00:44:10 | <koz_> | Nice. |
| 00:45:39 | → | sand_dull joins (~theuser@62.182.99.37) |
| 00:45:48 | × | asan quits (~yan4138@124.78.128.72) (Ping timeout: 260 seconds) |
| 00:46:42 | × | mnrmnaugh quits (~mnrmnaugh@unaffiliated/mnrmnaugh) (Ping timeout: 265 seconds) |
| 00:47:09 | → | macrover joins (~macrover@ip70-189-231-35.lv.lv.cox.net) |
| 00:49:22 | → | Amras joins (~Amras@unaffiliated/amras0000) |
| 00:49:30 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 00:50:01 | × | Noldorin quits (~noldorin@unaffiliated/noldorin) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 00:50:42 | → | mnrmnaugh joins (~mnrmnaugh@unaffiliated/mnrmnaugh) |
| 00:51:01 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 00:51:06 | → | asan joins (~yan4138@58.37.8.8) |
| 00:51:25 | × | sand_dull quits (~theuser@62.182.99.37) (Ping timeout: 240 seconds) |
| 00:51:28 | → | mu joins (~mu@unaffiliated/mu) |
| 00:52:00 | × | mnrmnaugh quits (~mnrmnaugh@unaffiliated/mnrmnaugh) (Max SendQ exceeded) |
| 00:55:42 | → | machty joins (~machty@89.47.234.28) |
| 00:56:23 | → | sand_dull joins (~theuser@62.182.99.37) |
| 00:56:39 | × | crobbins_ quits (~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089) (Remote host closed the connection) |
| 00:57:22 | → | crobbins joins (~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089) |
| 00:58:04 | × | cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 272 seconds) |
| 00:58:56 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089) (Remote host closed the connection) |
| 00:59:13 | → | crobbins joins (~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089) |
| 00:59:23 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:314e:bdc5:b293:4089) (Remote host closed the connection) |
| 01:00:17 | → | jedws joins (~jedws@2001:8003:337f:1b00:1449:7df0:4af3:7c20) |
| 01:00:49 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 01:01:19 | → | mu joins (~mu@unaffiliated/mu) |
| 01:01:20 | × | nbloomf quits (~nbloomf@2600:1700:83e0:1f40:9deb:11e:5cda:a60a) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:01:49 | → | plutoniix joins (~q@175.176.222.7) |
| 01:03:46 | → | nbloomf joins (~nbloomf@2600:1700:83e0:1f40:b03d:853a:ebea:53e3) |
| 01:04:13 | → | Rudd0 joins (~Rudd0@185.189.115.108) |
| 01:05:13 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 01:07:02 | <wwwww> | What is your toughts about realtime programs with haskell? |
| 01:07:11 | <koz_> | wwwww: Define 'realtime'. |
| 01:07:34 | <wwwww> | koz_: multiplayer game server |
| 01:07:47 | × | poljar quits (~poljar@93-139-70-179.adsl.net.t-com.hr) (Read error: Connection reset by peer) |
| 01:07:54 | → | falafel joins (~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) |
| 01:08:00 | <koz_> | wwwww: Like, for running a multiplayer FPS game? |
| 01:08:01 | × | jonathanx quits (~jonathan@dyn-8-sc.cdg.chalmers.se) (Read error: Connection reset by peer) |
| 01:08:08 | <koz_> | (for instance) |
| 01:08:09 | → | poljar joins (~poljar@93-139-70-179.adsl.net.t-com.hr) |
| 01:08:22 | → | jonathanx joins (~jonathan@dyn-8-sc.cdg.chalmers.se) |
| 01:08:43 | × | mirrorbird quits (~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Ping timeout: 272 seconds) |
| 01:09:05 | × | shailangsa quits (~shailangs@host86-186-191-89.range86-186.btcentralplus.com) (Ping timeout: 240 seconds) |
| 01:09:31 | <wwwww> | Not the game itself but the server, koz_ |
| 01:09:43 | → | shailangsa joins (~shailangs@host86-186-191-89.range86-186.btcentralplus.com) |
| 01:09:45 | × | shailangsa quits (~shailangs@host86-186-191-89.range86-186.btcentralplus.com) (Excess Flood) |
| 01:09:54 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 265 seconds) |
| 01:10:08 | → | shailangsa joins (~shailangs@host86-186-191-89.range86-186.btcentralplus.com) |
| 01:10:10 | × | shailangsa quits (~shailangs@host86-186-191-89.range86-186.btcentralplus.com) (Excess Flood) |
| 01:10:49 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 01:11:03 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 01:11:28 | → | mu joins (~mu@unaffiliated/mu) |
| 01:12:31 | × | Amras quits (~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds) |
| 01:13:07 | <c_wraith> | so very soft realtime |
| 01:13:48 | × | sand_dull quits (~theuser@62.182.99.37) (Ping timeout: 260 seconds) |
| 01:14:04 | <c_wraith> | you can do that fine with GHC-compiled Haskell, though it might require some additional discipline to keep GC latency lower than you'd care about in many applications. |
| 01:14:14 | → | totallynotnate joins (~nate@125.161.70.37) |
| 01:14:15 | <Axman6> | ir probably depends on how complicated the server is going to get - if it's something simple enough that there won't be much garbase, garbage collection shouldn't be such an issue. the new GC should help with latency too |
| 01:14:36 | <koz_> | Axman6: Is new GC already landed, or is it landing in 9? |
| 01:15:12 | <Axman6> | pretty sure it's in 8.10? I could be wrong |
| 01:15:39 | <c_wraith> | there are also things you can do technically like using compact regions to massively reduce pointer chasing on retained memory. |
| 01:15:59 | <Axman6> | yeah large, infrequently changing state should be in a compact region |
| 01:16:21 | → | cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net) |
| 01:16:57 | <c_wraith> | those are things that often don't matter, but might be really important for a soft realtime application. |
| 01:17:13 | <c_wraith> | So... the tools are available, but some of them require manual work. |
| 01:17:21 | × | totallynotnate quits (~nate@125.161.70.37) (Client Quit) |
| 01:17:44 | → | totallynotnate joins (~nate@125.161.70.37) |
| 01:19:58 | <Axman6> | As with most software, make it work, then make it fast |
| 01:20:20 | × | xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 258 seconds) |
| 01:20:25 | <koz_> | Or alternatively, make it work, check if fast enough, make fast if not. |
| 01:20:56 | <Axman6> | nah, just always make it fast |
| 01:20:56 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 01:21:07 | <wwwww> | That's what i'm trying to do these days, threadscope was useful tool |
| 01:21:09 | <Axman6> | save some penguins by using fewer cycles |
| 01:21:20 | → | mu joins (~mu@unaffiliated/mu) |
| 01:21:57 | × | acidjnk_new2 quits (~acidjnk@p200300d0c7237863349b0df7f7aa9c44.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 01:22:12 | × | catkiki quits (~kiki@m90-134-157-227.cust.tele2.hr) (Quit: Leaving) |
| 01:22:35 | → | DataComputist joins (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) |
| 01:23:37 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 01:23:38 | × | oxide quits (~lambda@unaffiliated/mclaren) (Read error: Connection reset by peer) |
| 01:28:49 | × | totallynotnate quits (~nate@125.161.70.37) (Quit: WeeChat 2.9) |
| 01:29:02 | <wwwww> | I have 80% productivity according to profile but that 20% is GC |
| 01:29:08 | <sm[m]> | my first time using optparse-applicative in years (via optparse-simple).. could someone explain what I'm doing wrong here ? why won't it parse "2" to Just 2 ? https://paste.tomsmeding.com/6tXUenQu |
| 01:29:42 | → | oxide joins (~lambda@unaffiliated/mclaren) |
| 01:30:53 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 01:31:19 | → | mu joins (~mu@unaffiliated/mu) |
| 01:31:34 | <sm[m]> | incidentally https://github.com/tomsmeding/pastebin-haskell deserves more stars |
| 01:32:20 | × | ryansmccoy quits (~ryansmcco@156.96.151.132) (Ping timeout: 256 seconds) |
| 01:32:44 | × | alexm_ quits (~alexm_@161.8.233.138) (Remote host closed the connection) |
| 01:33:14 | → | ryansmccoy joins (~ryansmcco@156.96.151.132) |
| 01:34:56 | → | totallynotnate joins (~nate@125.161.70.37) |
| 01:35:18 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 01:37:17 | × | mu quits (~mu@unaffiliated/mu) (Quit: mu) |
| 01:37:27 | hackage | http-date 0.0.9 - HTTP Date parser/formatter https://hackage.haskell.org/package/http-date-0.0.9 (KazuYamamoto) |
| 01:37:28 | → | dyeplexer joins (~lol@unaffiliated/terpin) |
| 01:38:38 | <sm[m]> | hmm, also why does optparse complain if I add +RTS ... or -- +RTS ... ? That doesn't happen with cmdargs |
| 01:39:47 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 01:47:33 | × | archaephyrryx quits (~archaephy@straasha.imrryr.org) () |
| 01:47:42 | → | crobbins joins (~crobbins@2601:2c1:380:ec40:edc8:4f69:4049:36c6) |
| 01:52:06 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 01:53:59 | <Axman6> | sm[m]: I think you're actually asking for a Maybe (Maybe Int) by using option |
| 01:54:55 | <Axman6> | I'm surprised you'd have problems with +RTS ... -RTS, those args should never get to your app. are you closing them with -RTS? |
| 01:56:09 | <Axman6> | sm[m]: basicazlly, I think what you need to do to fix the Maybe thing is not use value Nothing, just remove that and wrap the parser for that arg in optional (there's probably a better way, looking now) |
| 01:56:26 | × | urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna) |
| 01:56:28 | <sm[m]> | Axman6: thanks, you are helping |
| 01:56:35 | <Axman6> | using value means that parser will never fail |
| 01:57:20 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 01:57:36 | × | ryansmccoy quits (~ryansmcco@156.96.151.132) (Ping timeout: 272 seconds) |
| 01:57:49 | <Axman6> | uh, that isn't true, it'll ail is it can't parse the type you want |
| 01:58:08 | → | ryansmccoy joins (~ryansmcco@193.37.254.27) |
| 01:58:27 | × | xff0x quits (~fox@2001:1a81:5294:e900:d5f1:7d15:a4ef:52f8) (Ping timeout: 260 seconds) |
| 01:59:27 | <Axman6> | sm[m]: https://github.com/data61/Mirza/blob/07ac1dc96d158e316cde0d7195718599095bebc9/projects/trails/src/Mirza/Trails/Main.hs#L212 shows how to parse Maybe FilePAth |
| 01:59:57 | → | xff0x joins (~fox@2001:1a81:52cd:2700:30eb:9359:b5d6:26a0) |
| 02:00:17 | <Axman6> | which is a FilePath with a Boston accent |
| 02:00:27 | × | thc202 quits (~thc202@unaffiliated/thc202) (Ping timeout: 260 seconds) |
| 02:00:53 | × | cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 256 seconds) |
| 02:03:25 | × | shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection) |
| 02:03:41 | <sm[m]> | thanks! optional was the trick, https://paste.tomsmeding.com/OEBwVvKS#file-3 |
| 02:03:42 | → | shatriff joins (~vitaliish@176.52.219.10) |
| 02:04:12 | <Axman6> | there's still more going on there than needed, one sec |
| 02:04:13 | × | shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection) |
| 02:04:33 | → | shatriff joins (~vitaliish@176.52.219.10) |
| 02:04:40 | <sm[m]> | years later, optparse still makes me feel stupid |
| 02:05:01 | × | shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection) |
| 02:05:05 | <sm[m]> | could better docs help ? I'm not sure |
| 02:05:07 | <Axman6> | https://github.com/data61/Mirza/blob/07ac1dc96d158e316cde0d7195718599095bebc9/projects/trails/src/Mirza/Trails/Main.hs#L186 parses an Int using Read, so I thinkyou want optional (option auto (...)) |
| 02:05:40 | <sm[m]> | ah much better |
| 02:05:53 | <Axman6> | no need for the readMay stuff |
| 02:06:40 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection) |
| 02:07:16 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 02:08:01 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 02:08:14 | → | saiba_suika joins (~saiba_sui@cpe-72-231-228-139.buffalo.res.rr.com) |
| 02:09:31 | <sm[m]> | and I see +RTS works fine when compiled, but GHCI messes up command line parsing causing optparse to see it |
| 02:10:23 | × | alexm_ quits (~alexm_@161.8.233.138) (Remote host closed the connection) |
| 02:10:37 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 02:10:40 | × | totallynotnate quits (~nate@125.161.70.37) (Quit: WeeChat 2.9) |
| 02:11:28 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
| 02:12:19 | <Axman6> | yeah you can't pass RTS args like that, since the RTS is already running, it's GHC's RTS |
| 02:12:24 | <Axman6> | GHCi's* |
| 02:12:54 | → | xerox_ joins (~xerox@unaffiliated/xerox) |
| 02:12:54 | <Axman6> | if you need specific RTS args, then you'll need to start GHCi using them (probably) |
| 02:15:21 | → | danso joins (~dan@107-190-41-58.cpe.teksavvy.com) |
| 02:16:24 | → | toorevitimirp joins (~tooreviti@117.182.182.201) |
| 02:17:31 | → | totallynotnate joins (~nate@125.161.70.37) |
| 02:21:58 | <sm[m]> | oh, aha, is that it. Thanks again! |
| 02:26:53 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 02:28:49 | lagothrix | is now known as Guest96911 |
| 02:28:49 | × | Guest96911 quits (~lagothrix@unaffiliated/lagothrix) (Killed (tepper.freenode.net (Nickname regained by services))) |
| 02:28:55 | → | lagothrix joins (~lagothrix@unaffiliated/lagothrix) |
| 02:29:41 | × | nbloomf quits (~nbloomf@2600:1700:83e0:1f40:b03d:853a:ebea:53e3) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 02:32:18 | → | mpereira joins (~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) |
| 02:33:16 | → | wei2912 joins (~wei2912@unaffiliated/wei2912) |
| 02:33:20 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye) |
| 02:33:57 | hackage | aeson-schemas 1.3.0 - Easily consume JSON data on-demand with type-safety https://hackage.haskell.org/package/aeson-schemas-1.3.0 (leapyear) |
| 02:34:14 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 02:36:01 | → | nbloomf joins (~nbloomf@2600:1700:83e0:1f40:d92:3fe8:d989:c32a) |
| 02:37:21 | → | drbean joins (~drbean@TC210-63-209-146.static.apol.com.tw) |
| 02:37:47 | → | sand_dull joins (~theuser@62.182.99.37) |
| 02:38:11 | × | s00pcan quits (~chris@107.181.165.217) (Ping timeout: 240 seconds) |
| 02:38:39 | × | mpereira quits (~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) (Ping timeout: 272 seconds) |
| 02:39:17 | × | justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds) |
| 02:40:19 | → | s00pcan joins (~chris@075-133-056-178.res.spectrum.com) |
| 02:42:15 | → | Tops21 joins (~Tobias@dyndsl-095-033-089-153.ewe-ip-backbone.de) |
| 02:42:16 | × | alexm_ quits (~alexm_@161.8.233.138) (Remote host closed the connection) |
| 02:42:17 | → | elliott__ joins (~elliott@pool-100-36-54-163.washdc.fios.verizon.net) |
| 02:42:28 | × | Tops2 quits (~Tobias@dyndsl-095-033-092-020.ewe-ip-backbone.de) (Ping timeout: 260 seconds) |
| 02:44:25 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:edc8:4f69:4049:36c6) (Remote host closed the connection) |
| 02:44:46 | → | shailangsa joins (~shailangs@host86-186-191-89.range86-186.btcentralplus.com) |
| 02:45:04 | → | crobbins joins (~crobbins@2601:2c1:380:ec40:80f3:e48e:7123:1353) |
| 02:48:57 | × | andi- quits (~andi-@NixOS/user/andi-) (Ping timeout: 244 seconds) |
| 02:49:37 | → | adamwespiser joins (~adam_wesp@209.6.42.110) |
| 02:49:41 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:80f3:e48e:7123:1353) (Remote host closed the connection) |
| 02:50:18 | → | crobbins joins (~crobbins@2601:2c1:380:ec40:80f3:e48e:7123:1353) |
| 02:50:54 | → | Stanley00 joins (~stanley00@unaffiliated/stanley00) |
| 02:50:57 | × | Stanley00 quits (~stanley00@unaffiliated/stanley00) (Remote host closed the connection) |
| 02:51:33 | → | Stanley00 joins (~stanley00@unaffiliated/stanley00) |
| 02:52:06 | → | cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net) |
| 02:53:18 | × | smitop quits (uid328768@gateway/web/irccloud.com/x-hrleshkhwzzeilqw) (Quit: Connection closed for inactivity) |
| 02:53:22 | × | ddellacosta quits (~dd@86.106.121.168) (Ping timeout: 256 seconds) |
| 02:53:23 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 02:55:02 | × | falafel quits (~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Ping timeout: 260 seconds) |
| 02:55:25 | × | theDon quits (~td@muedsl-82-207-238-238.citykom.de) (Ping timeout: 264 seconds) |
| 02:55:44 | × | cosimone quits (~cosimone@5.171.26.126) (Quit: Quit.) |
| 02:55:53 | → | Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362) |
| 02:56:53 | → | theDon joins (~td@94.134.91.145) |
| 02:57:20 | × | Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 256 seconds) |
| 02:57:21 | Lord_of_Life_ | is now known as Lord_of_Life |
| 02:58:24 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 272 seconds) |
| 02:59:05 | × | asan quits (~yan4138@58.37.8.8) (Ping timeout: 240 seconds) |
| 02:59:19 | → | asan joins (~yan4138@180.164.96.158) |
| 03:00:02 | × | machty quits (~machty@89.47.234.28) () |
| 03:00:16 | → | thiross joins (~user@161.129.40.8) |
| 03:00:18 | × | raehik quits (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 272 seconds) |
| 03:00:36 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 03:01:36 | → | hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-cqejdnrmfbrsuxpt) |
| 03:02:04 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 03:03:11 | × | danso quits (~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer) |
| 03:03:41 | → | danso joins (~dan@107-190-41-58.cpe.teksavvy.com) |
| 03:03:49 | → | andi- joins (~andi-@NixOS/user/andi-) |
| 03:03:49 | × | evanjs quits (~evanjs@075-129-188-019.res.spectrum.com) (Read error: Connection reset by peer) |
| 03:04:59 | → | evanjs joins (~evanjs@075-129-188-019.res.spectrum.com) |
| 03:05:41 | × | cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving) |
| 03:05:47 | × | totallynotnate quits (~nate@125.161.70.37) (Quit: WeeChat 2.9) |
| 03:09:25 | × | machinedgod quits (~machinedg@d67-193-126-196.home3.cgocable.net) (Ping timeout: 240 seconds) |
| 03:10:10 | × | alexm_ quits (~alexm_@161.8.233.138) (Remote host closed the connection) |
| 03:10:16 | → | shafox joins (~shafox@106.51.234.111) |
| 03:11:57 | ← | thiross parts (~user@161.129.40.8) ("ERC (IRC client for Emacs 27.1)") |
| 03:12:09 | → | mirrorbird joins (~psutcliff@m83-187-173-228.cust.tele2.se) |
| 03:15:24 | → | justanotheruser joins (~justanoth@unaffiliated/justanotheruser) |
| 03:15:27 | × | aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
| 03:17:20 | → | aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net) |
| 03:18:35 | → | z1 joins (~z@static-198-54-129-86.cust.tzulo.com) |
| 03:22:14 | → | bpalmer1 joins (~bpalmer@185.204.1.185) |
| 03:24:02 | <z1> | I'm trying to figure out why the runtime of this function is theta(km + n(m^2)). Is the (n(m^2)) term due to having to copy the (ws ++x) term each iteration? |
| 03:24:04 | <z1> | f xss = g [] xss |
| 03:24:06 | <z1> | g ws [] = ws |
| 03:24:08 | <z1> | g ws (x:xs) = g (ws ++ x) xs |
| 03:24:30 | × | aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
| 03:25:00 | <dolio> | Yes, `ws ++ x` has to rebuild `ws`. |
| 03:25:31 | × | jonathanx quits (~jonathan@dyn-8-sc.cdg.chalmers.se) (Remote host closed the connection) |
| 03:25:32 | → | adamwesp_ joins (~adam_wesp@209.6.42.110) |
| 03:25:48 | <z1> | @dolio awesome thanks! |
| 03:25:48 | → | aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net) |
| 03:25:48 | <lambdabot> | Unknown command, try @list |
| 03:25:49 | → | jonathanx joins (~jonathan@dyn-8-sc.cdg.chalmers.se) |
| 03:25:51 | → | Sgeo_ joins (~Sgeo@ool-18b982ad.dyn.optonline.net) |
| 03:25:55 | × | z1 quits (~z@static-198-54-129-86.cust.tzulo.com) (Quit: WeeChat 2.9) |
| 03:26:14 | aplainzetakind | is now known as aplainzet |
| 03:26:15 | × | aplainzet quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit) |
| 03:26:30 | <ski> | better use direct recursion version here, rather than an accumulator |
| 03:26:38 | × | Sheilong quits (uid293653@gateway/web/irccloud.com/x-vldvpjxmmaehkxbx) () |
| 03:27:23 | × | elliott__ quits (~elliott@pool-100-36-54-163.washdc.fios.verizon.net) (Ping timeout: 240 seconds) |
| 03:27:47 | × | adamwespiser quits (~adam_wesp@209.6.42.110) (Ping timeout: 240 seconds) |
| 03:28:03 | × | bspar_ quits (~bspar@2604:a880:0:1010::776:e001) (Remote host closed the connection) |
| 03:28:11 | × | Hijiri_ quits (~Hijiri@104.236.61.10) (Ping timeout: 240 seconds) |
| 03:28:18 | → | Hijiri joins (~Hijiri@104.236.61.10) |
| 03:28:33 | <ski> | in general, avoid left-nesting calls to `++', like `((([] ++ x0) ++ x1) ++ x2) ++ x3', which is what happens with the accumulator, in your definition |
| 03:28:34 | × | Sgeo quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 03:28:35 | × | mantovani_ quits (~mantovani@104.131.207.121) (Ping timeout: 240 seconds) |
| 03:28:48 | × | mirrorbird quits (~psutcliff@m83-187-173-228.cust.tele2.se) (Quit: Leaving) |
| 03:29:00 | → | mantovani joins (~mantovani@104.131.207.121) |
| 03:29:09 | → | bspar joins (~bspar@2604:a880:0:1010::776:e001) |
| 03:29:35 | <ski> | `x2' will there be traversed once, `x1' twice, `x0' thrice .. hence this ends up quadratic, rather than the expected linear |
| 03:31:01 | <ski> | (also, if you'd like to, read about the "Schlemiel the Painter" algorithm, by Joel Spolsky, at <https://www.joelonsoftware.com/2001/12/11/back-to-basics/>) |
| 03:31:19 | → | aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net) |
| 03:32:01 | → | _vaibhavingale_ joins (~Adium@203.188.228.27) |
| 03:34:56 | → | justan0theruser joins (~justanoth@unaffiliated/justanotheruser) |
| 03:36:42 | × | justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds) |
| 03:36:55 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 03:41:47 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 03:42:10 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 03:42:47 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 03:47:44 | → | shad0w_ joins (~shad0w_@160.202.37.157) |
| 03:48:57 | × | alexm_ quits (~alexm_@161.8.233.138) (Ping timeout: 272 seconds) |
| 03:51:29 | × | xff0x quits (~fox@2001:1a81:52cd:2700:30eb:9359:b5d6:26a0) (Ping timeout: 272 seconds) |
| 03:52:08 | → | xff0x joins (~fox@2001:1a81:52cd:2700:e58f:2a70:d271:af84) |
| 03:56:01 | × | Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
| 03:56:22 | → | Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) |
| 04:00:27 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection) |
| 04:01:23 | → | crobbins_ joins (~crobbins@2601:2c1:380:ec40:d96c:72da:8879:7899) |
| 04:01:37 | × | polyphem quits (~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Ping timeout: 272 seconds) |
| 04:03:31 | × | ryansmccoy quits (~ryansmcco@193.37.254.27) (Ping timeout: 272 seconds) |
| 04:03:50 | × | ahri quits (~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds)) |
| 04:03:55 | → | ryansmccoy joins (~ryansmcco@193.37.254.27) |
| 04:04:07 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:80f3:e48e:7123:1353) (Ping timeout: 260 seconds) |
| 04:04:27 | → | ahri joins (~ahri@178.209.40.84) |
| 04:05:14 | → | zacts joins (~zacts@dragora/developer/zacts) |
| 04:06:02 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 04:07:19 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds) |
| 04:07:19 | → | day_ joins (~Unknown@unaffiliated/day) |
| 04:08:01 | × | asan quits (~yan4138@180.164.96.158) (Ping timeout: 264 seconds) |
| 04:08:17 | → | asan joins (~yan4138@124.78.5.33) |
| 04:09:59 | × | jedws quits (~jedws@2001:8003:337f:1b00:1449:7df0:4af3:7c20) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 04:11:14 | × | day quits (~Unknown@unaffiliated/day) (Ping timeout: 272 seconds) |
| 04:11:14 | day_ | is now known as day |
| 04:13:11 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection) |
| 04:13:36 | → | jedws joins (~jedws@2001:8003:337f:1b00:1449:7df0:4af3:7c20) |
| 04:14:56 | → | Rudd0^ joins (~Rudd0@185.189.115.98) |
| 04:16:06 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 04:17:29 | → | mu joins (~mu@unaffiliated/mu) |
| 04:18:36 | × | Rudd0 quits (~Rudd0@185.189.115.108) (Ping timeout: 260 seconds) |
| 04:20:35 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 04:23:33 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving) |
| 04:24:57 | × | bloodstalker quits (~bloodstal@46.166.187.178) (Remote host closed the connection) |
| 04:26:37 | × | alexm_ quits (~alexm_@161.8.233.138) (Ping timeout: 265 seconds) |
| 04:26:37 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 04:26:41 | → | falafel_ joins (~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) |
| 04:28:34 | → | olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber) |
| 04:29:06 | × | Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
| 04:29:09 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 04:29:27 | → | Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) |
| 04:29:54 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 04:32:38 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 04:34:30 | → | mpereira joins (~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) |
| 04:34:35 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 04:35:56 | × | shad0w_ quits (~shad0w_@160.202.37.157) (Ping timeout: 272 seconds) |
| 04:36:57 | hackage | antlr-haskell 0.1.0.1 - A Haskell implementation of the ANTLR top-down parser generator https://hackage.haskell.org/package/antlr-haskell-0.1.0.1 (KarlCronburg) |
| 04:37:25 | × | jneira_ quits (~jneira@80.30.101.206) (Ping timeout: 246 seconds) |
| 04:38:15 | → | jneira_ joins (~jneira@194.red-176-83-80.dynamicip.rima-tde.net) |
| 04:39:33 | → | buckworst joins (~nate@125.161.70.37) |
| 04:43:12 | × | mpereira quits (~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) (Ping timeout: 260 seconds) |
| 04:48:08 | × | Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
| 04:48:32 | → | Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) |
| 04:48:49 | × | macrover quits (~macrover@ip70-189-231-35.lv.lv.cox.net) (Ping timeout: 264 seconds) |
| 04:51:02 | × | buckworst quits (~nate@125.161.70.37) (Quit: WeeChat 2.9) |
| 04:51:08 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 04:51:54 | × | oisdk quits (~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 04:54:18 | → | nineonin_ joins (~nineonine@216-19-190-182.dyn.novuscom.net) |
| 04:57:48 | × | nineonine quits (~nineonine@50.216.62.2) (Ping timeout: 260 seconds) |
| 05:01:03 | × | interruptinuse quits (~interrupt@girl.mrtheplague.net) (Quit: ZNC - https://znc.in -- bye bye!) |
| 05:01:37 | × | falafel_ quits (~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Ping timeout: 260 seconds) |
| 05:04:26 | → | mmohammadi9812 joins (~mmohammad@188.210.98.27) |
| 05:07:57 | hackage | graphql-client 1.1.0 - A client for Haskell programs to query a GraphQL API https://hackage.haskell.org/package/graphql-client-1.1.0 (leapyear) |
| 05:08:51 | → | johnw_ joins (~johnw@haskell/developer/johnw) |
| 05:08:52 | × | johnw quits (~johnw@haskell/developer/johnw) (Ping timeout: 260 seconds) |
| 05:09:56 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 260 seconds) |
| 05:10:05 | → | interruptinuse joins (~interrupt@girl.mrtheplague.net) |
| 05:10:16 | → | bahamas joins (~lucian@unaffiliated/bahamas) |
| 05:13:01 | × | jneira_ quits (~jneira@194.red-176-83-80.dynamicip.rima-tde.net) (Read error: Connection reset by peer) |
| 05:13:07 | × | justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) () |
| 05:13:31 | → | Kaeipi joins (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) |
| 05:14:15 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 05:14:21 | × | Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
| 05:17:12 | × | jedws quits (~jedws@2001:8003:337f:1b00:1449:7df0:4af3:7c20) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 05:17:27 | × | bpalmer1 quits (~bpalmer@185.204.1.185) (Remote host closed the connection) |
| 05:17:46 | × | alexm_ quits (~alexm_@161.8.233.138) (Remote host closed the connection) |
| 05:19:16 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
| 05:19:31 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 05:20:20 | × | xwvvvvwx quits (~xwvvvvwx@185.213.155.160) (Quit: ZNC 1.8.1 - https://znc.in) |
| 05:20:29 | → | xwvvvvwx joins (~xwvvvvwx@185.213.155.160) |
| 05:21:58 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 05:22:07 | → | irc_user joins (uid423822@gateway/web/irccloud.com/x-jnkonfduxhfcxiya) |
| 05:22:46 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 05:22:48 | × | sand_dull quits (~theuser@62.182.99.37) (Ping timeout: 272 seconds) |
| 05:23:45 | × | alexm_ quits (~alexm_@161.8.233.138) (Ping timeout: 240 seconds) |
| 05:25:48 | × | zacts quits (~zacts@dragora/developer/zacts) (Ping timeout: 260 seconds) |
| 05:26:14 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 05:26:22 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 05:26:45 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 05:28:00 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 05:31:15 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 05:32:40 | × | danso quits (~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer) |
| 05:33:28 | → | danso joins (~dan@107-190-41-58.cpe.teksavvy.com) |
| 05:34:22 | × | asan quits (~yan4138@124.78.5.33) (Ping timeout: 256 seconds) |
| 05:34:42 | → | asan joins (~yan4138@58.37.8.8) |
| 05:36:05 | × | alexm_ quits (~alexm_@161.8.233.138) (Remote host closed the connection) |
| 05:38:19 | × | darjeeling_ quits (~darjeelin@122.245.123.72) (Ping timeout: 246 seconds) |
| 05:38:39 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 05:38:46 | → | darjeeling_ joins (~darjeelin@122.245.123.72) |
| 05:38:48 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 05:39:13 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 05:42:58 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 05:46:08 | → | supercoven joins (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) |
| 05:46:09 | → | bloodstalker joins (~bloodstal@46.166.187.178) |
| 05:52:45 | → | kenran joins (~maier@b2b-37-24-119-190.unitymedia.biz) |
| 05:52:51 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 05:53:49 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 05:55:32 | × | justan0theruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds) |
| 05:57:30 | × | crobbins_ quits (~crobbins@2601:2c1:380:ec40:d96c:72da:8879:7899) (Remote host closed the connection) |
| 05:58:27 | × | supercoven quits (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (Max SendQ exceeded) |
| 05:58:40 | → | supercoven joins (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) |
| 06:01:22 | → | shad0w_ joins (~shad0w_@160.202.37.157) |
| 06:03:04 | <MarcelineVQ> | What would you call patterns like Just{} ? |
| 06:03:26 | → | danvet_ joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) |
| 06:04:01 | × | ahri quits (~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds)) |
| 06:04:10 | <opqdonut> | constructor-only patterns? |
| 06:04:23 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection) |
| 06:04:34 | → | danvet joins (~danvet@2a02:168:57f4:0:5f80:650d:c6e6:3453) |
| 06:04:43 | → | ahri joins (~ahri@178.209.40.84) |
| 06:05:04 | <MarcelineVQ> | exactly, is that what you'd call them? |
| 06:06:08 | → | shatriff joins (~vitaliish@176.52.219.10) |
| 06:07:43 | × | danso quits (~dan@107-190-41-58.cpe.teksavvy.com) (Quit: WeeChat 2.9) |
| 06:08:28 | <opqdonut> | yeah |
| 06:15:20 | → | ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) |
| 06:15:20 | × | ahmr88 quits (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection) |
| 06:15:56 | → | mpereira joins (~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) |
| 06:20:28 | → | saiba_suika2 joins (~saiba_sui@107.173.73.44) |
| 06:20:37 | × | saiba_suika2 quits (~saiba_sui@107.173.73.44) (Remote host closed the connection) |
| 06:23:56 | × | saiba_suika quits (~saiba_sui@cpe-72-231-228-139.buffalo.res.rr.com) (Ping timeout: 258 seconds) |
| 06:26:17 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye) |
| 06:29:23 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 06:30:07 | × | lambda-11235 quits (~lambda-11@108-237-120-58.lightspeed.frokca.sbcglobal.net) (Quit: Bye) |
| 06:31:45 | × | asan quits (~yan4138@58.37.8.8) (Ping timeout: 240 seconds) |
| 06:32:03 | → | asan joins (~yan4138@58.37.8.8) |
| 06:35:55 | → | ggole joins (~ggole@2001:8003:8119:7200:4cc1:e316:a6d6:5aec) |
| 06:37:47 | → | coot joins (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) |
| 06:39:21 | → | dhouthoo joins (~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be) |
| 06:39:24 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 06:40:17 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 06:41:02 | × | mounty quits (~mounty@2001:8000:2f59:0:4326:3e7a:dda9:8da8) (Ping timeout: 260 seconds) |
| 06:41:10 | → | knupfer joins (~Thunderbi@87.123.206.34) |
| 06:45:27 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 06:46:28 | hackage | hablog 0.7.0 - A blog system https://hackage.haskell.org/package/hablog-0.7.0 (gilmi) |
| 06:47:38 | → | Zeb1 joins (3ed8d095@aftr-62-216-208-149.dynamic.mnet-online.de) |
| 06:50:43 | × | nbloomf quits (~nbloomf@2600:1700:83e0:1f40:d92:3fe8:d989:c32a) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 06:50:54 | → | kermit1 joins (~kermit@178.162.209.171) |
| 06:53:21 | → | polyrain joins (~polyrain@203.51.166.163) |
| 06:54:20 | → | banner_ joins (~banner@116-255-17-140.ip4.superloop.com) |
| 06:54:57 | <dminuoso> | MarcelineVQ: The Haskell report formally calls them labeled patterns in the general case. |
| 06:55:21 | × | banner_ quits (~banner@116-255-17-140.ip4.superloop.com) (Client Quit) |
| 06:56:36 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 06:57:53 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection) |
| 07:01:02 | <glguy> | > isJust Just{} |
| 07:01:04 | <lambdabot> | True |
| 07:01:13 | → | cfricke joins (~cfricke@unaffiliated/cfricke) |
| 07:01:15 | <glguy> | > isJust Nothing {} |
| 07:01:17 | <lambdabot> | False |
| 07:01:56 | <glguy> | Not really pattern-specific. It's record notation |
| 07:02:02 | × | ruffianeo quits (~ruffianeo@p200300e5271f093e83bdb6806dd36cfc.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 07:04:00 | × | ahri quits (~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds)) |
| 07:04:44 | → | ahri joins (~ahri@178.209.40.84) |
| 07:04:56 | × | balbirs quits (~balbirs__@ozlabs.org) (Quit: ZNC 1.7.5+deb1 - https://znc.in) |
| 07:05:41 | → | balbirs joins (~balbirs__@ozlabs.org) |
| 07:05:49 | <dminuoso> | Mmm, this does seem a bit inconsistent. Usually a pattern matches values constructed in the same fashion |
| 07:05:59 | <dminuoso> | But Just{} does *not* match values exactly constructed by Just{} |
| 07:07:36 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 07:12:05 | × | sagax quits (~sagax_nb@213.138.71.146) (Read error: Connection reset by peer) |
| 07:12:14 | <solonarv> | this is already not true for record patterns |
| 07:12:25 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 07:12:43 | <solonarv> | @let data Two = Two { two1 :: Int, two2 :: Int } deriving (Show, Eq, Ord) |
| 07:12:45 | <lambdabot> | Defined. |
| 07:13:11 | <solonarv> | > case Two { two1 = 1, two2 = 2 } of Two {two1 = 1} -> "ok" |
| 07:13:13 | <lambdabot> | "ok" |
| 07:14:50 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 07:15:19 | × | alexm_ quits (~alexm_@161.8.233.138) (Remote host closed the connection) |
| 07:15:41 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 07:17:11 | × | Turmfalke quits (~user@unaffiliated/siracusa) (Quit: Bye!) |
| 07:17:39 | → | oish joins (~charlie@228.25.169.217.in-addr.arpa) |
| 07:17:48 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Client Quit) |
| 07:19:13 | × | mpereira quits (~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) (Ping timeout: 272 seconds) |
| 07:21:33 | → | Sanchayan joins (~Sanchayan@171.76.101.244) |
| 07:21:55 | <Axman6> | > let x = x { two1 = 1 } in case x of Two{two1 = 1} -> "ok" |
| 07:21:58 | <lambdabot> | "*Exception: <<loop>> |
| 07:22:12 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 07:23:27 | → | Dablyon joins (~godel@173.171.157.121) |
| 07:27:27 | × | danvet quits (~danvet@2a02:168:57f4:0:5f80:650d:c6e6:3453) (Quit: Leaving) |
| 07:28:06 | × | mmohammadi9812 quits (~mmohammad@188.210.98.27) (Quit: I quit (╯°□°)╯︵ ┻━┻) |
| 07:31:15 | → | mirrorbird joins (~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) |
| 07:31:38 | <solonarv> | interesting, I sort of expected x = Two 1 _|_ here |
| 07:34:03 | → | raichoo joins (~raichoo@213.240.178.58) |
| 07:36:52 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 07:38:25 | → | alexm__ joins (~alexm_@161.8.233.138) |
| 07:38:28 | GyroW_ | is now known as GyroW |
| 07:38:30 | × | GyroW quits (~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be) (Changing host) |
| 07:38:30 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 07:39:04 | → | chaosmasttter joins (~chaosmast@p200300c4a7105f013091658b0e650c79.dip0.t-ipconnect.de) |
| 07:39:35 | → | TooDifficult joins (~TooDiffic@139.59.59.230) |
| 07:39:43 | × | alexm_ quits (~alexm_@161.8.233.138) (Read error: Connection reset by peer) |
| 07:39:44 | × | alexm__ quits (~alexm_@161.8.233.138) (Read error: Connection reset by peer) |
| 07:40:14 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 07:40:53 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 07:40:54 | × | alexm_ quits (~alexm_@161.8.233.138) (Read error: Connection reset by peer) |
| 07:40:57 | hackage | sized 0.8.0.0 - Sized sequence data-types https://hackage.haskell.org/package/sized-0.8.0.0 (HiromiIshii) |
| 07:41:21 | GyroW | is now known as GyroW_ |
| 07:41:56 | GyroW_ | is now known as GyroW__ |
| 07:42:17 | GyroW__ | is now known as GyroW |
| 07:43:27 | hackage | mmsyn6ukr 0.8.1.0 - A musical instrument synthesizer or a tool for Ukrainian language listening https://hackage.haskell.org/package/mmsyn6ukr-0.8.1.0 (OleksandrZhabenko) |
| 07:43:34 | → | John20 joins (~John@82.46.59.122) |
| 07:45:13 | × | Dablyon quits (~godel@173.171.157.121) (Ping timeout: 260 seconds) |
| 07:45:58 | → | mpereira joins (~mpereira@2a02:810d:f40:d96:5151:9344:10a3:da64) |
| 07:46:48 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 07:47:23 | → | sagax joins (~sagax_nb@213.138.71.146) |
| 07:48:28 | → | chele joins (~chele@ip5b416ea2.dynamic.kabel-deutschland.de) |
| 07:50:42 | × | xerox_ quits (~xerox@unaffiliated/xerox) (Quit: leaving) |
| 07:51:08 | × | irc_user quits (uid423822@gateway/web/irccloud.com/x-jnkonfduxhfcxiya) (Quit: Connection closed for inactivity) |
| 07:52:00 | × | mirrorbird quits (~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Quit: Leaving) |
| 07:55:00 | → | kritzefitz joins (~kritzefit@fw-front.credativ.com) |
| 07:55:13 | → | Tops2 joins (~Tobias@dyndsl-095-033-024-124.ewe-ip-backbone.de) |
| 07:56:19 | × | polyrain quits (~polyrain@203.51.166.163) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 07:57:01 | × | berberman quits (~berberman@2408:8207:2565:18d0:584e:a9ff:fe9b:d3fe) (Quit: ZNC 1.7.5 - https://znc.in) |
| 07:57:41 | → | berberman joins (~berberman@2408:8207:2565:18d0::a44) |
| 07:57:58 | × | Tops21 quits (~Tobias@dyndsl-095-033-089-153.ewe-ip-backbone.de) (Ping timeout: 272 seconds) |
| 07:58:13 | → | crobbins joins (~crobbins@2601:2c1:380:ec40:d96c:72da:8879:7899) |
| 07:58:52 | × | bahamas quits (~lucian@unaffiliated/bahamas) (Ping timeout: 260 seconds) |
| 07:58:57 | hackage | phonetic-languages-ukrainian 0.2.1.0 - Prepares Ukrainian text to be used as a phonetic language text https://hackage.haskell.org/package/phonetic-languages-ukrainian-0.2.1.0 (OleksandrZhabenko) |
| 08:02:55 | × | shad0w_ quits (~shad0w_@160.202.37.157) (Ping timeout: 272 seconds) |
| 08:03:16 | → | Dolly joins (585fd1fd@ti0203q160-5312.bb.online.no) |
| 08:03:17 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:d96c:72da:8879:7899) (Ping timeout: 260 seconds) |
| 08:03:52 | × | tzh quits (~tzh@2601:448:c500:5300::82b3) (Quit: zzz) |
| 08:08:49 | × | kritzefitz quits (~kritzefit@fw-front.credativ.com) (Remote host closed the connection) |
| 08:11:45 | × | oish quits (~charlie@228.25.169.217.in-addr.arpa) (Ping timeout: 240 seconds) |
| 08:12:46 | × | atraii quits (~atraii@c-98-32-64-84.hsd1.ut.comcast.net) (Quit: ZNC 1.7.5 - https://znc.in) |
| 08:12:47 | × | adamwesp_ quits (~adam_wesp@209.6.42.110) (Remote host closed the connection) |
| 08:13:08 | → | atraii joins (~atraii@c-98-32-64-84.hsd1.ut.comcast.net) |
| 08:13:25 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 08:13:54 | → | oish joins (~charlie@228.25.169.217.in-addr.arpa) |
| 08:14:09 | → | adamwespiser joins (~adam_wesp@209.6.42.110) |
| 08:17:03 | → | dhil joins (~dhil@11.29.39.217.dyn.plus.net) |
| 08:21:44 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 08:23:21 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 08:25:27 | hackage | uniqueness-periods-vector-examples 0.6.0.0 - Examples of usage for the uniqueness-periods-vector series of packages https://hackage.haskell.org/package/uniqueness-periods-vector-examples-0.6.0.0 (OleksandrZhabenko) |
| 08:28:02 | → | LKoen joins (~LKoen@81.255.219.130) |
| 08:28:16 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 08:31:11 | × | Axman6 quits (~Axman6@pdpc/supporter/student/Axman6) (Remote host closed the connection) |
| 08:31:30 | → | Axman6 joins (~Axman6@pdpc/supporter/student/Axman6) |
| 08:32:21 | × | asan quits (~yan4138@58.37.8.8) (Ping timeout: 258 seconds) |
| 08:33:24 | × | Volt_ quits (~Volt_@c-73-145-164-70.hsd1.mi.comcast.net) (Quit: ) |
| 08:33:49 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 08:33:59 | × | ahri quits (~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds)) |
| 08:34:17 | → | asan joins (~yan4138@124.78.124.81) |
| 08:34:34 | → | ahri joins (~ahri@178.209.40.84) |
| 08:38:42 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 08:39:44 | → | esp32_prog joins (yoann@gateway/vpn/protonvpn/esp32prog/x-46565127) |
| 08:41:13 | × | Neuromancer quits (~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 260 seconds) |
| 08:42:17 | × | hnOsmium0001 quits (uid453710@gateway/web/irccloud.com/x-cqejdnrmfbrsuxpt) (Quit: Connection closed for inactivity) |
| 08:44:04 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 08:45:53 | × | sw1nn quits (~sw1nn@2a00:23c6:2385:3a00:6623:d71f:7a29:28d2) (Quit: WeeChat 2.9) |
| 08:48:05 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 08:48:19 | → | wonko7 joins (~wonko7@2a01:e35:2ffb:7040:8c5f:831a:4acc:45dd) |
| 08:49:16 | × | drbean quits (~drbean@TC210-63-209-146.static.apol.com.tw) (Ping timeout: 272 seconds) |
| 08:50:19 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 08:54:07 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 08:54:33 | → | Saten-san joins (~Saten-san@ip-213-49-123-127.dsl.scarlet.be) |
| 08:55:23 | → | thc202 joins (~thc202@unaffiliated/thc202) |
| 08:55:30 | → | cosimone joins (~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) |
| 08:55:32 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 08:57:19 | × | Sgeo_ quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer) |
| 08:58:11 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 09:00:02 | × | kermit1 quits (~kermit@178.162.209.171) () |
| 09:03:21 | → | Guest_73 joins (968f72e6@230.114.143.150.dyn.plus.net) |
| 09:03:47 | × | aarvar quits (~foewfoiew@50.35.43.33) (Ping timeout: 258 seconds) |
| 09:04:11 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 09:04:33 | × | oish quits (~charlie@228.25.169.217.in-addr.arpa) (Ping timeout: 260 seconds) |
| 09:04:35 | → | filwisher joins (~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) |
| 09:06:08 | → | oish joins (~charlie@228.25.169.217.in-addr.arpa) |
| 09:06:19 | → | mounty joins (~mounty@n49-198-160-249.mrk1.qld.optusnet.com.au) |
| 09:07:32 | × | Zeb1 quits (3ed8d095@aftr-62-216-208-149.dynamic.mnet-online.de) (Remote host closed the connection) |
| 09:07:37 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 246 seconds) |
| 09:08:40 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds) |
| 09:11:17 | → | cpressey joins (~cpressey@79-72-202-6.dynamic.dsl.as9105.com) |
| 09:13:28 | → | carlomagno joins (~cararell@inet-hqmc02-o.oracle.com) |
| 09:13:55 | × | asan quits (~yan4138@124.78.124.81) (Remote host closed the connection) |
| 09:13:55 | × | mounty quits (~mounty@n49-198-160-249.mrk1.qld.optusnet.com.au) (Ping timeout: 246 seconds) |
| 09:14:24 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 09:14:27 | × | Saten-san quits (~Saten-san@ip-213-49-123-127.dsl.scarlet.be) (Quit: WeeChat 2.8) |
| 09:14:35 | → | mounty joins (~mounty@mail.nextgenerationvoice.com.au) |
| 09:15:14 | → | DavidEichmann joins (~david@43.240.198.146.dyn.plus.net) |
| 09:16:07 | × | cosimone quits (~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Read error: Connection reset by peer) |
| 09:16:48 | × | elliott_ quits (~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) (Ping timeout: 260 seconds) |
| 09:16:50 | → | cosimone joins (~cosimone@93-47-228-249.ip115.fastwebnet.it) |
| 09:17:08 | × | carlomagno1 quits (~cararell@inet-hqmc01-o.oracle.com) (Ping timeout: 272 seconds) |
| 09:19:02 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 09:19:35 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 09:21:47 | × | TooDifficult quits (~TooDiffic@139.59.59.230) (Quit: TooDifficult) |
| 09:21:55 | → | sw1nn joins (~sw1nn@host86-157-211-183.range86-157.btcentralplus.com) |
| 09:22:32 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 09:24:16 | → | asan joins (~yan4138@58.37.8.8) |
| 09:24:30 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 09:26:54 | → | elliott_ joins (~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) |
| 09:27:55 | → | shad0w_ joins (~shad0w_@160.202.37.157) |
| 09:28:45 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 09:29:28 | → | acidjnk_new2 joins (~acidjnk@p200300d0c723780230ffb87e65cc7e0f.dip0.t-ipconnect.de) |
| 09:30:45 | × | asan quits (~yan4138@58.37.8.8) (Ping timeout: 240 seconds) |
| 09:32:43 | → | asan joins (~yan4138@124.78.5.33) |
| 09:33:45 | → | justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311) |
| 09:34:08 | <justsomeguy> | Is there a function like (!!) that also works for negative indices? |
| 09:37:24 | <Rembane> | justsomeguy: When you do let xs = [1,2,3,4] in xs !! (-2), what result do you expect? |
| 09:37:34 | <justsomeguy> | 3 |
| 09:37:41 | × | Guest_73 quits (968f72e6@230.114.143.150.dyn.plus.net) (Remote host closed the connection) |
| 09:38:17 | <solonarv> | ah, indexing from the other end like python does? |
| 09:38:24 | → | breezykermo joins (~breezyker@p200300ed5f114200c95d7bbe0250101c.dip0.t-ipconnect.de) |
| 09:38:50 | <Rembane> | justsomeguy: You can do let f i xs = xs !! (length xs + i) |
| 09:38:56 | <Rembane> | justsomeguy: But it's incredibly expensive. |
| 09:38:58 | <Jajik> | then reverse it and use (!!) . abs, but the list is not the best structure for that |
| 09:39:28 | <justsomeguy> | Should I be using Data.Array, instead? (...and does it support negative indices?) |
| 09:39:56 | <justsomeguy> | solonarv: Exactly. I had pythons subscript notation in mind. |
| 09:39:56 | <solonarv> | if you want to index to arbitrary positions (especially near the end), you probably shouldn't be using lists, yes |
| 09:40:06 | <MarcelineVQ> | if you need arbitrary indexing vector or array will serve you better, on a list of 4 items I wouldn't sweat the small stuff |
| 09:40:11 | <Rembane> | justsomeguy: Use Data.Vector, it has a nicer API |
| 09:40:33 | <solonarv> | array or vector have efficient indexing (I recommend vector due to the nicer API, especially if you only care about Int indexes) |
| 09:40:52 | <solonarv> | it doesn't have this "wraparound" indexing but you can easily build it |
| 09:41:02 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:bc6f:f4f1:b8da:13b1) (Ping timeout: 260 seconds) |
| 09:41:57 | <solonarv> | xs !* n | n < 0 = xs ! (n + length xs) ; otherwise = xs ! n |
| 09:43:03 | × | plutoniix quits (~q@175.176.222.7) (Ping timeout: 260 seconds) |
| 09:44:56 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 09:49:05 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 09:49:30 | → | graf_blutwurst joins (~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07) |
| 09:50:42 | × | olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 272 seconds) |
| 09:50:54 | <phadej> | what [1,2,3,4] !! -10 would do? |
| 09:51:24 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 09:51:27 | <phadej> | generally, I consider !! a smell in Haskell. |
| 09:53:17 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:572:c294:99c1:7d20) |
| 09:54:17 | × | Dolly quits (585fd1fd@ti0203q160-5312.bb.online.no) (Remote host closed the connection) |
| 09:54:23 | <MarcelineVQ> | that's the entire definition, modulo modulo |
| 09:55:47 | → | juuandyy joins (~juuandyy@90.166.144.65) |
| 09:55:49 | → | plutoniix joins (~q@175.176.222.7) |
| 09:55:52 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 09:56:40 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 09:57:16 | × | juuandyy quits (~juuandyy@90.166.144.65) (Client Quit) |
| 09:59:12 | → | mirrorbird joins (~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) |
| 10:00:02 | → | Dolly joins (585fd1fd@ti0203q160-5312.bb.online.no) |
| 10:00:46 | → | bahamas joins (~lucian@unaffiliated/bahamas) |
| 10:02:33 | × | graf_blutwurst quits (~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07) (Remote host closed the connection) |
| 10:02:36 | → | olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber) |
| 10:03:26 | × | plutoniix quits (~q@175.176.222.7) (Quit: Leaving) |
| 10:03:33 | → | graf_blutwurst joins (~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07) |
| 10:04:12 | → | xerox_ joins (~xerox@unaffiliated/xerox) |
| 10:05:57 | × | acidjnk_new2 quits (~acidjnk@p200300d0c723780230ffb87e65cc7e0f.dip0.t-ipconnect.de) (Read error: Connection reset by peer) |
| 10:10:18 | <maerwald> | there's no forkFinally equivalent in async? |
| 10:11:15 | × | dhil quits (~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 258 seconds) |
| 10:13:22 | × | adamwespiser quits (~adam_wesp@209.6.42.110) (Remote host closed the connection) |
| 10:13:29 | × | shad0w_ quits (~shad0w_@160.202.37.157) (Remote host closed the connection) |
| 10:13:39 | × | shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection) |
| 10:13:45 | × | berberman quits (~berberman@2408:8207:2565:18d0::a44) (Quit: ZNC 1.7.5 - https://znc.in) |
| 10:13:54 | → | adamwespiser joins (~adam_wesp@209.6.42.110) |
| 10:13:55 | → | shatriff joins (~vitaliish@176.52.219.10) |
| 10:14:24 | → | berberman joins (~berberman@2408:8207:2565:18d0::a44) |
| 10:15:58 | × | graf_blutwurst quits (~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07) (Remote host closed the connection) |
| 10:16:35 | → | graf_blutwurst joins (~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07) |
| 10:17:09 | × | graf_blutwurst quits (~user@2a02:168:49bc:0:c5c0:f87b:998c:4a07) (Remote host closed the connection) |
| 10:18:34 | × | adamwespiser quits (~adam_wesp@209.6.42.110) (Ping timeout: 272 seconds) |
| 10:20:42 | → | graf_blutwurst joins (~user@2a02:168:49bc:0:912e:27da:c3bb:51ac) |
| 10:20:53 | × | cpressey quits (~cpressey@79-72-202-6.dynamic.dsl.as9105.com) (Quit: WeeChat 1.9.1) |
| 10:21:24 | × | Kaeipi quits (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
| 10:21:27 | hackage | Z-IO 0.1.1.2 - Simple and high performance IO toolkit for Haskell https://hackage.haskell.org/package/Z-IO-0.1.1.2 (winterland) |
| 10:21:28 | → | Merfont joins (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) |
| 10:21:39 | × | toorevitimirp quits (~tooreviti@117.182.182.201) (Remote host closed the connection) |
| 10:25:19 | → | justmay1 joins (~justmay@178.239.168.171) |
| 10:26:46 | × | Sanchayan quits (~Sanchayan@171.76.101.244) (Quit: leaving) |
| 10:29:02 | × | bahamas quits (~lucian@unaffiliated/bahamas) (Ping timeout: 256 seconds) |
| 10:30:03 | × | ChaiTRex quits (~ChaiTRex@gateway/tor-sasl/chaitrex) (Ping timeout: 240 seconds) |
| 10:30:21 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:32:35 | → | ChaiTRex joins (~ChaiTRex@gateway/tor-sasl/chaitrex) |
| 10:34:37 | → | vritser joins (~user@103.6.84.82) |
| 10:35:12 | ← | vritser parts (~user@103.6.84.82) ("ERC (IRC client for Emacs 28.0.50)") |
| 10:35:28 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
| 10:36:53 | → | Saten-san joins (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) |
| 10:37:41 | × | asan quits (~yan4138@124.78.5.33) (Ping timeout: 256 seconds) |
| 10:38:03 | → | asan joins (~yan4138@124.78.124.81) |
| 10:40:14 | → | Mahdi joins (5bfb1927@91.251.25.39) |
| 10:41:41 | × | Mahdi quits (5bfb1927@91.251.25.39) (Remote host closed the connection) |
| 10:42:31 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:572:c294:99c1:7d20) (Ping timeout: 272 seconds) |
| 10:43:22 | dcoutts_ | is now known as dcoutts |
| 10:43:42 | × | chaosmasttter quits (~chaosmast@p200300c4a7105f013091658b0e650c79.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 10:43:53 | × | graf_blutwurst quits (~user@2a02:168:49bc:0:912e:27da:c3bb:51ac) (Remote host closed the connection) |
| 10:45:41 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 10:46:00 | → | graf_blutwurst joins (~user@2a02:168:49bc:0:3913:91f3:2eab:769) |
| 10:47:01 | × | rprije quits (~rprije@27.143.220.203.dial.dynamic.acc01-myal-dub.comindico.com.au) (Ping timeout: 264 seconds) |
| 10:49:46 | → | barzo joins (~sosal@95.70.181.226) |
| 10:50:14 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds) |
| 10:54:07 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:4407:fff6:2258:7a65) |
| 10:55:07 | <maralorn> | That reminds me of the horrible time I worked with a custom language for evaluating measurements of certain measurement devices written by the vendor. In there arrays where the primary data structure for stuff like time series of an oscilloscope. |
| 10:56:03 | <maralorn> | I lost at least on day to debugging, before I learnad that their indexing operator gave you the last element of an array when you gave it an out-of-bounds index (silently without any error message). |
| 10:57:01 | <maralorn> | I don‘t want to know how many published experimental results are secretly wrong because of that crazy language design decision. /o\ |
| 10:59:33 | × | bloodstalker quits (~bloodstal@46.166.187.178) (Ping timeout: 258 seconds) |
| 11:00:52 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 11:01:14 | → | dhil joins (~dhil@11.29.39.217.dyn.plus.net) |
| 11:03:24 | × | ahri quits (~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds)) |
| 11:03:26 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:03:55 | → | ahri joins (~ahri@178.209.40.84) |
| 11:05:47 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 11:06:29 | → | bloodstalker joins (~bloodstal@46.166.187.178) |
| 11:10:10 | → | hyiltiz-M joins (hyiltizkde@gateway/shell/kde/matrix/x-nddutmibnpfeonkf) |
| 11:10:33 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 11:11:32 | × | wei2912 quits (~wei2912@unaffiliated/wei2912) (Quit: Lost terminal) |
| 11:13:56 | × | howdoi quits (uid224@gateway/web/irccloud.com/x-pmfgngzmblrpwuzc) (Quit: Connection closed for inactivity) |
| 11:14:16 | × | Saten-san quits (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8) |
| 11:16:02 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 11:16:34 | <dminuoso> | Mmm, I wish more code would be written MonadIO polymorphic. :( |
| 11:17:00 | <dminuoso> | The amount of liftIO sprinkling is getting somewhat annoying |
| 11:17:05 | → | catkiki joins (~kiki@m90-134-157-227.cust.tele2.hr) |
| 11:17:34 | × | catkiki quits (~kiki@m90-134-157-227.cust.tele2.hr) (Client Quit) |
| 11:18:32 | <kenran> | dminuoso: I second that... |
| 11:18:54 | × | tomku quits (~tomku@unaffiliated/tomku) (Ping timeout: 265 seconds) |
| 11:19:07 | → | catkiki joins (~catkiki@m90-134-157-227.cust.tele2.hr) |
| 11:20:45 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 11:22:42 | × | Dolly quits (585fd1fd@ti0203q160-5312.bb.online.no) (Remote host closed the connection) |
| 11:23:05 | × | p3n quits (~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1) (Remote host closed the connection) |
| 11:26:08 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 11:26:33 | × | graf_blutwurst quits (~user@2a02:168:49bc:0:3913:91f3:2eab:769) (Remote host closed the connection) |
| 11:28:09 | → | Neuromancer joins (~Neuromanc@unaffiliated/neuromancer) |
| 11:30:29 | → | hekkaidekapus_ joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 11:30:36 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
| 11:33:43 | × | hekkaidekapus quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds) |
| 11:36:12 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 11:39:53 | → | v_m_v joins (~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) |
| 11:40:54 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds) |
| 11:43:22 | × | asan quits (~yan4138@124.78.124.81) (Ping timeout: 246 seconds) |
| 11:44:17 | → | drbean joins (~drbean@TC210-63-209-157.static.apol.com.tw) |
| 11:46:09 | <maerwald> | don't use transformers |
| 11:46:11 | <maerwald> | :p |
| 11:46:22 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 11:46:47 | <[exa]> | isn't this "solved" in some of the alternative preludes? (rererebase?) |
| 11:46:54 | × | Stanley00 quits (~stanley00@unaffiliated/stanley00) () |
| 11:47:21 | fendor_ | is now known as fendor |
| 11:49:50 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 11:49:55 | × | dxld quits (~dxld@2a01:4f8:201:89ff:7479:df6a:7ab8:8305) (Remote host closed the connection) |
| 11:50:15 | → | dxld joins (~dxld@80-109-136-248.cable.dynamic.surfer.at) |
| 11:50:31 | <maerwald> | transformers look like an effects DLS, but they feel like an OOP pattern |
| 11:51:01 | <dminuoso> | maerwald: This has nothing to do with transformers. |
| 11:51:13 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds) |
| 11:51:27 | <maerwald> | how so? |
| 11:51:49 | <dminuoso> | [exa]: an alternative prelude would give you huge transitive dependency footprints if this is done widely |
| 11:51:56 | <dminuoso> | My beef is not just with base, but packages in general. |
| 11:52:10 | <maerwald> | why are you using liftIO if you don't have any transformers in your code |
| 11:52:20 | <fendor> | can I derive Monoid and Semigroup for a datatype where all fields are an instance of semigroup and monoid? |
| 11:52:33 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 11:53:31 | <dminuoso> | maerwald: You can write monads yourself too. |
| 11:53:48 | <phadej> | fendor: yes, look at semigroups Data.Semigroup.Generic |
| 11:54:10 | <fendor> | phadej, thanks! |
| 11:54:14 | <dminuoso> | fendor: generic-deriving has the facilities |
| 11:54:26 | <[exa]> | dminuoso: i said it's "solved" :] |
| 11:54:33 | <maerwald> | dminuoso: yes, you can write transformers yourself |
| 11:54:34 | <dminuoso> | heh fair |
| 11:55:16 | <maerwald> | but you don't seem to want to disclose what you're doing, so I'm not gonna pull it out of your nose :p |
| 11:55:27 | <dminuoso> | maerwald: A transformer is a higher order utility to transform monads into monads. If I just create a data type myself, Im not using any transformer, am IO? |
| 11:55:53 | <dminuoso> | Oh hah. That muscle memory tricked me into writing IO. |
| 11:56:32 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 11:57:57 | <maerwald> | dminuoso: you're writing an instance of MonadIO? Then you have a transformer |
| 11:59:17 | <dminuoso> | maerwald: `ReaderT e` is a transformer. Neither the type `ReaderT Env IO`, nor a type isomorphic to `ReaderT Env IO` is a transformer. |
| 11:59:23 | → | brewmarche joins (~brewmarch@2001:a61:2baa:3c01:21f7:ab4a:9163:f6e0) |
| 11:59:44 | <maerwald> | "Instances should satisfy the following laws, which state that liftIO is a transformer of monads" |
| 12:00:01 | × | justmay1 quits (~justmay@178.239.168.171) () |
| 12:01:10 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds) |
| 12:01:24 | <dminuoso> | Is that not rather a monad homomorphism? |
| 12:02:03 | <dminuoso> | The documentation seems just a bit off |
| 12:03:01 | → | zacts joins (~zacts@dragora/developer/zacts) |
| 12:06:41 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 12:07:25 | → | toorevitimirp joins (~tooreviti@117.182.182.201) |
| 12:08:26 | → | urodna joins (~urodna@unaffiliated/urodna) |
| 12:09:15 | → | sand_dull joins (~theuser@62.182.99.37) |
| 12:09:28 | × | John20 quits (~John@82.46.59.122) (Ping timeout: 260 seconds) |
| 12:10:16 | × | olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection) |
| 12:11:32 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 12:12:58 | → | shad0w_ joins (~shad0w_@160.202.37.157) |
| 12:13:04 | → | Erato joins (585fd1fd@ti0203q160-5312.bb.online.no) |
| 12:15:15 | <AWizzArd> | I am using the nix-shell to produce a development environment. But it’s only a thin layer, I still rely on my OS offering tools. So my shell is not --pure and I expect that for example Emacs is available. |
| 12:15:19 | <AWizzArd> | At some point though I want to use Nix (not necessarily its shell) to produce a Docker image for me. |
| 12:15:23 | <AWizzArd> | Now I want to use SSL and will need cacerts in the resulting docker images. In an Ubuntu-based Dockerfile I would apt install ca-certificates. |
| 12:15:27 | <AWizzArd> | So I will have to teach Nix that the standard certs are a dependency for my app. Doesn’t that mean that those certs will *also* be available in my nix-shell? |
| 12:16:24 | → | st8less joins (~st8less@2603:a060:11fe:0:b0dd:9d1b:8825:d363) |
| 12:16:54 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 12:19:41 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 12:20:41 | → | The20YearIRCloud joins (~The20Year@185.163.110.116) |
| 12:21:15 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 12:22:00 | × | bitmapper quits (uid464869@gateway/web/irccloud.com/x-fwqmglpbkrhstmiw) (Quit: Connection closed for inactivity) |
| 12:24:40 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
| 12:25:01 | × | Neuromancer quits (~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 246 seconds) |
| 12:25:27 | × | The20YearIRCloud quits (~The20Year@185.163.110.116) (Remote host closed the connection) |
| 12:25:46 | × | solonarv quits (~solonarv@anancy-653-1-63-100.w109-217.abo.wanadoo.fr) (Quit: Lost terminal) |
| 12:26:39 | hekkaidekapus_ | is now known as hekkaidekapus |
| 12:26:58 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 12:27:39 | → | solonarv joins (~solonarv@anancy-653-1-63-100.w109-217.abo.wanadoo.fr) |
| 12:27:45 | → | kuribas joins (~user@ptr-25vy0i80qh4go15t39e.18120a2.ip6.access.telenet.be) |
| 12:28:33 | → | ruffianeo joins (~ruffianeo@p200300e5271f09cf8b4d140a1c554ebc.dip0.t-ipconnect.de) |
| 12:28:52 | <kuribas> | how do I add a package in a ghci session? |
| 12:29:25 | <hekkaidekapus> | :set -package |
| 12:30:05 | × | ryansmccoy quits (~ryansmcco@193.37.254.27) (Ping timeout: 240 seconds) |
| 12:30:18 | <maerwald> | AWizzArd: there's a nixos channel |
| 12:30:46 | <AWizzArd> | maerwald: and this is where I just repeated/reframed this question :) |
| 12:30:56 | × | oxide quits (~lambda@unaffiliated/mclaren) (Ping timeout: 272 seconds) |
| 12:31:10 | → | ryansmccoy joins (~ryansmcco@193.37.254.27) |
| 12:31:35 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 12:31:36 | <AWizzArd> | maerwald: tho I also would like to hear/read inputs of other Haskellers about how they work with Nix. Is that style "correct"? Do you specify the deps you need, run a nix-shell and from IT then start your ide? |
| 12:31:37 | <kuribas> | hekkaidekapus: thanks, that works :) |
| 12:31:53 | <hekkaidekapus> | o/ |
| 12:31:59 | → | Mcdukc joins (~oleg@90.255.27.8) |
| 12:32:40 | → | oxide joins (~lambda@unaffiliated/mclaren) |
| 12:33:38 | × | sand_dull quits (~theuser@62.182.99.37) (Ping timeout: 256 seconds) |
| 12:33:47 | × | ahri quits (~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds)) |
| 12:34:37 | → | ahri joins (~ahri@178.209.40.84) |
| 12:34:38 | → | AlterEgo- joins (~ladew@124-198-158-163.dynamic.caiway.nl) |
| 12:36:59 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 12:41:37 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds) |
| 12:43:28 | × | coot quits (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 12:45:25 | × | noctux quits (~noctux@unaffiliated/noctux) (Ping timeout: 240 seconds) |
| 12:46:22 | × | AWizzArd quits (~code@unaffiliated/awizzard) (Ping timeout: 246 seconds) |
| 12:47:09 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 12:47:51 | × | brewmarche quits (~brewmarch@2001:a61:2baa:3c01:21f7:ab4a:9163:f6e0) (Quit: Leaving) |
| 12:47:57 | hackage | phonetic-languages-ukrainian 0.2.2.0 - Prepares Ukrainian text to be used as a phonetic language text https://hackage.haskell.org/package/phonetic-languages-ukrainian-0.2.2.0 (OleksandrZhabenko) |
| 12:51:49 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds) |
| 12:53:53 | → | Saten-san joins (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) |
| 12:54:33 | <Unhammer> | anyone using IHP here? I don't understand how to do a nested Include/fetchRelated |
| 12:55:05 | × | jespada quits (~jespada@90.254.241.6) (Ping timeout: 265 seconds) |
| 12:55:38 | → | John20 joins (~John@82.46.59.122) |
| 12:56:04 | <Unhammer> | say, in the First Project guide you wanted to add post categories, but show comments on the category index page – can one do something like `Include "comments" (Include "posts" Category)` ? |
| 12:56:19 | → | Aquazi joins (uid312403@gateway/web/irccloud.com/x-ppgacbnpjvcoyxiy) |
| 12:57:24 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 12:57:27 | → | jespada joins (~jespada@90.254.241.6) |
| 12:59:27 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 13:00:01 | → | cosimone_ joins (~cosimone@93-47-228-249.ip115.fastwebnet.it) |
| 13:00:27 | hackage | uniqueness-periods-vector-examples 0.6.1.0 - Examples of usage for the uniqueness-periods-vector series of packages https://hackage.haskell.org/package/uniqueness-periods-vector-examples-0.6.1.0 (OleksandrZhabenko) |
| 13:01:51 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 13:02:20 | × | cosimone quits (~cosimone@93-47-228-249.ip115.fastwebnet.it) (Ping timeout: 265 seconds) |
| 13:03:23 | → | cpressey joins (~cpressey@79-72-202-6.dynamic.dsl.as9105.com) |
| 13:04:04 | × | toorevitimirp quits (~tooreviti@117.182.182.201) (Ping timeout: 260 seconds) |
| 13:07:13 | → | bahamas joins (~lucian@unaffiliated/bahamas) |
| 13:07:29 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 13:10:12 | <maerwald> | is there an easy way to programmatically figure out if a package is on hackage? (preferably via the local index) |
| 13:10:23 | → | hyperisco joins (~hyperisco@d192-186-117-226.static.comm.cgocable.net) |
| 13:12:09 | <Unhammer> | hm, was easier to just define my own view type, e.g. a single category page is |
| 13:12:11 | <Unhammer> | data ShowView = ShowView { posts :: [Include "comments" Post], title :: Text } |
| 13:12:13 | <Unhammer> | and manually make that in ShowCategoryAction |
| 13:12:14 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 13:12:29 | → | bitmagie joins (~Thunderbi@200116b8065d560030e19c72082b8700.dip.versatel-1u1.de) |
| 13:13:37 | <fendor> | maerwald, there is hackage-index https://github.com/haskell-hvr/hackage-index, I *think* that used a local index. |
| 13:14:56 | <maerwald> | fendor: that package isn't on hackage :( |
| 13:15:11 | <int-e> | fendor: yeah looks like it maintains its own local sqlite database |
| 13:15:23 | × | andreas303 quits (~andreas@gateway/tor-sasl/andreas303) (Ping timeout: 240 seconds) |
| 13:16:26 | <int-e> | maerwald: At a glance, the cabal-install package index format seems to be buried in the client code (Distribution.Solver.Types.PackageIndex) so it's not readily available as a library :-/ |
| 13:16:50 | <int-e> | (Unless somebody took it upon themselves to strip that part out and maintain it as a library.) |
| 13:17:11 | <maerwald> | there's a lot of stuff in cabal-install that should be exposed imo, but well |
| 13:17:34 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 13:18:43 | <phadej> | maerwald: yes, see cabal-install-parsers |
| 13:18:52 | <fendor> | indeed. I wish I could parse cabal specification without a Cabal dependency. |
| 13:19:01 | <phadej> | fendor: good luck :) |
| 13:19:41 | <phadej> | (my gut feeling is that over half of code lines in Cabal is related to parsing cabal specification) |
| 13:20:11 | → | andreas303 joins (~andreas@gateway/tor-sasl/andreas303) |
| 13:20:35 | <fendor> | I know :/ |
| 13:20:58 | <fendor> | (regarding the "good luck wish") |
| 13:21:21 | → | raehik joins (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) |
| 13:21:29 | × | mirrorbird quits (~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Ping timeout: 272 seconds) |
| 13:21:52 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 13:22:48 | <maerwald> | https://hackage.haskell.org/package/cabal-install-parsers-0.3.0.1/docs/Cabal-Index.html#v:cachedHackageMetadata cool |
| 13:24:38 | × | xintron quits (~xintron@unaffiliated/xintron) (Quit: aoeu) |
| 13:25:40 | → | Wuzzy joins (~Wuzzy@p5b0df9fe.dip0.t-ipconnect.de) |
| 13:26:18 | → | xintron joins (~xintron@unaffiliated/xintron) |
| 13:26:37 | × | Saten-san quits (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8) |
| 13:27:44 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 13:28:16 | → | __monty__ joins (~toonn@unaffiliated/toonn) |
| 13:29:00 | × | cosimone_ quits (~cosimone@93-47-228-249.ip115.fastwebnet.it) (Quit: Quit.) |
| 13:29:23 | × | ChaiTRex quits (~ChaiTRex@gateway/tor-sasl/chaitrex) (Ping timeout: 240 seconds) |
| 13:29:49 | → | o1lo01ol1o joins (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) |
| 13:30:34 | → | sooch joins (~sooch@209.6.196.179) |
| 13:30:45 | → | afb joins (~afb@84.39.117.57) |
| 13:31:21 | → | justanotheruser joins (~justanoth@unaffiliated/justanotheruser) |
| 13:32:10 | → | ChaiTRex joins (~ChaiTRex@gateway/tor-sasl/chaitrex) |
| 13:32:37 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds) |
| 13:34:04 | → | coot joins (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) |
| 13:34:25 | × | shad0w_ quits (~shad0w_@160.202.37.157) (Ping timeout: 240 seconds) |
| 13:34:25 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 13:34:59 | <maerwald> | phadej: when is 3.4 coming out? |
| 13:36:47 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 13:37:30 | <kuribas> | is there a pretty runClientM for the REPL? |
| 13:37:53 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 13:38:03 | <oats> | it's fun reading "low level" code in, eg, bytestring internals |
| 13:38:19 | <oats> | nice to remember that you can still do black magic with pointers if you really want to :P |
| 13:38:52 | <kuribas> | oats: indeed, what's nice in haskell is that it hides the uglyness |
| 13:39:14 | <kuribas> | but you can still write ugly code underneat |
| 13:40:00 | <oats> | indeed |
| 13:40:20 | <oats> | maybe I should get my hands dirty and put my C skills to use here sometime :P |
| 13:41:01 | → | nbloomf joins (~nbloomf@2600:1700:83e0:1f40:11f8:2976:d681:3695) |
| 13:41:05 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 13:41:11 | <kuribas> | it's also often used to interface with a low level C library |
| 13:41:16 | × | nbloomf quits (~nbloomf@2600:1700:83e0:1f40:11f8:2976:d681:3695) (Client Quit) |
| 13:42:17 | × | barzo quits (~sosal@95.70.181.226) (Remote host closed the connection) |
| 13:42:27 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 13:43:40 | → | lucasb joins (uid333435@gateway/web/irccloud.com/x-lrjjlkqiwvxbxlhd) |
| 13:44:16 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 13:44:54 | → | nbloomf joins (~nbloomf@2600:1700:83e0:1f40:d985:da37:6cf:2ad4) |
| 13:47:23 | × | drbean quits (~drbean@TC210-63-209-157.static.apol.com.tw) (Ping timeout: 240 seconds) |
| 13:47:58 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 13:48:52 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
| 13:49:16 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 13:49:21 | <kuribas> | otherwise I rarely find a need to write low level code in haskell |
| 13:49:38 | × | bahamas quits (~lucian@unaffiliated/bahamas) (Ping timeout: 256 seconds) |
| 13:49:44 | <sooch> | How would one go about representing an Identifier that can be either a single id, or multiple id's combined to form an id |
| 13:51:05 | <sooch> | Ex: S = { ident = 1}; S2 = {ident = 2}; => S <> S2 = { ident (2 3)}; |
| 13:52:36 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 13:52:50 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 13:53:19 | <hekkaidekapus> | sooch: Something like `f {ident = x} {ident = y} = {ident = x <> y}`? |
| 13:53:35 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Ping timeout: 258 seconds) |
| 13:53:44 | <kuribas> | sooch: data Ident = Ident (NonEmpty Int) ? |
| 13:55:04 | <sooch> | The identity can be anything, and is unique. I guess I want a way more like: Ident a = Single a | Multi a (Single a |
| 13:55:07 | → | machinedgod joins (~machinedg@d67-193-126-196.home3.cgocable.net) |
| 13:55:10 | <sooch> | but that seems wrong |
| 13:55:22 | × | alexm_ quits (~alexm_@161.8.233.138) (Remote host closed the connection) |
| 13:55:46 | <kuribas> | data Ident a = Ident (NonEmpty a) |
| 13:55:52 | <phadej> | maerwald: i dont know. around ghc-9 |
| 13:56:22 | → | shad0w_ joins (~shad0w_@160.202.37.157) |
| 13:56:45 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving) |
| 13:57:07 | → | noctux joins (~noctux@unaffiliated/noctux) |
| 13:57:07 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 13:57:19 | <sooch> | kuribas: I misinterpreted what NonEmpty was at first, that looks promising. Thanks. |
| 13:57:39 | × | LKoen quits (~LKoen@81.255.219.130) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”) |
| 13:57:47 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 240 seconds) |
| 13:57:49 | → | AWizzArd joins (~code@gehrels.uberspace.de) |
| 14:00:37 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 14:01:57 | → | Saten-san joins (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) |
| 14:02:31 | → | utopic_int0x80 joins (~lucid_0x8@85.132.73.6) |
| 14:04:10 | → | polyphem joins (~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) |
| 14:05:05 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 256 seconds) |
| 14:06:18 | → | spew joins (uid195861@gateway/web/irccloud.com/x-cksfmsrynriuwhsd) |
| 14:06:34 | × | noctux quits (~noctux@unaffiliated/noctux) (Ping timeout: 272 seconds) |
| 14:07:11 | × | ChaiTRex quits (~ChaiTRex@gateway/tor-sasl/chaitrex) (Quit: ChaiTRex) |
| 14:07:22 | × | utopic_int0x80 quits (~lucid_0x8@85.132.73.6) (Ping timeout: 256 seconds) |
| 14:08:05 | → | ChaiTRex joins (~ChaiTRex@gateway/tor-sasl/chaitrex) |
| 14:08:15 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 14:08:33 | → | noctux joins (~noctux@unaffiliated/noctux) |
| 14:08:48 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 14:12:27 | × | cfricke quits (~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9) |
| 14:12:49 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds) |
| 14:14:10 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 14:16:43 | → | nyd joins (~nyd@unaffiliated/elysian) |
| 14:18:20 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 14:19:52 | × | zacts quits (~zacts@dragora/developer/zacts) (Quit: leaving) |
| 14:20:27 | <AWizzArd> | maerwald: about Servant again: I didn’t try it out yet, but it seems to be able to automatically generate the exact documentation of my API, so the docs will always be relevant and stay up-to-date. |
| 14:21:12 | <hc> | it can even export an up-to-date swagger specification using servant-swagger :) |
| 14:21:46 | → | adamwespiser joins (~adam_wesp@209.6.42.110) |
| 14:21:48 | <maerwald> | AWizzArd: you mean swagger? |
| 14:22:04 | <maerwald> | I think about a million backends have support for that? |
| 14:22:32 | <AWizzArd> | maerwald: do you have a link at hand for Snap? |
| 14:22:40 | <maerwald> | not right now |
| 14:23:01 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds) |
| 14:23:21 | → | ajcerejeira joins (~ajcerejei@2001:8a0:ddee:700:efbc:7163:11a0:b83) |
| 14:23:26 | → | LKoen joins (~LKoen@81.255.219.130) |
| 14:23:36 | × | ajcerejeira quits (~ajcerejei@2001:8a0:ddee:700:efbc:7163:11a0:b83) (Client Quit) |
| 14:24:42 | × | Tops2 quits (~Tobias@dyndsl-095-033-024-124.ewe-ip-backbone.de) (Ping timeout: 256 seconds) |
| 14:26:08 | <AWizzArd> | hc: what is good about a swagger spec? (never used that tool, but knowing its name) |
| 14:26:19 | → | geekosaur joins (42d52102@66.213.33.2) |
| 14:26:46 | <hc> | AWizzArd: anyone(TM) will know how to use your API |
| 14:26:50 | × | adamwespiser quits (~adam_wesp@209.6.42.110) (Ping timeout: 272 seconds) |
| 14:27:19 | <hc> | you could say it is a transformation of the servant API type declaration into a json representation of it that many tools can understand |
| 14:28:03 | <hc> | AWizzArd: have a look at https://editor.swagger.io/ ; I find that a pretty handy tool for looking at swagger specs |
| 14:28:21 | <AWizzArd> | hc: is this tool mostly for web apis? Or completly generic for any api that I may want to design? |
| 14:28:30 | <hc> | it's for REST APIs only afaik |
| 14:28:32 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 14:28:42 | <hc> | which arguably aren't tied to the web |
| 14:29:08 | <hc> | but it's not as generic as i.e. apache thrift or the likes |
| 14:30:24 | × | filwisher quits (~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) (Ping timeout: 260 seconds) |
| 14:30:52 | <dolio> | oats: You probably don't want to copy the pointer stuff in bytestring, though. The array stuff in primitive is generally better. |
| 14:31:12 | <dolio> | Bytestrings are prone to memory fragmentation. |
| 14:31:35 | → | Noldorin joins (~noldorin@unaffiliated/noldorin) |
| 14:32:08 | <oats> | hmmm, thanks for the tip |
| 14:32:59 | <dolio> | Also vector builds on primitive in various ways. |
| 14:33:16 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 14:35:59 | → | bitmapper joins (uid464869@gateway/web/irccloud.com/x-kucaomxlfuldfryc) |
| 14:37:41 | × | o1lo01ol1o quits (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Read error: Connection reset by peer) |
| 14:38:38 | → | mirrorbird joins (~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) |
| 14:38:40 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 14:39:26 | → | o1lo01ol1o joins (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) |
| 14:42:48 | × | Merfont quits (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
| 14:42:49 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 14:42:53 | → | Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) |
| 14:42:59 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 14:43:58 | × | AWizzArd quits (~code@gehrels.uberspace.de) (Ping timeout: 256 seconds) |
| 14:44:05 | → | AWizzArd joins (~code@gehrels.uberspace.de) |
| 14:46:01 | → | cosimone joins (~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) |
| 14:46:13 | → | mnrmnaugh joins (~mnrmnaugh@unaffiliated/mnrmnaugh) |
| 14:46:34 | × | Saten-san quits (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8) |
| 14:47:51 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 14:48:22 | × | o1lo01ol1o quits (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 272 seconds) |
| 14:48:49 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 14:49:14 | × | catkiki quits (~catkiki@m90-134-157-227.cust.tele2.hr) (Read error: Connection reset by peer) |
| 14:50:34 | → | o1lo01ol1o joins (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) |
| 14:51:01 | → | Kaeipi joins (~Kaiepi@47.55.157.9) |
| 14:51:28 | × | Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-157-9.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
| 14:52:13 | × | alexm_ quits (~alexm_@161.8.233.138) (Ping timeout: 260 seconds) |
| 14:52:13 | × | nerdypepper quits (nerdypeppe@152.67.160.69) (Ping timeout: 260 seconds) |
| 14:52:57 | → | Saten-san joins (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) |
| 14:53:23 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 14:53:32 | × | ruffianeo quits (~ruffianeo@p200300e5271f09cf8b4d140a1c554ebc.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 14:53:40 | → | crobbins joins (~crobbins@2601:2c1:380:ec40:d443:ce25:44e4:e44d) |
| 14:55:46 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 14:55:58 | hackage | lapack 0.3.2 - Numerical Linear Algebra using LAPACK https://hackage.haskell.org/package/lapack-0.3.2 (HenningThielemann) |
| 14:56:18 | → | fendor_ joins (~fendor@91.141.3.153.wireless.dyn.drei.com) |
| 14:56:29 | × | fendor quits (~fendor@91.141.3.153.wireless.dyn.drei.com) (Remote host closed the connection) |
| 14:56:35 | → | p-core joins (~Thunderbi@koleje-wifi-0046.koleje.cuni.cz) |
| 14:56:43 | → | miguel_clean joins (~Miguel@89-72-187-203.dynamic.chello.pl) |
| 14:56:49 | <miguel_clean> | Hello |
| 14:57:33 | <miguel_clean> | I am playing with the "+RTS -p" flag and wonder if I have to wait for my programm to exit or can have it updated in some intervalls as well? |
| 14:57:39 | → | Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362) |
| 14:57:56 | → | utopic_int0x80 joins (~lucid_0x8@188.253.234.46) |
| 14:57:57 | <geekosaur> | you have to wait for normal program exit |
| 14:58:25 | × | Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 240 seconds) |
| 14:58:58 | <shad0w_> | hi fam |
| 14:59:00 | Lord_of_Life_ | is now known as Lord_of_Life |
| 14:59:03 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 14:59:17 | <shad0w_> | i learned about Aplicatives today |
| 14:59:22 | <shad0w_> | and i have a question |
| 15:00:01 | × | afb quits (~afb@84.39.117.57) () |
| 15:00:05 | <shad0w_> | they seem similar to Functors with the addtinal container type with the f (a -> b) for the first argument |
| 15:00:24 | <shad0w_> | i was wondering, why do they exist ? |
| 15:00:45 | <shad0w_> | we can probably do all of that stuff with fmap |
| 15:01:33 | → | ixlun joins (~matthew@109.249.184.193) |
| 15:02:11 | <dolio> | Try implementing (<*>) with just fmap. |
| 15:02:17 | <dolio> | Or pure. |
| 15:03:39 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 15:04:55 | → | Turmfalke joins (~user@unaffiliated/siracusa) |
| 15:06:38 | → | Sheilong joins (uid293653@gateway/web/irccloud.com/x-jwcpkbwpnookjrjz) |
| 15:06:38 | × | Saten-san quits (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Ping timeout: 256 seconds) |
| 15:07:19 | <sm[m]> | live output from +RTS -p would be great |
| 15:08:15 | <geekosaur> | I think you can do something similar with the eventlog? |
| 15:08:25 | <sm[m]> | hstop myprog |
| 15:09:00 | <sm[m]> | I need to learn about this stuff |
| 15:09:11 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 15:09:49 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 15:09:51 | → | wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) |
| 15:11:14 | <geekosaur> | one problem with live profiling is laziness, stuff can be waiting to be evaluated and will be lost even though in some sense it's been seen |
| 15:11:37 | <shad0w_> | dolio: isn't fmap g x = pure g <*> x ? |
| 15:11:56 | <geekosaur> | and only show up later in the run when forced, possibly at the end |
| 15:12:08 | <hololeap> | shad0w_: if you think of a Functor f as carrying with it some kind of "context" or "other information", then Applicative gives a way to lift a value into a "default context" (pure) and combine two of these contexts (<*>) |
| 15:12:49 | <geekosaur> | shad0w, yes, but that means you can recover fmap from pure and <*>, not that you can recover either pure or <*> from fmap |
| 15:13:33 | <shad0w_> | geekosaur: i could just use fmap without ever using pure or <*> can't i? |
| 15:13:35 | <geekosaur> | so Functor is not sufficient to replace Applicative. in fact it's a prerequisite for Applicative, but not enough by itself |
| 15:13:43 | → | nerdypepper joins (nerdypeppe@152.67.160.69) |
| 15:13:48 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 15:14:26 | <geekosaur> | Applicative can do things fmap can't, otherwise we wouldn't have it |
| 15:14:39 | <geekosaur> | for example, you can parse with an Applicative but not with a Functor |
| 15:14:54 | <shad0w_> | that's what i am trying to understand. why does this even exists / |
| 15:14:59 | → | tomku joins (~tomku@unaffiliated/tomku) |
| 15:15:21 | <dolio> | How do you implement `(a -> b -> c) -> f a -> f b -> f c` with just fmap? |
| 15:15:37 | → | mu joins (~mu@unaffiliated/mu) |
| 15:16:09 | <shad0w_> | you probably can't since fmap :: (a -> b) -> f a -> f b |
| 15:16:15 | <dolio> | Right. |
| 15:16:28 | <shad0w_> | can b == (b -> c ) ? |
| 15:16:35 | <sm[m]> | in the example stats at https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/runtime_control.html#rts-options-to-produce-runtime-statistics, max_bytes_used is 1065272 and peak_megabytes_allocated is 3. How/are those related ? |
| 15:16:37 | <dolio> | It can. |
| 15:16:43 | <shad0w_> | ^ sorry if that sounds stupid |
| 15:16:45 | <dolio> | Then your result is `f (b -> c)`. |
| 15:16:51 | <geekosaur> | but that doesn't help because ... that |
| 15:17:14 | <int-e> | :t (<*>) |
| 15:17:16 | <lambdabot> | Applicative f => f (a -> b) -> f a -> f b |
| 15:17:23 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 15:17:28 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 256 seconds) |
| 15:17:32 | <geekosaur> | and now you need Applicative to go any further |
| 15:17:39 | <int-e> | that's the type you need to continue from f (b -> c) |
| 15:17:58 | × | knupfer quits (~Thunderbi@87.123.206.34) (Quit: knupfer) |
| 15:18:00 | → | knupfer1 joins (~Thunderbi@200116b82c8bb80040b575c5aa538973.dip.versatel-1u1.de) |
| 15:18:23 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 15:18:30 | <shad0w_> | so, it becomes usefull if your first argument is (a -> b -> c ) ? |
| 15:19:11 | <dolio> | It becomes useful if you have any number other than 1 of your `f` things that you want to do something with. |
| 15:19:15 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 15:19:37 | <dolio> | pure lets you build an `f` thing if you have 0. |
| 15:19:40 | <shad0w_> | so you could g <$> x1 <*> x2 ? |
| 15:19:54 | <dolio> | And (<*>) lets you combine two `f` things into one. |
| 15:20:22 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 15:20:24 | knupfer1 | is now known as knupfer |
| 15:20:33 | × | kenran quits (~maier@b2b-37-24-119-190.unitymedia.biz) (Ping timeout: 272 seconds) |
| 15:20:40 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 15:20:57 | <shad0w_> | dolio: say i want to add Just 6 and Just 7 |
| 15:21:06 | <shad0w_> | then that's an applicative job ? |
| 15:21:51 | <int-e> | :t liftA2 (+) |
| 15:21:51 | × | gentauro quits (~gentauro@unaffiliated/gentauro) (Read error: Connection reset by peer) |
| 15:21:52 | <lambdabot> | (Applicative f, Num c) => f c -> f c -> f c |
| 15:22:19 | <hololeap> | shad0w_: that's correct |
| 15:22:32 | → | gentauro joins (~gentauro@unaffiliated/gentauro) |
| 15:22:33 | <int-e> | @src liftA2 |
| 15:22:33 | <lambdabot> | liftA2 f a b = f <$> a <*> b |
| 15:23:07 | <hololeap> | > (+) <$> Just 6 <*> Just 7 |
| 15:23:08 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 260 seconds) |
| 15:23:10 | <lambdabot> | Just 13 |
| 15:23:10 | <kuribas> | how do you experiment in ghci with new-style builds? It doesn't let me import libraries (like pretty-simple) |
| 15:23:21 | <hololeap> | > (+) <$> Nothing <*> Just 7 |
| 15:23:24 | <lambdabot> | Nothing |
| 15:24:06 | <kuribas> | is there a way to configure an interactive test environment in the cabal file? |
| 15:24:19 | <shad0w_> | > (\x y z -> x + y +z) <$> Just 1 <*> Just 2 <*> Just 3 |
| 15:24:21 | <lambdabot> | Just 6 |
| 15:24:32 | <shad0w_> | ^Thanks bot |
| 15:24:44 | <sm[m]> | isn't new-style a confusing term at this point |
| 15:24:45 | <shad0w_> | i kindda get it now. |
| 15:24:46 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 15:24:55 | <shad0w_> | thanks guys : D |
| 15:24:56 | <sm[m]> | kuribas: cabal repl doesn't work ? |
| 15:25:14 | <kuribas> | sm[m]: it doesn't let me import packages outside of the project |
| 15:25:22 | → | mu joins (~mu@unaffiliated/mu) |
| 15:25:25 | <hololeap> | shad0w_: look up and read typeclassopedia for more details |
| 15:25:38 | <shad0w_> | i am reading that |
| 15:25:38 | <hololeap> | when you're ready |
| 15:25:42 | → | crobbins_ joins (~crobbins@2601:2c1:380:ec40:1cb9:1bb9:5a95:58fb) |
| 15:25:45 | <kuribas> | sm[m]: well in ghci it works... |
| 15:25:51 | × | mu quits (~mu@unaffiliated/mu) (Client Quit) |
| 15:25:52 | <sm[m]> | kuribas: ah, that's normal. Perhaps you can bring in more by using a -package option |
| 15:26:30 | <kuribas> | sm[m]: I just want to make a temporary test.hs file for quick testing and reloading into ghci |
| 15:26:38 | <sm[m]> | if cabal doesn't have that option itself, then maybe cabal repl --ghc-options='-package A -package B' |
| 15:26:59 | <kuribas> | sm[m]: so I don't need to retype some commands every reload |
| 15:27:15 | → | lucid_0x80 joins (~lucid_0x8@188.253.236.126) |
| 15:27:44 | <sm[m]> | right, I did that the other day. I think I used stack --package A exec -- ghci test.hs or something |
| 15:27:59 | × | geekosaur quits (42d52102@66.213.33.2) (Ping timeout: 245 seconds) |
| 15:28:11 | <sm[m]> | so maybe cabal exec is the way, since test.hs isn't a component of the projec |
| 15:28:12 | <sm[m]> | t |
| 15:28:12 | <kuribas> | hmm, I'll try that |
| 15:28:58 | × | nerdypepper quits (nerdypeppe@152.67.160.69) (Ping timeout: 260 seconds) |
| 15:29:16 | × | utopic_int0x80 quits (~lucid_0x8@188.253.234.46) (Ping timeout: 265 seconds) |
| 15:29:17 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:d443:ce25:44e4:e44d) (Ping timeout: 260 seconds) |
| 15:29:17 | <kuribas> | can I do :r with that? |
| 15:30:07 | → | irc_user joins (uid423822@gateway/web/irccloud.com/x-kojvjfqrylgayrvg) |
| 15:30:27 | × | crobbins_ quits (~crobbins@2601:2c1:380:ec40:1cb9:1bb9:5a95:58fb) (Ping timeout: 260 seconds) |
| 15:31:13 | × | shad0w_ quits (~shad0w_@160.202.37.157) (Ping timeout: 246 seconds) |
| 15:32:36 | → | mu joins (~mu@unaffiliated/mu) |
| 15:32:43 | × | hololeap quits (~hololeap@unaffiliated/hololeap) (Quit: KVIrc 5.0.1 Aria http://www.kvirc.net/) |
| 15:33:04 | → | geekosaur joins (42d52102@66.213.33.2) |
| 15:33:28 | <sm[m]> | kuribas: how do you mean ? |
| 15:33:55 | <kuribas> | reload |
| 15:33:58 | <kuribas> | in ghci |
| 15:34:14 | → | Papillon joins (696b16db@105.107.22.219) |
| 15:34:30 | → | kenran joins (~maier@b2b-37-24-119-190.unitymedia.biz) |
| 15:36:50 | → | filwisher joins (~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) |
| 15:37:47 | <fendor_> | kuribas, `cabal repl -b A -b B` should work. |
| 15:38:35 | <kuribas> | cabal new-repl -b /tmp/test.hs => couldn't parse dependency: /tmp/test.hs |
| 15:38:56 | × | kenran quits (~maier@b2b-37-24-119-190.unitymedia.biz) (Ping timeout: 265 seconds) |
| 15:38:59 | <fendor_> | kuribas, A is the dependency |
| 15:39:05 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 15:39:18 | <fendor_> | such as aeson or pretty-simple |
| 15:39:24 | <kuribas> | right... |
| 15:39:34 | → | mu joins (~mu@unaffiliated/mu) |
| 15:39:37 | <kuribas> | how do I load a /file |
| 15:40:04 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 15:40:13 | <fendor_> | ":l /path/to/file" |
| 15:40:15 | → | tzh joins (~tzh@2601:448:c500:5300::82b3) |
| 15:40:22 | × | Papillon quits (696b16db@105.107.22.219) (Remote host closed the connection) |
| 15:40:27 | <fendor_> | within ghci? |
| 15:41:01 | × | dhil quits (~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 264 seconds) |
| 15:42:01 | <kuribas> | right :) |
| 15:42:37 | → | crobbins joins (~crobbins@2600:380:7c78:c227:587a:b262:8c82:9b59) |
| 15:42:38 | <kuribas> | now only convincing emacs to pass these arguments to cabal repl... |
| 15:42:58 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie) |
| 15:43:15 | → | GyroW joins (~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be) |
| 15:43:17 | × | GyroW quits (~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be) (Changing host) |
| 15:43:17 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 15:44:38 | <sm[m]> | this nothunks lib from the cardano team sounds fantastic |
| 15:46:19 | → | hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-ibhrcxsjgffyrrzh) |
| 15:47:01 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 15:47:07 | × | kuribas quits (~user@ptr-25vy0i80qh4go15t39e.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3)) |
| 15:48:04 | × | crobbins quits (~crobbins@2600:380:7c78:c227:587a:b262:8c82:9b59) (Remote host closed the connection) |
| 15:49:03 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 15:49:12 | → | crobbins joins (~crobbins@2600:380:7c78:c227:587a:b262:8c82:9b59) |
| 15:49:44 | → | mu joins (~mu@unaffiliated/mu) |
| 15:50:02 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 15:51:06 | × | oish quits (~charlie@228.25.169.217.in-addr.arpa) (Quit: Lost terminal) |
| 15:52:12 | → | DTZUZU_ joins (~DTZUZU@205.ip-149-56-132.net) |
| 15:52:18 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 15:52:28 | × | filwisher quits (~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) (Ping timeout: 265 seconds) |
| 15:53:28 | <sm[m]> | speaking of which, another q. I have a program where +RTS -S prints out unchanging numbers. I think this means it's running with constant heap ? |
| 15:53:47 | × | crobbins quits (~crobbins@2600:380:7c78:c227:587a:b262:8c82:9b59) (Ping timeout: 260 seconds) |
| 15:54:19 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 15:54:52 | × | DTZUZU quits (~DTZUZU@S0106bcd165662a4d.vs.shawcable.net) (Ping timeout: 272 seconds) |
| 15:54:55 | × | AWizzArd quits (~code@gehrels.uberspace.de) (Changing host) |
| 15:54:55 | → | AWizzArd joins (~code@unaffiliated/awizzard) |
| 15:55:11 | <sm[m]> | and the overall statistics printed at the end look reasonable. Meanwhile, I can see it's Memory steadily increasing without limit in macos Activity Monitor. Does that mean it is leaking thunks and the stack is growing ? and the RTS stats don't show that ? |
| 15:56:04 | × | machinedgod quits (~machinedg@d67-193-126-196.home3.cgocable.net) (Ping timeout: 246 seconds) |
| 15:56:47 | <sm[m]> | and this program uses SDL, in case it's relevant |
| 15:57:09 | <sm[m]> | maybe I'm leaking foreign C memory, not haskell memory ? |
| 15:57:12 | × | dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection) |
| 15:57:48 | → | dhil joins (~dhil@11.29.39.217.dyn.plus.net) |
| 15:58:10 | × | oxide quits (~lambda@unaffiliated/mclaren) (Read error: Connection reset by peer) |
| 15:58:42 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 15:59:04 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 15:59:18 | × | p-core quits (~Thunderbi@koleje-wifi-0046.koleje.cuni.cz) (Remote host closed the connection) |
| 15:59:18 | × | cpressey quits (~cpressey@79-72-202-6.dynamic.dsl.as9105.com) (Quit: WeeChat 1.9.1) |
| 15:59:34 | → | mu joins (~mu@unaffiliated/mu) |
| 16:01:24 | → | ubert joins (~Thunderbi@91.141.0.190.wireless.dyn.drei.com) |
| 16:02:30 | × | ixlun quits (~matthew@109.249.184.193) (Read error: Connection reset by peer) |
| 16:05:49 | × | chele quits (~chele@ip5b416ea2.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
| 16:09:24 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 16:09:35 | → | mu__ joins (~mu@unaffiliated/mu) |
| 16:12:17 | → | nerdypepper joins (nerdypeppe@152.67.160.69) |
| 16:14:16 | → | z0 joins (~z0@bl15-165-108.dsl.telepac.pt) |
| 16:14:17 | × | LKoen quits (~LKoen@81.255.219.130) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”) |
| 16:14:39 | z0 | is now known as Guest86631 |
| 16:15:21 | → | jedws joins (~jedws@2001:8003:337f:1b00:edc3:4bd4:30b0:401b) |
| 16:15:25 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 16:16:45 | × | v_m_v quits (~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) (Remote host closed the connection) |
| 16:16:59 | × | Guest69388 quits (~z0@bl17-248-65.dsl.telepac.pt) (Ping timeout: 240 seconds) |
| 16:17:11 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 16:18:11 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 16:18:11 | → | v_m_v joins (~vm_v@2a02:aa12:3200:6480:4e1d:96ff:fe6a:41bd) |
| 16:18:30 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 16:18:45 | → | Saten-san joins (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) |
| 16:18:48 | → | wroathe_ joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 16:19:04 | × | mu__ quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 16:19:32 | × | mirk0 quits (~mirko@unaffiliated/-mirko-/x-2946915) (Ping timeout: 265 seconds) |
| 16:19:36 | × | wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
| 16:19:43 | → | mu joins (~mu@unaffiliated/mu) |
| 16:20:21 | × | mu quits (~mu@unaffiliated/mu) (Client Quit) |
| 16:21:38 | × | v_m_v quits (~vm_v@2a02:aa12:3200:6480:4e1d:96ff:fe6a:41bd) (Remote host closed the connection) |
| 16:23:44 | → | Tops2 joins (~Tobias@dyndsl-095-033-024-124.ewe-ip-backbone.de) |
| 16:23:46 | × | wroathe_ quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds) |
| 16:23:52 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 16:24:38 | × | breezykermo quits (~breezyker@p200300ed5f114200c95d7bbe0250101c.dip0.t-ipconnect.de) () |
| 16:25:16 | → | frdg joins (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) |
| 16:26:06 | → | filwisher joins (~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) |
| 16:26:19 | × | geekosaur quits (42d52102@66.213.33.2) (Ping timeout: 245 seconds) |
| 16:27:07 | × | raehik quits (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Quit: WeeChat 2.8) |
| 16:28:00 | → | raehik joins (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) |
| 16:30:43 | → | ccallahan1 joins (~ccallahan@195.140.213.38) |
| 16:31:17 | → | oisdk joins (~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) |
| 16:32:23 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 16:32:41 | → | Amras joins (~Amras@unaffiliated/amras0000) |
| 16:33:16 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 16:38:14 | → | ddellacosta joins (~dd@86.106.121.168) |
| 16:41:22 | × | nineonin_ quits (~nineonine@216-19-190-182.dyn.novuscom.net) (Remote host closed the connection) |
| 16:41:59 | → | nineonine joins (~nineonine@216-19-190-182.dyn.novuscom.net) |
| 16:42:53 | × | ddellacosta quits (~dd@86.106.121.168) (Client Quit) |
| 16:43:44 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 16:44:47 | × | mirrorbird quits (~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Ping timeout: 272 seconds) |
| 16:45:51 | → | ddellacosta joins (~dd@86.106.121.168) |
| 16:46:16 | → | kritzefitz joins (~kritzefit@212.86.56.80) |
| 16:46:36 | × | nineonine quits (~nineonine@216-19-190-182.dyn.novuscom.net) (Ping timeout: 265 seconds) |
| 16:46:56 | × | filwisher quits (~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) (Ping timeout: 256 seconds) |
| 16:47:25 | × | abhixec quits (~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 16:47:31 | × | jespada quits (~jespada@90.254.241.6) (Quit: Leaving) |
| 16:48:24 | × | frdg quits (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Ping timeout: 245 seconds) |
| 16:48:58 | → | W3BV1P3R_ joins (~W3BV1P3R@c-73-5-91-226.hsd1.tn.comcast.net) |
| 16:49:45 | × | W3BV1P3R_ quits (~W3BV1P3R@c-73-5-91-226.hsd1.tn.comcast.net) (Client Quit) |
| 16:50:16 | → | mu joins (~mu@unaffiliated/mu) |
| 16:50:45 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 16:51:39 | × | Saten-san quits (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8) |
| 16:52:09 | → | shad0w_ joins (~shad0w_@160.202.37.157) |
| 16:55:17 | × | oisdk quits (~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 16:55:43 | × | coot quits (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 16:55:54 | → | oisdk joins (~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) |
| 16:56:20 | <cohn> | can anyone recommend a good command line argument processing library? |
| 16:56:50 | → | nineonine joins (~nineonine@216.81.48.202) |
| 16:57:14 | → | frdg joins (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) |
| 16:57:25 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 16:57:37 | <frdg> | how can I use stack to compile binaries? |
| 16:57:56 | → | mu joins (~mu@unaffiliated/mu) |
| 16:58:09 | <dsal> | frdg: stack build |
| 16:58:16 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 256 seconds) |
| 16:58:41 | <dsal> | cohn: I usually just use optparse-applicative, but depending on what your needs are, there are easier or fancier things. |
| 16:59:01 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 16:59:05 | <cohn> | dsal: easy is always good. I'll take a look, thanks! |
| 17:00:07 | <dsal> | cohn: There's this thing, but I've not used it because I always end up doing something a little weird: https://hackage.haskell.org/package/optparse-generic-1.4.3/docs/Options-Generic.html |
| 17:00:37 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds) |
| 17:00:43 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 17:01:32 | <frdg> | dsal: ok that is what I thought. I have been running stack build but only get this ouput: https://dpaste.org/YDpW. Where do the binaries go? |
| 17:01:36 | × | frdg quits (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Client Quit) |
| 17:02:45 | × | shad0w_ quits (~shad0w_@160.202.37.157) (Remote host closed the connection) |
| 17:02:59 | → | crobbins joins (~crobbins@2601:2c1:380:ec40:2d4a:f96c:b859:c0ae) |
| 17:03:21 | × | otulp quits (~otulp@ti0187q162-5025.bb.online.no) (Remote host closed the connection) |
| 17:03:38 | <dsal> | stack path --local-install-root |
| 17:03:41 | <dsal> | Or you can just 'stack install' |
| 17:04:11 | <dsal> | That warning is kind of interesting, though. It implies you've modified a generated .cabal and you've probably got some confusion there. |
| 17:04:55 | → | Sgeo joins (~Sgeo@ool-18b982ad.dyn.optonline.net) |
| 17:05:16 | → | sand_dull joins (~theuser@62.182.99.37) |
| 17:05:27 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 17:05:58 | → | frdg joins (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) |
| 17:07:14 | fendor_ | is now known as fendor |
| 17:07:27 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 17:07:28 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 17:07:59 | → | mu joins (~mu@unaffiliated/mu) |
| 17:08:42 | → | Saten-san joins (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) |
| 17:08:58 | → | mirrorbird joins (~psutcliff@m83-187-173-228.cust.tele2.se) |
| 17:10:14 | × | elliott_ quits (~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) (Ping timeout: 272 seconds) |
| 17:10:42 | <frdg> | dsal: stack install worked. No idea how I have managed to mess the cabal file up. |
| 17:10:42 | × | frdg quits (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Client Quit) |
| 17:11:18 | <dsal> | The instructions suggest you could just delete it. If you have package.yaml and the .cabal, that's going to be confusing. |
| 17:11:30 | → | fluturel joins (~fluturel@82.137.14.51) |
| 17:11:56 | <fluturel> | hello? |
| 17:11:56 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds) |
| 17:12:11 | <yushyin> | hello fluturel |
| 17:12:48 | × | raichoo quits (~raichoo@213.240.178.58) (Quit: Lost terminal) |
| 17:13:03 | <fluturel> | so i just learning haskell a few minutes ago. Don't have any questions yet, just wanted to see if the channel is still active |
| 17:13:56 | → | elliott_ joins (~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) |
| 17:14:43 | <yushyin> | actually it is one of the more active channels on freenode |
| 17:14:49 | → | geekosaur joins (42d52102@66.213.33.2) |
| 17:14:57 | hackage | prolude 0.0.0.0 - ITProTV's custom prelude https://hackage.haskell.org/package/prolude-0.0.0.0 (fozworth) |
| 17:15:17 | → | coot joins (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) |
| 17:15:40 | <fluturel> | is my understanding correct that i can execute little haskell programs right here in the chat? |
| 17:15:52 | <dsal> | No, but there are a couple of bots that can evaluate expressions. |
| 17:16:17 | <fluturel> | how would one go about doing that? |
| 17:16:21 | <dsal> | You can speak to those bots privately if you want to try to use them as a repl, but ghci will be a lot better. |
| 17:16:54 | <dsal> | > length . words $ "this is lambdabot" |
| 17:16:58 | <lambdabot> | 3 |
| 17:17:07 | <dsal> | % length . words $ "this is yahb" |
| 17:17:08 | <yahb> | dsal: 3 |
| 17:17:28 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 17:17:34 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 17:17:40 | <fluturel> | ooh, that's interesting |
| 17:17:42 | <dsal> | They're different, but helpful for demonstrating basic ideas. |
| 17:17:43 | <fluturel> | thank you |
| 17:17:54 | → | mu joins (~mu@unaffiliated/mu) |
| 17:18:12 | <dsal> | Both will be terribly frustrating if you try to use them as ghci. ghci will be terribly frustrating if you try to use it as a scratch pad. |
| 17:18:44 | <fluturel> | i will certainly come back here, should i need help (i most certainly will). Coming from |
| 17:18:59 | × | sand_dull quits (~theuser@62.182.99.37) (Ping timeout: 265 seconds) |
| 17:19:06 | <fluturel> | Coming from C++ and the like, i heards it can be pretty brutal |
| 17:19:28 | × | Saten-san quits (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Ping timeout: 265 seconds) |
| 17:19:28 | × | knupfer quits (~Thunderbi@200116b82c8bb80040b575c5aa538973.dip.versatel-1u1.de) (Remote host closed the connection) |
| 17:19:30 | <dsal> | Haskell is pretty easy. Haskell with a brain conditioned on C++ might be hard. |
| 17:19:36 | → | knupfer joins (~Thunderbi@200116b82c8bb80079b1331ba61465fc.dip.versatel-1u1.de) |
| 17:20:17 | <fluturel> | I do have some experience with Common LISP, but I dont know if that is considered functional nowadays |
| 17:21:11 | <dsal> | It's not even so much the "functional" bits. It's just a different language with different conventions (including calling conventions), culture, etc... |
| 17:22:11 | <dsal> | Things that might be important for optimizing or organizing C++ code could be hugely detrimental to your Haskell experience and lead down dark paths. |
| 17:22:13 | → | Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
| 17:22:15 | <ski> | fluturel : just lurking in here can also be pretty useful, when learning |
| 17:22:18 | <dsal> | fluturel: How are you going about learning haskell? |
| 17:22:43 | <dsal> | Yeah, one neat thing about lurking is that you'll get exposed to a lot of things you hadn't considered. |
| 17:23:00 | <fluturel> | like using guards as ifs and such? |
| 17:23:27 | <dsal> | Just general structure (though I almost never use 'if' in any of my code). |
| 17:24:26 | <fluturel> | well, i got a book that has most of the language features. It's more like a doc than anything else. And also, some tutorials that I found. I am starting with learnyouahaskell.com |
| 17:24:31 | <ski> | fluturel : you will learn to use recursion for looping, pattern-matching for destructuring and branching, learn to program (mostly/usually) without mutable variables, get access to a nice, flexible, powerful, static type system |
| 17:24:59 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 17:25:02 | <ski> | fluturel : oh, and higher-order programming, with lexical scope |
| 17:25:43 | <ski> | @where CIS194 |
| 17:25:43 | <lambdabot> | https://www.seas.upenn.edu/~cis194/spring13/lectures.html |
| 17:26:02 | <fluturel> | ski : i know what most of the things you said are. No idea about pattern-matching, sounds like you are talking about regex |
| 17:26:05 | <ski> | fluturel : that ^ has exercises, if you want some to chew on (LYAH doesn't have any) |
| 17:26:29 | <fluturel> | Oh, thank you so much, just bookmarked it! |
| 17:27:04 | <ski> | fluturel : have you used `destructuring-bind', in CL ? |
| 17:27:16 | <fluturel> | Yes |
| 17:27:40 | <fluturel> | So it's like that |
| 17:27:40 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 17:27:41 | <ski> | well, pattern-matching is like that, "only more so", also incorporates branching on the possible shapes a piece of datum may assume |
| 17:27:53 | → | mu joins (~mu@unaffiliated/mu) |
| 17:28:11 | × | John20 quits (~John@82.46.59.122) (Ping timeout: 240 seconds) |
| 17:28:21 | <dsal> | You can define different expressions for functions based on the value of their arguments, for example. |
| 17:28:32 | <ski> | @src length |
| 17:28:32 | <lambdabot> | Source not found. Where did you learn to type? |
| 17:28:41 | <ski> | hmpf |
| 17:28:48 | <ski> | length :: [a] -> Int |
| 17:28:52 | <ski> | length [ ] = 0 |
| 17:29:00 | <ski> | length (x:xs) = 1 + length xs |
| 17:29:10 | × | cosimone quits (~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Quit: Quit.) |
| 17:29:24 | <ski> | is the traditional way to define the length of a (single-linked) list |
| 17:29:47 | <ski> | `x:xs' there is like a "dotted pair/cons", in the Lisp world. and `[]' is the empty list |
| 17:30:04 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 17:30:21 | <fluturel> | ah, i see, so it's recursion |
| 17:30:24 | <ski> | so, `length' is defined via "two definitions" (two defining equations), each handling one of the two possible cases (empty vs. non-empty list) |
| 17:30:32 | <ski> | yes |
| 17:30:35 | <dsal> | recursion isn't the interesting part of that example, though. |
| 17:30:38 | <fluturel> | xs is the remainder of the list and evaluates till xs is empty list |
| 17:30:52 | <fluturel> | yeah, no, i got that |
| 17:31:07 | <monochrom> | The point is we don't write like "length list = if null list then 0 else 1 + tail list" |
| 17:31:14 | <ski> | but you can use this style of definition as well, for your own, user-defined, data types |
| 17:31:22 | <fluturel> | And what you said about destructuring-bind being close to this, it does make a lot of sense |
| 17:31:24 | <dsal> | > let isThree 3 = True; isThree _ = False in map isThree [1..5] |
| 17:31:28 | <lambdabot> | [False,False,True,False,False] |
| 17:31:44 | <ski> | s/tail list/length (tail list)/ |
| 17:31:50 | <dsal> | I have two different definitions of isThree that do different things depending on the value of the argument. |
| 17:31:56 | <albestro[m]> | fluturel: I'm studying in parallel both CIS194 2013 and LYAH...for CIS194 I found useful from time to time to compare my solution with the one from the students who attended the course. you can find few of them on github |
| 17:32:58 | <fluturel> | albestro[m]: thank you for the suggestion |
| 17:33:29 | → | Saten-san joins (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) |
| 17:33:31 | <fluturel> | albestro[m]: how long have you been studying for? |
| 17:34:16 | <albestro[m]> | fluturel: I started during holidays (1 week of spare time) and in the last weeks I had few time to dedicate...but let's say 1 month on the calendar |
| 17:34:34 | <cohn> | albestro[m]: beware, some of LYAH is out of date. For example no coverage of Semigroups |
| 17:34:42 | <cohn> | other than that, great resource |
| 17:35:02 | <albestro[m]> | cohn: thanks! it's absolutely worth knowing. |
| 17:35:47 | <albestro[m]> | also about CIS194, I preferred the 2013 version because it feels like it is more dedicated to the "low-level' |
| 17:36:12 | <albestro[m]> | compared to the newer one that it seems like they are trying to be "more interesting" with visual things |
| 17:36:26 | cohn | shrugs |
| 17:36:43 | <cohn> | I don't know enough to have an opinion either way. : ) |
| 17:37:05 | <sm[m]> | fluturel, also good: |
| 17:37:05 | <sm[m]> | @where HTAC |
| 17:37:05 | <lambdabot> | "Haskell Tutorial and Cookbook" by Mark Watson in 2017-09-04 at <https://leanpub.com/haskell-cookbook> |
| 17:37:12 | ski | grins |
| 17:37:23 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 17:37:42 | <sm[m]> | ski, you saw that coming ? :) |
| 17:37:53 | → | mu joins (~mu@unaffiliated/mu) |
| 17:37:55 | <ski> | was briefly thinking about it |
| 17:38:10 | <fluturel> | sm[m]: i found it during my searches, but thank you, will be in my priority list |
| 17:38:37 | <ski> | fluturel : at some point, you may find yourself wanting a textbook |
| 17:38:55 | <fluturel> | i should have taken haskell up while in lockdown.. |
| 17:39:20 | <sm[m]> | that guy is not paying me, I promise. I just think it's among the best for many folk, and still mysteriously unknown, so I am duty bound to mention it |
| 17:40:54 | <dsal> | fluturel: Everything I've ever learned felt like I learned it too late. |
| 17:41:27 | → | brandstifter joins (~brandstif@62-46-52-151.adsl.highway.telekom.at) |
| 17:42:02 | <fluturel> | dsal: I know exactly what you mean. If only i learned more when i had loads of free time.. |
| 17:43:28 | <sm[m]> | no time like the present |
| 17:44:26 | <fluturel> | i have another question: what can you do with haskell these days? Is it just a niche programming language? |
| 17:44:43 | <dsal> | fluturel: Here's a project I did recently: http://dustin.sallings.org/2020/04/29/gopro-plus.html |
| 17:44:50 | <dsal> | I fail to write up most of the things I do. *sigh* |
| 17:44:53 | <sm[m]> | ha, leading question there |
| 17:46:21 | × | bitmagie quits (~Thunderbi@200116b8065d560030e19c72082b8700.dip.versatel-1u1.de) (Quit: bitmagie) |
| 17:46:22 | → | DTZUZU joins (~DTZUZU@S0106bcd165662a4d.vs.shawcable.net) |
| 17:46:24 | <fluturel> | sm[m]: sorry if it is, should have phrased it a little bit differently |
| 17:46:36 | <dsal> | I sat down to do some "hard" work on that project a couple of nights ago -- resuming partial uploads that failed exactly at the wrong moment where all the bits have been updated but the media wasn't marked completed on GoPro's side. Turns out, it was just a couple lines of code to cover that case. :( |
| 17:46:40 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 17:46:55 | <monochrom> | It would be easier to enumerate just the handful of things Haskell is impractical for. |
| 17:47:01 | × | DTZUZU_ quits (~DTZUZU@205.ip-149-56-132.net) (Ping timeout: 264 seconds) |
| 17:47:14 | <dsal> | fluturel: Nah, Haskell has a reputation of being a weird experimental language for academics. In practice, it's the easiest language I use and the first thing I reach for when I'm doing general computering. |
| 17:47:16 | <sm[m]> | fluturel: anything that doesn't require zero GC pauses, or cheap developers, or running on mobile |
| 17:47:34 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 17:47:54 | → | mu joins (~mu@unaffiliated/mu) |
| 17:47:58 | <dsal> | "running on mobile" is a little unfortunate. Some of my programs are running on tiny ARM computers. |
| 17:48:13 | × | brandstifter quits (~brandstif@62-46-52-151.adsl.highway.telekom.at) () |
| 17:48:23 | <sm[m]> | cool, I should say "running on phones" maybe |
| 17:48:26 | <nshepperd> | haskell is a programming language so easy, even academics can use it! |
| 17:48:29 | <monochrom> | And even those divide into fundamentally impractical vs for-now impractical. |
| 17:49:13 | × | DataComputist quits (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Remote host closed the connection) |
| 17:49:48 | <dsal> | Yeah, it's more about outward requirements. If something has to be written using particular APIs that aren't accessible, then it's not exactly a "Haskell" problem as much as "you're not using the exact language allowed to work with this platform" problem. |
| 17:50:06 | <fluturel> | i thought i read something a few years ago about a company that was making games in haskell for mobile. Can't remember the name though |
| 17:50:16 | <sm[m]> | Keera, they stopped |
| 17:50:45 | <sm[m]> | as far as I know, at least |
| 17:51:24 | <sm[m]> | so yes it is possible to run haskell somehow on phones, but I'd say it's impractical except for the very highly motivated |
| 17:51:32 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:2d4a:f96c:b859:c0ae) (Remote host closed the connection) |
| 17:51:34 | <sm[m]> | for now |
| 17:52:00 | <dsal> | fluturel: A better way to think about this is to think about the types of programs you're interested in writing and whether it'll help you with that. |
| 17:52:09 | → | crobbins joins (~crobbins@2601:2c1:380:ec40:cf6:f95e:2b94:e5c5) |
| 17:52:22 | <geekosaur> | and it's not so much that Haskell doesn't work well, as GHC doesn't work well — but for now at least GHC is the only real option |
| 17:52:28 | <geekosaur> | (I miss jhc still) |
| 17:52:35 | <fluturel> | i was thinking about trying to do a back-end or something in haskell |
| 17:52:57 | <dsal> | Most of my programs are IoT or general commandline utilities or monitoring, stats, etc... And my GoPro junk. And various data processing things. All of that stuff is easy. |
| 17:53:25 | <dolio> | I don't know. Nothing ever worked as well as GHC anyway for most stuff. |
| 17:53:48 | <dsal> | Damn you GHC. Stop making everything else look bad. |
| 17:54:19 | <monochrom> | @quote monochrom downloaded.GHC |
| 17:54:20 | <lambdabot> | monochrom says: I was trying to design a sensible language... then I downloaded ghc. |
| 17:54:25 | × | dhouthoo quits (~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be) (Quit: WeeChat 2.8) |
| 17:54:25 | <geekosaur> | hugs worked pretty well back in the day. but ghc has been alone for so long that other implementations now have to catch up to it as well as implementing standard Haskell :( |
| 17:54:37 | <sm[m]> | but of course GHC makes a lot of other stuff look really good |
| 17:54:39 | <dsal> | The GHC language is kind of big. |
| 17:54:57 | <dsal> | Heh, yeah. I didn't mean to imply GHC is great at all the things. It's a frustrating part of some of mydays. |
| 17:54:57 | <dolio> | Hugs worked, but the stuff people used it for wasn't building applications that GHC is unsuitable for. |
| 17:55:04 | <dolio> | To my knowledge. |
| 17:55:21 | <monochrom> | Actually I think I started with hugs back then, and added GHC later. |
| 17:55:22 | × | oisdk quits (~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 17:55:43 | <geekosaur> | people have at least tried to resuscitate it for use on limited memory platforms iirc |
| 17:56:32 | <nshepperd> | i wish for a ghc which can produce platform independent STG |
| 17:56:53 | <nshepperd> | so i can just write an STG interpreter in java to make things run on phones :> |
| 17:57:12 | <fluturel> | IoT with haskell actually sounds really interesting |
| 17:57:24 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 17:57:54 | → | mu joins (~mu@unaffiliated/mu) |
| 17:58:10 | <davean> | Theres the ghci bytecode? I don't know a ton about it. Bytecode isn't really enough - you need the RTS. |
| 17:58:31 | <monochrom> | "just write an STG interpreter" is also easier said than done. |
| 17:59:05 | <davean> | And why you'd do all that to run Haskell on a phone I don't know |
| 17:59:09 | <davean> | You CAN compile to target a phone |
| 17:59:19 | <davean> | a lot of the hard part is the PDK component |
| 17:59:41 | <monochrom> | which is also what davean said and I had in mind. Interpeter or compiler, you need an RTS or equivalent that does all the amazing multi-green-threading and I/O multiplexing and... |
| 17:59:59 | <dolio> | What happened to the GHC fork that ran on JVM? |
| 18:00:02 | × | ccallahan1 quits (~ccallahan@195.140.213.38) () |
| 18:00:18 | <davean> | dolio: which one? eta? |
| 18:00:22 | <davean> | There were a few |
| 18:00:41 | <dolio> | Were there? I was thinking of eta, I think. |
| 18:00:58 | hackage | polysemy-test 0.3.0.0 - Polysemy effects for testing https://hackage.haskell.org/package/polysemy-test-0.3.0.0 (tek) |
| 18:01:19 | <dolio> | Running STG on JVM seems non-trivial anyway, because of the 'fixing space leaks in a garbage collector' thing that the JVM's garbage collector won't be doing. |
| 18:01:32 | <monochrom> | But consider translating hugs from C to Java. :) |
| 18:01:48 | <nshepperd> | dolio: what's that |
| 18:02:13 | → | oisdk joins (~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) |
| 18:02:27 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:02:28 | <dolio> | nshepperd: It's the title of a paper by Wadler, I think. |
| 18:02:36 | <monochrom> | <bad pun time> eta has an ETA of "indefinite" </bad pun time> :) |
| 18:04:05 | × | lucid_0x80 quits (~lucid_0x8@188.253.236.126) (Ping timeout: 240 seconds) |
| 18:04:17 | × | strangeglyph quits (~strangegl@boreeas.net) (Quit: User terminated) |
| 18:04:48 | <phadej> | nshepperd: TL;DR when GC find a value which is fst (a, b); i.e. selector applied to already evaluated constructor, it evaluates it |
| 18:05:04 | <phadej> | thus `b` could be possibly freed |
| 18:05:58 | → | strangeglyph joins (~strangegl@37.120.174.35) |
| 18:06:08 | → | jlamothe joins (~jlamothe@dev.jlamothe.net) |
| 18:07:24 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 18:07:45 | × | obihann quits (~jhann@156.34.160.69) (Ping timeout: 240 seconds) |
| 18:07:54 | → | mu joins (~mu@unaffiliated/mu) |
| 18:08:58 | hackage | polysemy-test 0.3.0.1 - Polysemy effects for testing https://hackage.haskell.org/package/polysemy-test-0.3.0.1 (tek) |
| 18:10:03 | × | mirrorbird quits (~psutcliff@m83-187-173-228.cust.tele2.se) (Quit: Leaving) |
| 18:10:41 | <phadej> | I *guess* if JVM had native notion of thunks, its GCs would do that optimization |
| 18:10:44 | → | jdgr joins (601c428b@gateway/web/cgi-irc/kiwiirc.com/ip.96.28.66.139) |
| 18:12:26 | <nshepperd> | interesting |
| 18:13:52 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 18:14:34 | <dsal> | Is polysemy still a thing? |
| 18:14:34 | <davean> | the 'eta' idea was to use the RTTI/Debugging support to do that optimization, right? |
| 18:15:35 | → | cgfuh joins (~cgfuh@181.167.191.58) |
| 18:16:06 | → | mirrorbird joins (~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) |
| 18:16:15 | <phadej> | davean: I don't know |
| 18:16:40 | → | howdoi joins (uid224@gateway/web/irccloud.com/x-aqxmdshelfofznzr) |
| 18:17:11 | → | DataComputist joins (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) |
| 18:17:32 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 18:17:53 | → | mu joins (~mu@unaffiliated/mu) |
| 18:18:41 | × | coot quits (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 18:18:52 | <pie_> | man I dont know if parser combinators are hard to debug or just parsy as a python parser combinator library... |
| 18:19:02 | <pie_> | i make prgress and get stuck on some self induced bug for hours |
| 18:19:31 | × | esp32_prog quits (yoann@gateway/vpn/protonvpn/esp32prog/x-46565127) (Ping timeout: 256 seconds) |
| 18:19:33 | → | reppertj joins (~textual@pool-96-246-209-59.nycmny.fios.verizon.net) |
| 18:19:44 | → | coot joins (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) |
| 18:19:49 | × | coot quits (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Remote host closed the connection) |
| 18:21:33 | → | m0rphism joins (~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de) |
| 18:21:48 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 18:22:10 | → | lucid_0x80 joins (~lucid_0x8@188.253.236.126) |
| 18:23:28 | hackage | wai-session-postgresql 0.2.1.3 - PostgreSQL backed Wai session store https://hackage.haskell.org/package/wai-session-postgresql-0.2.1.3 (hc) |
| 18:23:32 | → | coot joins (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) |
| 18:23:42 | × | solonarv quits (~solonarv@anancy-653-1-63-100.w109-217.abo.wanadoo.fr) (Ping timeout: 272 seconds) |
| 18:23:57 | × | knupfer quits (~Thunderbi@200116b82c8bb80079b1331ba61465fc.dip.versatel-1u1.de) (Ping timeout: 260 seconds) |
| 18:24:40 | × | kritzefitz quits (~kritzefit@212.86.56.80) (Ping timeout: 260 seconds) |
| 18:25:09 | × | micro quits (~micro@unaffiliated/micro) (Remote host closed the connection) |
| 18:26:11 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 18:26:25 | <nshepperd> | was your problem too much backtracking or not enough backtracking |
| 18:26:46 | <monochrom> | I think parser combinators are harder to debug (than ordinary recursive functions). I tried to add Debug.Trace messages, and quickly realized I couldn't design useful debugging messages. |
| 18:27:24 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 18:27:37 | × | lucid_0x80 quits (~lucid_0x8@188.253.236.126) (Read error: Connection reset by peer) |
| 18:28:00 | → | mu joins (~mu@unaffiliated/mu) |
| 18:31:45 | × | coot quits (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 18:35:44 | → | kritzefitz joins (~kritzefit@212.86.56.80) |
| 18:36:05 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 18:36:25 | <sm[m]> | I have a dbgparse function that I stick into megaparsec parsers. megaparsec itself provides a dbg, also. Such things are definitely needed at times |
| 18:37:23 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 18:37:53 | → | mu joins (~mu@unaffiliated/mu) |
| 18:37:59 | × | geekosaur quits (42d52102@66.213.33.2) (Ping timeout: 245 seconds) |
| 18:38:01 | × | ubert quits (~Thunderbi@91.141.0.190.wireless.dyn.drei.com) (Ping timeout: 258 seconds) |
| 18:40:13 | → | hiptobecubic joins (~john@unaffiliated/hiptobecubic) |
| 18:43:48 | × | gxt quits (~gxt@gateway/tor-sasl/gxt) (Quit: WeeChat 2.9) |
| 18:47:23 | × | Aquazi quits (uid312403@gateway/web/irccloud.com/x-ppgacbnpjvcoyxiy) (Quit: Connection closed for inactivity) |
| 18:47:24 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 18:47:53 | → | mu joins (~mu@unaffiliated/mu) |
| 18:48:01 | × | Saten-san quits (~Saten-san@ip-62-235-73-121.dsl.scarlet.be) (Quit: WeeChat 2.8) |
| 18:50:18 | × | nyd quits (~nyd@unaffiliated/elysian) (Ping timeout: 272 seconds) |
| 18:54:13 | × | oisdk quits (~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 18:55:07 | → | micro joins (~micro@unaffiliated/micro) |
| 18:56:05 | → | crobbins_ joins (~crobbins@2601:2c1:380:ec40:2d4a:f96c:b859:c0ae) |
| 18:56:36 | → | landonf1 joins (~landonf@193.56.252.210) |
| 18:57:23 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 18:57:54 | → | mu joins (~mu@unaffiliated/mu) |
| 18:59:52 | × | crobbins quits (~crobbins@2601:2c1:380:ec40:cf6:f95e:2b94:e5c5) (Ping timeout: 260 seconds) |
| 19:00:27 | × | crobbins_ quits (~crobbins@2601:2c1:380:ec40:2d4a:f96c:b859:c0ae) (Ping timeout: 260 seconds) |
| 19:01:03 | → | abhixec joins (~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) |
| 19:01:25 | → | Thra11 joins (~Thra11@5.1.169.217.in-addr.arpa) |
| 19:02:07 | → | frdg joins (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) |
| 19:03:00 | <glguy> | parser combinators turn you into the parser compiler. using them for more than simple parsers generates debugging challenges and makes it hard to know what the grammar you actually support is |
| 19:03:27 | → | Lycurgus joins (~niemand@98.4.96.130) |
| 19:06:48 | → | geekosaur joins (42d52102@66.213.33.2) |
| 19:07:44 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 19:07:55 | → | mu__ joins (~mu@unaffiliated/mu) |
| 19:09:04 | → | kenran joins (~maier@mue-88-130-62-135.dsl.tropolys.de) |
| 19:09:56 | × | frdg quits (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Remote host closed the connection) |
| 19:12:45 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 19:13:38 | <pie_> | the problem i run into a lot is i dont know which piece of code is causing the error |
| 19:13:41 | × | jedws quits (~jedws@2001:8003:337f:1b00:edc3:4bd4:30b0:401b) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 19:13:45 | <pie_> | i also have no idea when backtracking triggers :P |
| 19:14:02 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye) |
| 19:14:21 | <pie_> | though my code so far afaik doesnt have any deliberate backtracking, so if backtracking happens its probably by mistake |
| 19:15:47 | → | cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net) |
| 19:16:18 | × | fluturel quits (~fluturel@82.137.14.51) (Quit: leaving) |
| 19:16:44 | Lycurgus | had to look at the log, backtracking in hs sounded funny |
| 19:16:57 | <hyperisco> | combinators are supposed to be syntactically relatable to grammar notation like BNF |
| 19:17:10 | <hyperisco> | so you are supposed to be able to understand the grammar that way |
| 19:17:26 | × | mu__ quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 19:17:35 | <ski> | (some familiarity with Prolog, and perhaps in particular DCG, might help) |
| 19:17:54 | → | mu joins (~mu@unaffiliated/mu) |
| 19:18:04 | <hyperisco> | the complication is to watch out for restricted grammar classes (most combinators do not support all CFG) |
| 19:18:13 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 19:18:59 | <hyperisco> | I'd just use combinators that do support all CFG if confusion is the main problem |
| 19:20:45 | × | Mcdukc quits (~oleg@90.255.27.8) (Read error: Connection reset by peer) |
| 19:21:36 | → | v_m_v joins (~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) |
| 19:22:32 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 19:22:48 | <pie_> | im parsing some text file generated by some government land office program |
| 19:22:57 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 19:22:58 | <pie_> | its not exactly parsing friendly but i havent seen any specs either so |
| 19:23:34 | Lycurgus | guesses that most hs parser things are ll or lr without backtracking |
| 19:23:34 | <pie_> | but yeah its not like i have some grammar to code against |
| 19:27:06 | → | crobbins joins (~crobbins@2600:1700:48eb:8490:4a3:9554:f20a:562c) |
| 19:27:28 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds) |
| 19:27:28 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 19:27:54 | → | mu joins (~mu@unaffiliated/mu) |
| 19:29:34 | × | bloodstalker quits (~bloodstal@46.166.187.178) (Ping timeout: 272 seconds) |
| 19:30:48 | → | nyd joins (~nyd@unaffiliated/elysian) |
| 19:34:56 | <sm[m]> | pie_: you need one of those debug functions I mentioned |
| 19:35:18 | <sm[m]> | glguy that's an interesting observation |
| 19:35:27 | <hyperisco> | pie_, if you suspect it is realisable as a CFG then I |
| 19:35:32 | <hyperisco> | 'd start there on paper |
| 19:35:44 | <hyperisco> | and only after succeeding with that worry about the program |
| 19:36:34 | × | v_m_v quits (~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) (Remote host closed the connection) |
| 19:36:52 | <hyperisco> | some combinators instance Monad and can parse some grammars outside CFG |
| 19:37:16 | <hyperisco> | I think best to know the nature of what you're dealing with first |
| 19:37:28 | × | jneira quits (501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206) (Ping timeout: 260 seconds) |
| 19:37:29 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 19:37:54 | → | mu joins (~mu@unaffiliated/mu) |
| 19:38:29 | → | coot joins (~coot@37.30.52.6.nat.umts.dynamic.t-mobile.pl) |
| 19:39:11 | <sm[m]> | pie_: maybe those functions won't work for you but it's worth building one, along the lines of https://hackage.haskell.org/package/hledger-lib-1.19.1/docs/Hledger-Utils-Debug.html#v:traceParse |
| 19:39:47 | × | sooch quits (~sooch@209.6.196.179) (Quit: leaving) |
| 19:39:56 | <sm[m]> | hyperisco: very true |
| 19:40:08 | → | frdg joins (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) |
| 19:40:48 | <frdg> | how does stack decide which version of ghc to use? I use ghcup. I would like the default ghc to be 8.8.3. |
| 19:41:07 | <frdg> | ghc --version returns a different ghc than 8.8.3 |
| 19:41:17 | <glguy> | stack and ghcup are different things |
| 19:42:09 | <frdg> | so different stack versions use different ghc's ? |
| 19:42:10 | → | acidjnk_new joins (~acidjnk@p200300d0c7237802f9328c36b4a510ff.dip0.t-ipconnect.de) |
| 19:42:12 | <geekosaur> | stack installs its own ghc based on the selected/current resolver, and by default ignores any ghc from a different source |
| 19:42:23 | <sm[m]> | By the resolver in the nearest stack.yaml |
| 19:42:57 | hackage | bugsnag-hs 0.2.0.0 - A Bugsnag client for Haskell. https://hackage.haskell.org/package/bugsnag-hs-0.2.0.0 (JasperWoudenberg) |
| 19:43:11 | <geekosaur> | a differet stack release will probably default to a different resolver, but this can be configured by editing a stack.yaml somewhere (either in the current project, or a global default one) |
| 19:43:29 | → | isovector1 joins (~isovector@172.103.216.166) |
| 19:43:43 | <frdg> | oh ok. Now to my next question. How can I change my stack version from 2.3.3 to 2.4? |
| 19:44:26 | <sm[m]> | after that is released, stack upgrade (is one way) |
| 19:45:00 | × | geekosaur quits (42d52102@66.213.33.2) (Remote host closed the connection) |
| 19:45:23 | × | Lycurgus quits (~niemand@98.4.96.130) (Quit: Exeunt) |
| 19:45:34 | <phadej> | weird, I just noticed that stack-2.5 prerelease was tagged |
| 19:45:39 | → | johtso joins (uid563@gateway/web/irccloud.com/x-dfhkalrthzrhztaj) |
| 19:45:41 | <phadej> | I wonder what happened to 2.4 (well, not really) |
| 19:45:50 | <phadej> | https://github.com/commercialhaskell/stack/releases/tag/v2.5.0.1 |
| 19:45:51 | → | v_m_v joins (~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) |
| 19:46:02 | <frdg> | really? I have two machines. On one machine stack --version returns 2.4? When I run stack upgrade both machines say it is the most recent version. |
| 19:46:59 | <phadej> | or hmm. does stack use odd-even numbering (and oddly, with even numbers being development ones) |
| 19:47:16 | <phadej> | i.e. stack-2.4 is some development version? |
| 19:47:30 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 19:47:41 | × | johtso quits (uid563@gateway/web/irccloud.com/x-dfhkalrthzrhztaj) (Disconnected by services) |
| 19:47:54 | → | mu joins (~mu@unaffiliated/mu) |
| 19:48:13 | × | v_m_v quits (~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) (Remote host closed the connection) |
| 19:48:24 | → | ubert joins (~Thunderbi@91.141.0.190.wireless.dyn.drei.com) |
| 19:49:18 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 19:49:35 | <sm[m]> | phadej: strange.. they haven't used that numbering |
| 19:50:24 | <sm[m]> | but I'm glad of the 5125 fix, that will speed up CI builds |
| 19:50:33 | → | Dablyon joins (~godel@173.171.157.121) |
| 19:50:45 | <sm[m]> | frdg: stranger still |
| 19:50:59 | × | kenran quits (~maier@mue-88-130-62-135.dsl.tropolys.de) (Ping timeout: 240 seconds) |
| 19:51:02 | <phadej> | sm[m]: there weren't 2.2 either |
| 19:51:08 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 19:51:51 | <sm[m]> | they only release unstable versions ? :) |
| 19:52:15 | × | mirrorbird quits (~psutcliff@2a00:801:44a:a00b:20c3:c64:eb15:73a2) (Ping timeout: 272 seconds) |
| 19:52:19 | <frdg> | `Version 2.4.0, Git revision 1b1bed5b84b3aed76cf27b02cadd46d09efc611f PRE-RELEASE x86_64 hpack-0.33.0` It does say pre-release I guess? |
| 19:52:44 | <frdg> | everything is working regardless though so I am pretty happy. |
| 19:53:10 | <sm[m]> | ah, well that makes more sense. They must have changed their mind |
| 19:53:40 | <sm[m]> | or it's a dev version numbering scheme like phade said |
| 19:53:51 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 19:54:10 | × | ggole quits (~ggole@2001:8003:8119:7200:4cc1:e316:a6d6:5aec) (Quit: Leaving) |
| 19:54:19 | <sm[m]> | a wrong one |
| 19:55:18 | <sm[m]> | though .0 releases are usually unstable so I suppose it's fair.. |
| 19:55:32 | × | Dablyon quits (~godel@173.171.157.121) (Ping timeout: 272 seconds) |
| 19:56:14 | <int-e> | If 2.0 is a stable release then what version number do you use for the development release leadung up to it? I've seen things like 1.99 and it's ugly. |
| 19:56:47 | <sm[m]> | Ha that's my scheme. It's find it ok |
| 19:56:52 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 19:56:53 | <sm[m]> | I find it |
| 19:57:19 | <sm[m]> | It's forced on me by cabal |
| 19:57:26 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 19:57:27 | <int-e> | Anyway, that's a reason for using odd numbers for stable releases. |
| 19:57:54 | → | mu joins (~mu@unaffiliated/mu) |
| 20:00:49 | → | v_m_v joins (~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) |
| 20:01:28 | pie_ | looks at sm[m]'s link |
| 20:02:05 | <int-e> | You could also skip over 2.0, I guess... |
| 20:02:20 | <int-e> | Or paint a bikeshed. |
| 20:02:45 | <pie_> | i think i kind of have somethign like that |
| 20:03:16 | <sm[m]> | pie_: and here's the other, maybe it's better ? https://hackage.haskell.org/package/megaparsec-9.0.0/docs/Text-Megaparsec-Debug.html |
| 20:03:19 | × | _vaibhavingale_ quits (~Adium@203.188.228.27) (Quit: Leaving.) |
| 20:03:19 | <pie_> | re: the problem is most of the time i dont know which piece of my code is causing the error (and then i bisect or whatever and still dont get why its breaking where its breaking xD) |
| 20:03:40 | × | ahri quits (~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds)) |
| 20:03:46 | <pie_> | maybe i just dont understand the library well enough |
| 20:03:48 | <pie_> | :I |
| 20:03:56 | <sm[m]> | that's why you have to sprinkle loads of these, with different labels |
| 20:04:01 | <pie_> | guess i should learn a different style of parser writing |
| 20:04:16 | → | ahri joins (~ahri@178.209.40.84) |
| 20:05:10 | <sm[m]> | if you look at hledger parsers you'll see lots of these, perhaps commented out.. and if debugging I'll often add more |
| 20:05:18 | <pie_> | *nid* |
| 20:05:21 | <pie_> | *nod* |
| 20:05:38 | <pie_> | there has got to be a better way of doing this |
| 20:06:10 | → | Dablyon joins (~godel@173.171.157.121) |
| 20:06:32 | <sm[m]> | I'm not sure what it is, other than use a parser generator |
| 20:07:03 | <sm[m]> | extensive fine grained tests are also helpful, and tedious |
| 20:07:31 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 20:07:40 | <pie_> | *nod* |
| 20:08:00 | → | mu joins (~mu@unaffiliated/mu) |
| 20:08:59 | <sm[m]> | Interactive testing in ghci, too |
| 20:10:24 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 20:11:00 | × | Dablyon quits (~godel@173.171.157.121) (Ping timeout: 256 seconds) |
| 20:11:13 | × | Rudd0^ quits (~Rudd0@185.189.115.98) (Ping timeout: 246 seconds) |
| 20:11:14 | <sm[m]> | and I suppose being disciplined and consistent, eg in how you handle whitespace, reducing the number of ways to screw up. A lexing phase should help with that but adds complexity too |
| 20:11:45 | → | archaephyrryx joins (~archaephy@straasha.imrryr.org) |
| 20:11:55 | <pie_> | do people have to do this for other parser styles? |
| 20:12:22 | <sm[m]> | but when it's just..not..working you must have a technique to drill in and get visibility on what's happening |
| 20:12:40 | sm[m] | doesn't know |
| 20:12:42 | <pie_> | dont get me wrong i like combinators on some level, and they seem intuitive, except its not going well xD |
| 20:12:55 | <archaephyrryx> | what parser library is this? |
| 20:13:06 | <pie_> | parsy in python, its quite decent |
| 20:13:12 | <pie_> | one could even say good |
| 20:13:18 | <pie_> | but i dont have anything to compare agaisnt really |
| 20:14:10 | <archaephyrryx> | i joined mid-conversation, but I have a bit of experience using (and even writing to a limited extent) parser combinators in Haskell |
| 20:14:13 | × | frdg quits (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Remote host closed the connection) |
| 20:14:15 | <archaephyrryx> | what is the issue? |
| 20:14:52 | <pie_> | it works and then i hit a snag and get stuck for hurs |
| 20:14:55 | <pie_> | hours |
| 20:14:59 | <archaephyrryx> | what does? |
| 20:15:00 | <pie_> | generally hard to debug |
| 20:15:06 | <sm[m]> | can you see the log, archaephyrryx? |
| 20:15:23 | <pie_> | writing parser combinators is hard to debug (for me) |
| 20:15:52 | <pie_> | also tbh i shouldnt have to write print statements everywhere, it shuld be possible to point to something and figure out wtf is going on there |
| 20:16:02 | <pie_> | but im not sure what kind of tooling would need to be in the library for that |
| 20:16:04 | <archaephyrryx> | have you looked into HasCallStack |
| 20:16:42 | <pie_> | i havent had much luck with making sense of whats going on using the pycharm debugger, though maybe i didnt try hard enough |
| 20:16:51 | <archaephyrryx> | don't have much experience using it personally but it seems useful for tracing bugs in deeply nested calls |
| 20:16:57 | <sm[m]> | pie_: it's actually fine, I may have overstated. Often putting the trace in one likely place will give you the insight to fix it |
| 20:17:14 | <sm[m]> | and it's quick to do via ghci |
| 20:17:25 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 20:17:31 | × | s00pcan quits (~chris@075-133-056-178.res.spectrum.com) (Ping timeout: 246 seconds) |
| 20:17:54 | → | mu joins (~mu@unaffiliated/mu) |
| 20:17:59 | <pie_> | sm[m]: i can do something like .map(debug) in a parser chain where debug is def debug(x): print(x); return x |
| 20:18:17 | <pie_> | its helped but i have to turn it off and on (which you mentioned) and doesnt fix everything |
| 20:18:25 | <sm[m]> | but.. I'm slowly realizing that you're adking for help with something quite different from what I'm talking about |
| 20:18:26 | <pie_> | hm i guess i should add showing parser state to that somehow |
| 20:18:53 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 260 seconds) |
| 20:19:04 | <pie_> | i mean, theres libary specifics but there should be general approaches amenable to the design of monadic combinators in general i think |
| 20:19:28 | → | s00pcan joins (~chris@107.181.165.217) |
| 20:19:56 | <archaephyrryx> | can't figure out how to view the log sm[m] |
| 20:20:06 | → | alexkubicail joins (~alexkubic@37.142.205.101) |
| 20:20:23 | <sm[m]> | Yes; that was the point of my first reply to you. You need a specialized trace helper that prints the parser state - what text it's looking at etc. |
| 20:20:36 | <pie_> | *nod* |
| 20:21:04 | <sm[m]> | ircbrowse.tomsmeding.com archaephyrryx |
| 20:21:04 | <pie_> | so, do you think theres a way to integrate the tracer so you dont have to manually add calls if you need them? |
| 20:21:20 | → | chaosmasttter joins (~chaosmast@p200300c4a7105f013091658b0e650c79.dip0.t-ipconnect.de) |
| 20:21:31 | <sm[m]> | certainly, in the parser engine, why not |
| 20:21:31 | <pie_> | well i guess that comes down to wrapping every function |
| 20:21:31 | → | totallynotnate joins (~nate@125.161.70.37) |
| 20:21:56 | <sm[m]> | The challenge is not being so verbose that you can't read it |
| 20:22:01 | <pie_> | i guess parser combinators dont really have an engine? isnt it just a style of signatures? |
| 20:22:06 | <pie_> | yeah |
| 20:22:41 | <sm[m]> | I have assigned priorities to trace statements so I could filter by level |
| 20:23:32 | <pie_> | maybe something you could to is tell it to trace between sections of the text |
| 20:23:36 | <pie_> | so from char x to char y |
| 20:23:43 | <sm[m]> | I don't know about your python lib. Haskell parser combinators run via a parser engine |
| 20:23:57 | <pie_> | ok |
| 20:23:57 | <sm[m]> | sounds good |
| 20:24:08 | <sm[m]> | There is a lot of room for better tooling here |
| 20:24:33 | <pie_> | ive googled stuff like "debuggign parser combinators" in the past but i never really saw anything relevan |
| 20:24:35 | <pie_> | t |
| 20:24:51 | <pie_> | doesnt mean it doesnt exist but i didnt find the right people or material... |
| 20:25:04 | <pie_> | people dont seem to design for introspectability much |
| 20:25:23 | <pie_> | i feel like im the idiot though, idk |
| 20:25:43 | <sm[m]> | I have built some complex parsers with combinators but perhaps it's a thing people don't do much |
| 20:25:56 | <pie_> | you seem to have managed |
| 20:26:07 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 20:26:14 | <archaephyrryx> | have you tried copying the source code and running it yourself with modifications to enhance debuggability |
| 20:26:36 | <pie_> | the parser im building doesnt seem horribly complex. ok maybe its not simple, im not sure, what i need to do is decompose it into small iterative steps so i can manage it |
| 20:26:42 | <sm[m]> | yes, by making debug tools.. and still with a lot of labour. Otherwise, it was impossible |
| 20:27:16 | <phadej> | running your parser on smaller inputs and verifying that things which you think should be accepted are actualyl accepted |
| 20:27:22 | <pie_> | the part i started making progress was when i finally figured out how to use bind in the library xD and decompose the large text into some major sections |
| 20:27:25 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 20:27:33 | <phadej> | I see often that person writes 1000 lines of code, *and* then tries to run it for the first time |
| 20:27:37 | <phadej> | don't be that person |
| 20:27:37 | <pie_> | yeah |
| 20:27:50 | <pie_> | i still do that sometimes despite knowing better - not to that extent though |
| 20:27:57 | <pie_> | it helps to have automated tests |
| 20:28:00 | <sm[m]> | right.. fine grained tests of smaller pieces as mentioned. All of the techniques are needed and complementary |
| 20:28:01 | → | mu joins (~mu@unaffiliated/mu) |
| 20:28:04 | <pie_> | but for a while i didnt even know what to test |
| 20:28:40 | <pie_> | actually, the zeroth big step to actually making progress was writing code to test my parser on the corpus i have instead of f***ing with testing on soem files manually |
| 20:28:52 | <pie_> | i should learn how to use some python test framework... |
| 20:29:04 | × | s00pcan quits (~chris@107.181.165.217) (Ping timeout: 256 seconds) |
| 20:29:20 | <pie_> | the reason i havent written unit tests was id have to figure out what sections of the corpus to even be copy pasting into separate test cases... |
| 20:29:29 | <pie_> | its kind of a back and forth thing with too many iterations |
| 20:29:32 | <sm[m]> | Fuzz/property tests should be quite useful too but I haven't done it |
| 20:30:00 | <archaephyrryx> | *slowly realizing we are talking about python and not haskell* ...I can't really contribute as much as I thought I could |
| 20:30:01 | → | s00pcan joins (~chris@075-133-056-178.res.spectrum.com) |
| 20:30:18 | <pie_> | archaephyrryx: :P as ive been saying several times i think, but thats a technicality |
| 20:30:33 | <pie_> | ok i should go try to write soem more code and see if i can say anything more |
| 20:31:55 | <archaephyrryx> | on an unrelated note, I was wondering whether anyone had any opinions about a particular stylistic choice in writing haskell |
| 20:32:04 | <sm[m]> | if all else fails, ship it to users and accept pull requests ? |
| 20:32:19 | <sm[m]> | Just kidding |
| 20:32:38 | <pie_> | haha |
| 20:33:08 | <archaephyrryx> | when writing a function whose LHS has one fewer variable binding than it is ever called with (f :: a -> b -> c; f x = ...) |
| 20:33:09 | <sm[m]> | archaephyrryx: nope. Opinions on style ? Never seen that |
| 20:34:13 | <archaephyrryx> | is it appropriate to write the RHS using `$` to obviate nested parentheses when the implicit missing argument would necessitate parentheticals |
| 20:34:40 | <pie_> | Wow I completely forgot I ran into this issue before... https://github.com/python-parsy/parsy/issues/34 :/ |
| 20:34:48 | <sm[m]> | I lied. There's a dozen dueling haskell formatting tools and style guides |
| 20:35:38 | <archaephyrryx> | e.g.: f x {- implicit y -} = g $ h $ x |
| 20:35:52 | × | nbloomf quits (~nbloomf@2600:1700:83e0:1f40:d985:da37:6cf:2ad4) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 20:35:59 | <archaephyrryx> | rather than |
| 20:36:16 | <archaephyrryx> | f x {- implicit y -} = g (h x) {- implicit y -} |
| 20:36:34 | <archaephyrryx> | any thoughts? |
| 20:36:51 | <sm[m]> | f = g . h is often seen |
| 20:36:53 | <dolio> | I would probably never write `g $ h $ x`. |
| 20:37:06 | <archaephyrryx> | i am not writing the actual code |
| 20:37:14 | <archaephyrryx> | this is a contrived abstraction |
| 20:37:24 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 20:37:50 | <archaephyrryx> | it really looks more like |
| 20:37:54 | → | mu joins (~mu@unaffiliated/mu) |
| 20:38:27 | hackage | cryptocompare 0.1.2 - Haskell wrapper for the cryptocompare API https://hackage.haskell.org/package/cryptocompare-0.1.2 (aviaviavi) |
| 20:38:29 | <archaephyrryx> | func1 arg1 = doWork $ func2 $ func3 arg1 |
| 20:39:08 | <archaephyrryx> | where there is an extra implicit argument that lacks a binding in the actual definition |
| 20:39:46 | <dolio> | That's also `doWork . func2 . func3`. |
| 20:40:17 | <archaephyrryx> | the first binding has a strictness annotation (!) so that isn't viable |
| 20:40:19 | × | totallynotnate quits (~nate@125.161.70.37) (Quit: WeeChat 2.9) |
| 20:40:37 | × | alexkubicail quits (~alexkubic@37.142.205.101) (Ping timeout: 256 seconds) |
| 20:40:47 | × | v_m_v quits (~vm_v@2a02:aa12:3200:6480:f507:71a:9334:3099) (Ping timeout: 260 seconds) |
| 20:40:56 | <glguy> | too late, you left that out of your simplified problem code, so you don't get to use it |
| 20:41:26 | <archaephyrryx> | but the invisible dragon *is* flour-permeable, I swear it always was |
| 20:42:09 | × | isovector1 quits (~isovector@172.103.216.166) (Quit: Leaving) |
| 20:42:10 | <dolio> | I still don't repeat $ usually, I use . |
| 20:42:20 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 20:42:31 | → | isovector1 joins (~isovector@172.103.216.166) |
| 20:42:53 | × | edwardk quits (sid47016@haskell/developer/edwardk) (Quit: Connection closed for inactivity) |
| 20:43:34 | <dolio> | But what I do depends on the actual code, and may be different from simplifications, because I don't follow rules by rote. |
| 20:43:56 | johnw_ | is now known as johnw |
| 20:46:22 | <archaephyrryx> | I typically opt for point-free style and don't use `$` very often but I am collaborating with someone with a completely opposite style and so have been subconsciously splitting the difference for this project |
| 20:46:26 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 20:46:42 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 20:47:49 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 20:47:55 | → | mu__ joins (~mu@unaffiliated/mu) |
| 20:48:33 | <monochrom> | dragon and flour?! If the dragon breathes fire, and the flour is aerosoled, that's a fuel-air bomb waiting to happen >_< |
| 20:49:05 | <archaephyrryx> | was that reference too obscure? I don't know how common it is |
| 20:49:24 | [exa] | votes for obscure |
| 20:49:27 | <monochrom> | All references are too obscure. :) |
| 20:49:53 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:4407:fff6:2258:7a65) (Ping timeout: 272 seconds) |
| 20:50:26 | <monochrom> | Every cultural reference is well-known to 100% of the community consisting of the solely the speaker. |
| 20:50:50 | <archaephyrryx> | it was an example about irrational claims involving shifting goalposts to thwart potential experimental counter-evidence |
| 20:51:35 | <monochrom> | Please don't worry about me. I was just spotting a huge fire/explosion hazard. :) |
| 20:51:50 | <archaephyrryx> | posed by Carl Sagan |
| 20:52:05 | <archaephyrryx> | https://en.wikipedia.org/wiki/The_Demon-Haunted_World#Dragon_in_my_garage |
| 20:52:52 | <monochrom> | A very bad flour explosion accident happened some years ago in Taiwan, in a party or festive celebration or something featuring flour in the air. |
| 20:53:42 | <monochrom> | Yikes, the Carl Sagan dragon does breathe fire. |
| 20:54:28 | × | ystael quits (~ystael@209.6.50.55) (Ping timeout: 260 seconds) |
| 20:54:46 | <monochrom> | And now my turn to give an obscure reference. |
| 20:55:34 | <monochrom> | Imagine that, replying to "the fire-breathing dragon is invisible and floating", you say "so how about we spread flour in the air and see if we survive" |
| 20:56:16 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds) |
| 20:56:27 | <monochrom> | This will lead to a "no-dead-body problem". |
| 20:56:36 | <[exa]> | re 'The inability to invalidate the hypotesis is not at all the same thing as proving it true'....well here we've got undecidability&complexity reductions. :D |
| 20:57:26 | × | mu__ quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 20:57:38 | → | wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) |
| 20:57:54 | → | mu joins (~mu@unaffiliated/mu) |
| 20:58:11 | <monochrom> | This is an obscure reference to a criticism of claims of cold fusion back then. If cold fusion happened, it should generate more than enough neutrons to kill everyone around. But everyone around was living just fine. This was the "no-dead-body question", or perhaps the "dead-body question". |
| 20:58:42 | <monochrom> | or s/question/problem/ or something |
| 21:00:01 | × | landonf1 quits (~landonf@193.56.252.210) () |
| 21:00:13 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 21:00:22 | <monochrom> | Thanks for the link. It's a good read. <3 Sagan |
| 21:00:45 | monochrom | hops over to amazon |
| 21:00:50 | × | ubert quits (~Thunderbi@91.141.0.190.wireless.dyn.drei.com) (Remote host closed the connection) |
| 21:01:22 | <archaephyrryx> | There is another version where the suggestion to throw flour in the air to outline the shape of the dragon was countered with "the dragon is permeable to flour" |
| 21:01:39 | <archaephyrryx> | which is what I was referencing originally |
| 21:01:44 | <monochrom> | Ah yeah. |
| 21:01:49 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 21:02:12 | <monochrom> | But I play my "why are we still alive?" card. :) |
| 21:02:16 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:c98f:bbb5:ca9:3c24) |
| 21:02:26 | <archaephyrryx> | anthropic principle to the rescue |
| 21:02:30 | <archaephyrryx> | just like qunatum-bogosort |
| 21:05:33 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 21:05:33 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 21:05:55 | <dmwit> | It says very clearly in the link that the dragon's fire is heatless. |
| 21:06:05 | <dmwit> | So of course throwing flour in the air doesn't kill us. |
| 21:06:11 | → | sfvm joins (~sfvm@37.228.215.148) |
| 21:06:28 | <monochrom> | Oops. |
| 21:06:45 | <monochrom> | Does that still count as fire? heh |
| 21:07:00 | <dmwit> | Yeah, that's... sort of Sagan's conclusion, too. |
| 21:07:11 | <dmwit> | Does this even count as a dragon if there's no way to observe it being a dragon? |
| 21:07:30 | <monochrom> | It's like Tigger but s/tiger/dragon/ |
| 21:07:31 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 21:07:54 | → | mu joins (~mu@unaffiliated/mu) |
| 21:08:21 | <monochrom> | http://www.vex.net/~trebla/photo/unorganized/dragon.jpg |
| 21:09:00 | <dsal> | Lazy IO is the best! My programs all run instantly! Sometimes takes a while to print the output, though. |
| 21:09:31 | <monochrom> | Um that's not lazy I/O. That's just output buffering. |
| 21:09:43 | <monochrom> | OK you were joking. Haha. |
| 21:10:00 | <cheater> | monochrom: it's not output buffering, his dot matrix printer is just a bit slow |
| 21:10:10 | <monochrom> | I do have students confused by output buffering. And it's a C course. |
| 21:10:20 | <monochrom> | hahaha |
| 21:10:53 | <cheater> | monochrom: if it's a C course, make sure to get the shellfish |
| 21:11:03 | <monochrom> | hahahaha |
| 21:11:38 | <monochrom> | The course is a unix course too, there is shell. I'll have to think how to turn shell into shellfish. |
| 21:11:49 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 21:12:25 | → | fluturel joins (~fluturel@82.137.14.51) |
| 21:12:45 | × | fluturel quits (~fluturel@82.137.14.51) (Client Quit) |
| 21:13:52 | × | noecho quits (~noecho@2a01:4f8:1c0c:80ee::4223) (Quit: ZNC - http://znc.in) |
| 21:14:19 | → | noecho joins (~noecho@2a01:4f8:1c0c:80ee::4223) |
| 21:14:20 | <dmwit> | Oh, hell. I'm a professional programmer that does programming stuff for... well, not quite 8 hours a day ;-)... and I still occasionally get flummoxed by output buffering. |
| 21:15:14 | <MarcelineVQ> | The trick is to put a couple people between you and the problem. |
| 21:15:50 | <c_wraith> | so... input buffering? |
| 21:15:57 | <dmwit> | Ahhh, problem buffering! Why didn't I think of that? |
| 21:16:36 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds) |
| 21:16:42 | → | carlomagno1 joins (~cararell@inet-hqmc02-o.oracle.com) |
| 21:17:23 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 21:17:32 | × | wonko7 quits (~wonko7@2a01:e35:2ffb:7040:8c5f:831a:4acc:45dd) (Ping timeout: 260 seconds) |
| 21:17:45 | × | carlomagno quits (~cararell@inet-hqmc02-o.oracle.com) (Ping timeout: 265 seconds) |
| 21:17:54 | → | mu joins (~mu@unaffiliated/mu) |
| 21:20:42 | × | hyperisco quits (~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 256 seconds) |
| 21:20:45 | <dsal> | monochrom: Oh sorry, I was going for the one where I do all this awesome parallelism and the parallel functions compute the IO actions immediately, and then they all happen sequentially when the output is needed. |
| 21:21:41 | <monochrom> | Ah. |
| 21:21:57 | hackage | aeson-schemas 1.3.1 - Easily consume JSON data on-demand with type-safety https://hackage.haskell.org/package/aeson-schemas-1.3.1 (leapyear) |
| 21:22:11 | → | falafel_ joins (~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) |
| 21:22:20 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 21:26:49 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds) |
| 21:27:24 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 21:28:02 | → | mu joins (~mu@unaffiliated/mu) |
| 21:31:50 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 21:31:56 | <cheater> | monochrom: just use the C shell |
| 21:32:07 | <monochrom> | Ah, neato |
| 21:32:31 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 21:32:34 | <monochrom> | Hey, I now recall that "fish shell" exists, too. |
| 21:35:52 | × | AlterEgo- quits (~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving) |
| 21:36:11 | × | dhil quits (~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 240 seconds) |
| 21:36:56 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 21:37:50 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 21:38:03 | → | mu__ joins (~mu@unaffiliated/mu) |
| 21:39:56 | → | aarvar joins (~foewfoiew@50.35.43.33) |
| 21:40:02 | → | sand_dull joins (~theuser@62.182.99.37) |
| 21:41:56 | <maerwald> | it's nice |
| 21:42:02 | × | nyd quits (~nyd@unaffiliated/elysian) (Quit: nyd) |
| 21:42:33 | <maerwald> | finally someone figured out that shell is about ergonmics, not features |
| 21:42:37 | × | falafel_ quits (~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Ping timeout: 260 seconds) |
| 21:42:44 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 21:42:47 | <maerwald> | (when I need features, I switch to bash temporarily) |
| 21:45:01 | × | crobbins quits (~crobbins@2600:1700:48eb:8490:4a3:9554:f20a:562c) (Remote host closed the connection) |
| 21:45:22 | → | thir joins (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) |
| 21:47:38 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds) |
| 21:47:38 | × | mu__ quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 21:48:00 | → | mu joins (~mu@unaffiliated/mu) |
| 21:48:07 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 21:48:54 | × | sand_dull quits (~theuser@62.182.99.37) (Ping timeout: 272 seconds) |
| 21:49:02 | <monochrom> | It's probably a programmer trait to prefer features to ergonomics, syntax to semantics. |
| 21:49:13 | → | falafel_ joins (~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) |
| 21:49:43 | <monochrom> | or generally a human trait to prefer superficial to careful |
| 21:50:39 | × | cgfuh quits (~cgfuh@181.167.191.58) (Quit: WeeChat 2.9) |
| 21:51:24 | <Cale> | In the words of Bob the Angry Flower: "I can't drink *possible* beers, I need *actual* beers! Damn you, quantum physics!" |
| 21:51:30 | <pie_> | sm[m]: well, if you have any suggestions: <_aD> It's fascinating to see how different people's idea of "big" is in computing, and how they handle it. |
| 21:51:32 | <pie_> | whoops |
| 21:51:41 | <pie_> | sm[m]: https://github.com/python-parsy/parsy/issues/48 |
| 21:53:22 | × | thir quits (~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 21:56:30 | → | aj1 joins (~aj@185.204.1.185) |
| 21:57:00 | <ddellacosta> | omg I forgot about Bob the Angry Flower, thank you Cale |
| 21:57:50 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 21:57:56 | → | mu__ joins (~mu@unaffiliated/mu) |
| 21:58:26 | → | luke joins (~luke@bitnomial/staff/luke) |
| 22:00:38 | → | Rudd0 joins (~Rudd0@185.189.115.98) |
| 22:01:01 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Remote host closed the connection) |
| 22:01:24 | → | GyroW joins (~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be) |
| 22:01:25 | × | GyroW quits (~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be) (Changing host) |
| 22:01:25 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 22:01:49 | <dsal> | I used to use tcsh a lot way back in the day and people mocked me for various scripting things you couldn't do in tcsh. I'm like... I write my scripts in bourne shell, but I don't hang out there. |
| 22:02:20 | <dsal> | A friend had me try nushell which is... an idea. But it's a bit ununixy and a big uphill battle. |
| 22:04:43 | × | shafox quits (~shafox@106.51.234.111) (Remote host closed the connection) |
| 22:04:44 | × | ryansmccoy quits (~ryansmcco@193.37.254.27) (Ping timeout: 272 seconds) |
| 22:05:45 | → | ryansmccoy joins (~ryansmcco@156.96.151.132) |
| 22:06:00 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 22:07:33 | × | mu__ quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 22:08:02 | → | mu joins (~mu@unaffiliated/mu) |
| 22:10:58 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Remote host closed the connection) |
| 22:11:22 | → | GyroW joins (~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be) |
| 22:11:22 | × | GyroW quits (~GyroW@ptr-48ujrfb8c7gfd2lu92q.18120a2.ip6.access.telenet.be) (Changing host) |
| 22:11:22 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 22:11:53 | × | chaosmasttter quits (~chaosmast@p200300c4a7105f013091658b0e650c79.dip0.t-ipconnect.de) (Quit: WeeChat 2.9) |
| 22:13:10 | <ski> | @where thwap |
| 22:13:10 | <lambdabot> | "Bob the Angry Flower's Quick Guide to" : "the apostrophe" in 2010-02 at <http://eloquentscience.com/wp-content/uploads/2010/02/bobsqu.gif>,"its and it's" in 2010-03 at <http://eloquentscience.com/ |
| 22:13:11 | <lambdabot> | wp-content/uploads/2010/03/angry-flower-guide-to-its.gif> ) |
| 22:13:21 | <ski> | ddellacosta,Cale ^ |
| 22:13:27 | <dolio> | Wow, nushell has like 3 corporate buzzwords phrases in the first two sentences describing it. |
| 22:15:15 | × | Erato quits (585fd1fd@ti0203q160-5312.bb.online.no) (Remote host closed the connection) |
| 22:15:35 | × | mu quits (~mu@unaffiliated/mu) (Quit: mu) |
| 22:16:11 | × | luke quits (~luke@bitnomial/staff/luke) (Quit: sleep) |
| 22:16:16 | <ski> | monochrom : don't forget Fᵢ-shell <http://fishell.sf.net> :) |
| 22:16:54 | <ski> | (partially inspired by logic programming) |
| 22:21:40 | × | jonatanb quits (~jonatanb@83.24.231.247.ipv4.supernova.orange.pl) (Quit: Leaving...) |
| 22:21:42 | × | falafel_ quits (~falafel@2605:e000:1527:d491:f090:20fe:cddf:2a1a) (Ping timeout: 260 seconds) |
| 22:23:45 | × | evanjs quits (~evanjs@075-129-188-019.res.spectrum.com) (Ping timeout: 240 seconds) |
| 22:24:51 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 22:25:40 | × | eruditass quits (uid248673@gateway/web/irccloud.com/x-eolintwxiwbmuxmq) (Quit: Connection closed for inactivity) |
| 22:26:44 | alanz_ | is now known as alanz |
| 22:28:45 | × | fendor quits (~fendor@91.141.3.153.wireless.dyn.drei.com) (Remote host closed the connection) |
| 22:28:58 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 260 seconds) |
| 22:29:12 | × | tomku quits (~tomku@unaffiliated/tomku) (Ping timeout: 256 seconds) |
| 22:29:16 | → | evanjs joins (~evanjs@075-129-188-019.res.spectrum.com) |
| 22:30:07 | <ddellacosta> | ski: :-D |
| 22:34:01 | × | ahri quits (~ahri@178.209.40.84) (Quit: Ping timeout (120 seconds)) |
| 22:34:04 | → | mu joins (~mu@unaffiliated/mu) |
| 22:34:15 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 22:34:45 | → | mu joins (~mu@unaffiliated/mu) |
| 22:34:48 | → | ahri joins (~ahri@178.209.40.84) |
| 22:35:46 | → | tomku joins (~tomku@unaffiliated/tomku) |
| 22:37:02 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 22:37:45 | → | nbloomf joins (~nbloomf@2600:1700:83e0:1f40:39e7:ae73:eac9:cd04) |
| 22:39:24 | × | irc_user quits (uid423822@gateway/web/irccloud.com/x-kojvjfqrylgayrvg) (Quit: Connection closed for inactivity) |
| 22:39:45 | × | __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving) |
| 22:42:18 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 22:44:16 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 22:44:45 | → | mu joins (~mu@unaffiliated/mu) |
| 22:46:39 | × | DataComputist quits (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Quit: Leaving...) |
| 22:49:34 | → | oisdk joins (~oisdk@2001:bb6:3329:d100:fd58:7633:8b1d:97) |
| 22:49:58 | × | o1lo01ol1o quits (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Remote host closed the connection) |
| 22:50:37 | → | o1lo01ol1o joins (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) |
| 22:51:34 | × | nbloomf quits (~nbloomf@2600:1700:83e0:1f40:39e7:ae73:eac9:cd04) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 22:54:15 | × | mu quits (~mu@unaffiliated/mu) (Read error: Connection reset by peer) |
| 22:54:46 | → | mu joins (~mu@unaffiliated/mu) |
| 22:55:13 | × | o1lo01ol1o quits (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 260 seconds) |
| 22:59:23 | → | DataComputist joins (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) |
| 23:00:36 | → | alexm_ joins (~alexm_@161.8.233.138) |
| 23:01:21 | × | archaephyrryx quits (~archaephy@straasha.imrryr.org) () |
| 23:02:09 | × | elliott_ quits (~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) (Ping timeout: 265 seconds) |
| 23:02:15 | <maerwald> | can you tell ormolu the indent size? |
| 23:02:48 | <monochrom> | No, tell formolu instead. |
| 23:03:07 | Guest86631 | is now known as z0 |
| 23:03:23 | × | mu quits (~mu@unaffiliated/mu) (Quit: mu) |
| 23:03:44 | <maerwald> | https://github.com/tweag/ormolu/issues/637 |
| 23:03:46 | <maerwald> | lol |
| 23:04:33 | × | wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 256 seconds) |
| 23:05:08 | → | rprije joins (~rprije@27.143.220.203.dial.dynamic.acc01-myal-dub.comindico.com.au) |
| 23:05:32 | × | alexm_ quits (~alexm_@161.8.233.138) (Ping timeout: 272 seconds) |
| 23:05:37 | → | nbloomf joins (~nbloomf@2600:1700:83e0:1f40:9c30:b346:e09c:915) |
| 23:05:55 | <maerwald> | consistency across projects that are alien to one another is big nonsense imo |
| 23:07:37 | <dsal> | ormolu is really awful. I know some people like the elm-inspired style, but it's actively bad. |
| 23:08:47 | × | shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection) |
| 23:09:36 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 23:10:31 | → | wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) |
| 23:10:34 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 23:10:40 | → | thewormkill joins (~thewormki@unaffiliated/twk-) |
| 23:10:45 | → | iinuwa1 joins (iinuwamatr@gateway/shell/matrix.org/x-thwbsslmbetrqwug) |
| 23:10:59 | → | Randy_ joins (randy@freebsd/user/randy) |
| 23:11:14 | → | jneira joins (501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206) |
| 23:11:22 | <maerwald> | uh... the way it breaks down long function signatures is odd |
| 23:11:25 | → | michaelpj1 joins (michaelpjm@gateway/shell/matrix.org/x-zdqnoycusovyxytr) |
| 23:11:27 | <maerwald> | -> is at the end of the line |
| 23:11:30 | → | DANtheBEASTman joins (dysfigured@2600:3c00::f03c:92ff:feb4:be75) |
| 23:11:31 | × | atk quits (~Arch-TK@ircpuzzles/staff/Arch-TK) (Quit: Well this is unexpected.) |
| 23:11:43 | → | atk joins (~Arch-TK@ircpuzzles/staff/Arch-TK) |
| 23:12:00 | <maerwald> | the end of a line is naturally what your eyes skip with a 50% chance |
| 23:12:08 | → | DavSanchez[m]1 joins (davsanchez@gateway/shell/matrix.org/x-intvmspuzeodooky) |
| 23:12:43 | <justsomeguy> | dsal: If you like shells, I found this awesome page of weird unix shells ... https://github.com/oilshell/oil/wiki/ExternalResources |
| 23:12:55 | <ski> | maerwald : yea .. |
| 23:12:56 | <dsal> | Some people have weird style preferences and very strong views that everyone should use them. (I say "weird" in the sense that it's just different from all the code I read when I was learning stuff, and a major disruption from stylish-haskell as I've been using it). |
| 23:13:17 | × | iinuwa quits (iinuwamatr@gateway/shell/matrix.org/x-cpxacqnfoehfxudr) (Ping timeout: 246 seconds) |
| 23:13:17 | × | twk- quits (~thewormki@unaffiliated/twk-) (Ping timeout: 246 seconds) |
| 23:13:17 | × | dysfigured quits (dysfigured@2600:3c00::f03c:92ff:feb4:be75) (Ping timeout: 246 seconds) |
| 23:13:17 | × | Randy quits (randy@freebsd/user/randy) (Read error: Connection reset by peer) |
| 23:13:17 | × | michaelpj quits (michaelpjm@gateway/shell/matrix.org/x-vziiihintzllemir) (Ping timeout: 246 seconds) |
| 23:13:18 | × | SlackIntegration quits (slackbotma@gateway/shell/matrix.org/x-knwcnagkikvaicmj) (Ping timeout: 246 seconds) |
| 23:13:18 | × | DavSanchez[m] quits (davsanchez@gateway/shell/matrix.org/x-rxubxddrjnvzmpdu) (Ping timeout: 246 seconds) |
| 23:13:18 | DANtheBEASTman | is now known as dysfigured |
| 23:13:18 | <dsal> | justsomeguy: I just kind of live in shells. I eventually gave up on trying to build a perfect environment. |
| 23:13:18 | Randy_ | is now known as Randy |
| 23:14:42 | <dsal> | I eventually started using bash so I wouldn't be That Weird Guy, and then recently OS X told me I need to move out of bash because it's not shiny enough. |
| 23:14:56 | <yushyin> | monochrom: afaik the fork is fourmolu (minor typo) |
| 23:15:20 | <dsal> | Wait, is it really just ormolu with s/2/4/g ? |
| 23:15:23 | <justsomeguy> | dsal: I've pretty much standardized on bash, too, but I do enjoy experimenting with other things. |
| 23:15:33 | <ski> | dsal : back to tcsh, or what ? |
| 23:15:35 | <dsal> | justsomeguy: nushell was neat, but I did break it pretty quickly. heh. joys of nix, though. |
| 23:15:44 | <dsal> | ski: OS X is moving folks to zsh |
| 23:15:49 | <ski> | mhm |
| 23:15:53 | <dsal> | But yeah, that's a good point. OS X was tcsh when I started using it. |
| 23:16:07 | ski | 's still using TCsh .. |
| 23:16:56 | oats | is now known as oa |
| 23:23:41 | × | reppertj quits (~textual@pool-96-246-209-59.nycmny.fios.verizon.net) (Quit: Textual IRC Client: www.textualapp.com) |
| 23:25:32 | × | thc202 quits (~thc202@unaffiliated/thc202) (Ping timeout: 260 seconds) |
| 23:28:27 | × | cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving) |
| 23:28:28 | × | ryansmccoy quits (~ryansmcco@156.96.151.132) (Ping timeout: 260 seconds) |
| 23:29:25 | → | ryansmccoy joins (~ryansmcco@193.37.254.27) |
| 23:29:45 | × | isovector1 quits (~isovector@172.103.216.166) (Ping timeout: 240 seconds) |
| 23:35:17 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 23:36:29 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
| 23:38:30 | → | snakemasterflex joins (~snakemast@213.100.206.23) |
| 23:39:34 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection) |
| 23:40:51 | × | ryansmccoy quits (~ryansmcco@193.37.254.27) (Ping timeout: 258 seconds) |
| 23:41:10 | → | ryansmccoy joins (~ryansmcco@193.37.254.27) |
| 23:41:53 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 260 seconds) |
| 23:43:00 | → | polyrain joins (~polyrain@2001:8003:e501:6901:d8b0:8850:f51:bc36) |
| 23:43:19 | → | josh_ joins (~josh@c-67-164-104-206.hsd1.ca.comcast.net) |
| 23:43:23 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 23:43:25 | × | snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 264 seconds) |
| 23:43:39 | × | josh_ quits (~josh@c-67-164-104-206.hsd1.ca.comcast.net) (Remote host closed the connection) |
| 23:49:46 | → | Henson joins (~kvirc@24-246-25-37.cable.teksavvy.com) |
| 23:56:15 | → | wroathe_ joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 23:58:34 | → | kirill joins (~user@135-23-120-233.cpe.pppoe.ca) |
| 23:58:37 | × | wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 272 seconds) |
| 23:59:30 | <kirill> | hi all, I was looking at some docs and saw this definition "class Monad m => Blah k v m | m -> k, m -> v where [...]". what does the "| m -> k, m -> v" mean in this context? |
All times are in UTC on 2020-09-25.