2021-06-21 00:00:05 +0200 | <geekosaur> | there are some who prefer not to use mtl but they still use transformers, with different packages over it (generally effect systems) |
2021-06-21 00:00:16 +0200 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
2021-06-21 00:01:32 +0200 | <qrpnxz> | oh monad transformers, i heard these are some big deal monad composer thing or something idk xD |
2021-06-21 00:02:27 +0200 | moet | (~moet@172.58.38.245) (Ping timeout: 265 seconds) |
2021-06-21 00:02:30 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-21 00:03:29 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 00:04:29 +0200 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Client Quit) |
2021-06-21 00:04:38 +0200 | unyu | (~pyon@user/pyon) (Quit: WeeChat 3.2) |
2021-06-21 00:09:25 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) |
2021-06-21 00:11:09 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2021-06-21 00:11:14 +0200 | jasonu | (~jasonu@166.70.242.157) |
2021-06-21 00:12:27 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-21 00:14:03 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) (Ping timeout: 265 seconds) |
2021-06-21 00:17:19 +0200 | bilegeek | (~bilegeek@2600:1008:b017:63a6:c26d:d119:faaa:a6d7) |
2021-06-21 00:20:38 +0200 | jasonu | (~jasonu@166.70.242.157) (Quit: Ping timeout (120 seconds)) |
2021-06-21 00:20:39 +0200 | wolfshappen_ | (~waff@irc.furworks.de) (Ping timeout: 268 seconds) |
2021-06-21 00:21:07 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection) |
2021-06-21 00:21:57 +0200 | _73 | (~user@pool-96-252-123-136.bstnma.fios.verizon.net) |
2021-06-21 00:23:56 +0200 | pera | (~pera@user/pera) (Quit: leaving) |
2021-06-21 00:30:17 +0200 | <remexre> | is https://en.wikipedia.org/wiki/Monad_(functional_programming)#Free_monads just wrong? |
2021-06-21 00:30:39 +0200 | <remexre> | I'm having trouble interpreting the syntax (what language is that...), but the use of F in Bind definitely seems ill-kinded |
2021-06-21 00:31:09 +0200 | <remexre> | and the definition of (>>=) is ill-typed per that definition |
2021-06-21 00:31:41 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-06-21 00:33:50 +0200 | fabfianda | (~fabfianda@mob-5-90-243-109.net.vodafone.it) (Ping timeout: 265 seconds) |
2021-06-21 00:34:01 +0200 | <dminuoso> | remexre: The definition of >>= is indeed wrong, and the rest - I cant quite make it out. |
2021-06-21 00:34:34 +0200 | fabfianda | (~fabfianda@net-109-116-251-109.cust.vodafonedsl.it) |
2021-06-21 00:35:09 +0200 | <remexre> | TBH I'm just gonna rewrite it to be in Haskell then |
2021-06-21 00:35:13 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-06-21 00:36:33 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Remote host closed the connection) |
2021-06-21 00:37:42 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-06-21 00:38:47 +0200 | <dibblego> | remexre: https://gist.github.com/tonymorris/3f534e5ef92990c8c3618411aae07dea |
2021-06-21 00:39:14 +0200 | <dminuoso> | Gah. my ide-bios seems to constantly pick up on my ~/venv directory. :( |
2021-06-21 00:39:21 +0200 | <dminuoso> | It wants to watch all files |
2021-06-21 00:39:38 +0200 | <dminuoso> | I have a multi cradle set up with none for that and some other directories.. |
2021-06-21 00:39:53 +0200 | <remexre> | dibblego: yeah, they don't do applicatives in the other examples, and use different names, so I'm doing it a bit differently, but yeah |
2021-06-21 00:47:32 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
2021-06-21 00:47:35 +0200 | <dminuoso> | Ahh heh. This is lsp-mode, not haskell-language-server |
2021-06-21 00:48:51 +0200 | dhil | (~dhil@195.213.192.47) (Ping timeout: 265 seconds) |
2021-06-21 00:57:45 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 01:00:52 +0200 | trent1 | (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) |
2021-06-21 01:02:17 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-06-21 01:07:31 +0200 | fendor | (~fendor@178.115.131.43.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-06-21 01:09:44 +0200 | fvr | (uid503686@id-503686.highgate.irccloud.com) (Quit: Connection closed for inactivity) |
2021-06-21 01:11:09 +0200 | alx741 | (~alx741@181.196.68.152) |
2021-06-21 01:14:48 +0200 | slack1256 | (~slack1256@181.203.98.105) |
2021-06-21 01:15:00 +0200 | zeenk | (~zeenk@82.76.113.130) (Quit: Konversation terminated!) |
2021-06-21 01:15:11 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) |
2021-06-21 01:16:20 +0200 | nate1 | (~nate@2601:1c0:4201:35b0:580e:3804:cf92:f841) |
2021-06-21 01:18:18 +0200 | moet_ | (~moet@172.58.27.142) (Ping timeout: 265 seconds) |
2021-06-21 01:18:57 +0200 | sh91 | (~sh9@softbank060116136158.bbtec.net) |
2021-06-21 01:19:47 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) (Ping timeout: 265 seconds) |
2021-06-21 01:19:47 +0200 | moet | (~moet@172.58.27.142) |
2021-06-21 01:20:59 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.227.207) (Ping timeout: 244 seconds) |
2021-06-21 01:21:14 +0200 | sh9 | (~sh9@softbank060116136158.bbtec.net) (Ping timeout: 265 seconds) |
2021-06-21 01:22:24 +0200 | kayprish | (~kayprish@46.240.143.86) (Read error: Connection reset by peer) |
2021-06-21 01:30:54 +0200 | wolfshappen | (~waff@irc.furworks.de) |
2021-06-21 01:31:16 +0200 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2021-06-21 01:31:50 +0200 | nate1 | (~nate@2601:1c0:4201:35b0:580e:3804:cf92:f841) (Ping timeout: 265 seconds) |
2021-06-21 01:35:53 +0200 | sh91 | sh9 |
2021-06-21 01:37:49 +0200 | sh9 | (~sh9@softbank060116136158.bbtec.net) (Quit: WeeChat 3.0.1) |
2021-06-21 01:39:28 +0200 | mikail | (~mikail@2a02:c7f:bc9c:3100:ae93:93fc:603f:ceaf) |
2021-06-21 01:40:05 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) (Ping timeout: 265 seconds) |
2021-06-21 01:41:21 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-06-21 01:44:09 +0200 | wolfshappen | (~waff@irc.furworks.de) (Quit: later) |
2021-06-21 01:44:29 +0200 | wolfshappen | (~waff@irc.furworks.de) |
2021-06-21 01:44:53 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 265 seconds) |
2021-06-21 01:45:51 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 265 seconds) |
2021-06-21 01:47:23 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-06-21 01:55:34 +0200 | Deide | (~Deide@user/deide) (Quit: Seeee yaaaa) |
2021-06-21 01:55:35 +0200 | mikail | (~mikail@2a02:c7f:bc9c:3100:ae93:93fc:603f:ceaf) (Quit: Leaving) |
2021-06-21 01:56:02 +0200 | moet | (~moet@172.58.27.142) (Ping timeout: 265 seconds) |
2021-06-21 01:56:38 +0200 | moet | (~moet@172.58.27.142) |
2021-06-21 01:58:44 +0200 | mikail | (~mikail@2a02:c7f:bc9c:3100:ae93:93fc:603f:ceaf) |
2021-06-21 02:01:10 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-06-21 02:01:27 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Client Quit) |
2021-06-21 02:12:38 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-06-21 02:18:14 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:7c55:3c65:74e1:3dc5) (Ping timeout: 265 seconds) |
2021-06-21 02:19:21 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-06-21 02:20:01 +0200 | unyu | (~pyon@user/pyon) |
2021-06-21 02:20:43 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-06-21 02:21:26 +0200 | hmmmas | (~chenqisu1@183.217.200.246) |
2021-06-21 02:23:33 +0200 | chomwitt | (~Pitsikoko@2a02:587:dc0b:ff00:c813:70d9:31b2:b1b9) (Ping timeout: 265 seconds) |
2021-06-21 02:25:53 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
2021-06-21 02:26:28 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Remote host closed the connection) |
2021-06-21 02:34:06 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 02:37:25 +0200 | fef | (~thedawn@user/thedawn) |
2021-06-21 02:39:44 +0200 | Ariakenom | (~Ariakenom@2001:9b1:efb:fc00:28e5:866c:bfd1:85d2) (Read error: Connection reset by peer) |
2021-06-21 02:41:00 +0200 | hegstal | (~hegstal@2a02:c7f:7604:8a00:3573:4e54:4d99:437f) (Remote host closed the connection) |
2021-06-21 02:43:05 +0200 | yaroot | (~yaroot@6.3.30.125.dy.iij4u.or.jp) (Quit: The Lounge - https://thelounge.chat) |
2021-06-21 02:43:27 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-06-21 02:43:49 +0200 | yaroot | (~yaroot@6.3.30.125.dy.iij4u.or.jp) |
2021-06-21 02:55:39 +0200 | sheepduck | (~sheepduck@user/sheepduck) |
2021-06-21 02:57:32 +0200 | <dsal> | "I can't quite figure out how to express my ACL stuff as a property test." *figured it out* *found bug in ACL code* *found bug in manual ACL test that allowed bug* |
2021-06-21 02:59:34 +0200 | <monochrom> | "It's bugs all the way down" >:) |
2021-06-21 03:03:13 +0200 | MQ-17J | (~MQ-17J@8.6.144.186) (Ping timeout: 265 seconds) |
2021-06-21 03:03:14 +0200 | jasonu | (~user@166.70.242.157) |
2021-06-21 03:07:35 +0200 | <cdsmith> | I want the first thread to call initClassIfNeeded for a given class to run a setup action, and other threads that call with the same class block until that thread finishes initializing. My solution at https://github.com/cdsmith/HMock/blob/main/src/Test/HMock/Internal/MockT.hs#L98 uses two TVars and like 25 lines of code. Is there an easier way? |
2021-06-21 03:07:37 +0200 | hammond2 | (~abner@gateway02.insomnia247.nl) |
2021-06-21 03:08:30 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-06-21 03:10:03 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 03:10:54 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-06-21 03:12:01 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-06-21 03:12:28 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2021-06-21 03:12:33 +0200 | saolof | (~olofs@90-227-86-119-no542.tbcn.telia.com) (Quit: Leaving) |
2021-06-21 03:13:51 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-06-21 03:18:50 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.227.207) |
2021-06-21 03:21:33 +0200 | mikail | (~mikail@2a02:c7f:bc9c:3100:ae93:93fc:603f:ceaf) (Ping timeout: 265 seconds) |
2021-06-21 03:25:54 +0200 | <jasonu> | Hi everyone, I'm a Haskell noob who is just about to finish up working through Graham Hutton's book "Programming in Haskell" 2nd Edition. I'm looking for a good second book to further my skills. I was thinking about "Book of " |
2021-06-21 03:27:03 +0200 | <jasonu> | Oops. I was thinking about "Book of Monads" or perhaps "Haskell in Depth". Any comments or suggestions from the community. I'm also open to project ideas. |
2021-06-21 03:30:20 +0200 | mpt | (~tom@2a02:908:1862:49e0::3) |
2021-06-21 03:35:31 +0200 | xff0x | (~xff0x@2001:1a81:5381:2000:e1b5:6bc2:be6a:4590) (Ping timeout: 268 seconds) |
2021-06-21 03:37:19 +0200 | xff0x | (~xff0x@2001:1a81:53cb:7800:33aa:1278:7cdb:992c) |
2021-06-21 03:39:50 +0200 | mnrmnaugh | (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) (Leaving) |
2021-06-21 03:39:55 +0200 | mnrmnaughmnrgle | (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) |
2021-06-21 03:39:55 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 265 seconds) |
2021-06-21 03:42:19 +0200 | mnrmnaughmnrgle | (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) (Remote host closed the connection) |
2021-06-21 03:42:39 +0200 | mnrmnaugh | (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) |
2021-06-21 03:42:51 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-06-21 03:44:46 +0200 | vicfred | (~vicfred@user/vicfred) |
2021-06-21 03:46:26 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 03:46:30 +0200 | fef | (~thedawn@user/thedawn) (Remote host closed the connection) |
2021-06-21 03:48:34 +0200 | hammond2 | (~abner@gateway02.insomnia247.nl) (Changing host) |
2021-06-21 03:48:34 +0200 | hammond2 | (~abner@user/hammond2) |
2021-06-21 03:48:55 +0200 | hammond2 | hammond_ |
2021-06-21 03:49:36 +0200 | hammond_ | proscan |
2021-06-21 03:50:18 +0200 | proscan | hammond_ |
2021-06-21 03:50:56 +0200 | AgentM | (~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) |
2021-06-21 04:01:34 +0200 | fef | (~thedawn@user/thedawn) |
2021-06-21 04:01:36 +0200 | _73 | (~user@pool-96-252-123-136.bstnma.fios.verizon.net) (Remote host closed the connection) |
2021-06-21 04:01:51 +0200 | _73 | (~user@pool-96-252-123-136.bstnma.fios.verizon.net) |
2021-06-21 04:02:43 +0200 | <Axman6> | jasonu: project recommendations is always hard, that mostly depends on what you're interested in |
2021-06-21 04:04:12 +0200 | teaSlurper | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-06-21 04:05:54 +0200 | trent1 | (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 240 seconds) |
2021-06-21 04:08:01 +0200 | <_73> | Type1 = `ContT PS.ProgramState (ExceptT Error (State PS.ProgramState)) Value`. `Type2 = ExceptT Error (State PS.ProgramState) Value`. I am having trouble understanding what I have gained by adding the extra ContT monad to my transformer stack. I was able to rewrite all of my code to use Type1, simply by doing `f = ContT $ \k -> do ... next <- k $ ValueConstructer a; pure next`. It is not clear to me though what advantage I gain from |
2021-06-21 04:08:01 +0200 | <_73> | using Type1 versus Type2. I have only done this because a book I am reading using continuations and I want to try to map my project closer to this book. |
2021-06-21 04:09:06 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-21 04:13:45 +0200 | teaSlurper | (~chris@81.96.113.213) (Ping timeout: 265 seconds) |
2021-06-21 04:13:56 +0200 | <Axman6> | Why did you make the change in the first place? |
2021-06-21 04:14:31 +0200 | <jasonu> | Axman6: I'm interested in using Haskell for webdev. |
2021-06-21 04:15:28 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 04:15:45 +0200 | <_73> | Axman6: Experimental mostly |
2021-06-21 04:16:06 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 244 seconds) |
2021-06-21 04:18:03 +0200 | vicfred_ | (~vicfred@fixed-187-191-48-110.totalplay.net) |
2021-06-21 04:20:15 +0200 | vicfred_ | (~vicfred@fixed-187-191-48-110.totalplay.net) (Client Quit) |
2021-06-21 04:21:02 +0200 | vicfred | (~vicfred@user/vicfred) (Ping timeout: 265 seconds) |
2021-06-21 04:23:14 +0200 | <Axman6> | jasonu: writing web servers in haskell is pretty fun, I personally really like using Servant as it lets me move a lot of the definition of the interface into types, which brings a lot of advantages (thinkg like automatic swagger docs, JS api generation etc.) |
2021-06-21 04:29:33 +0200 | <Axman6> | things* |
2021-06-21 04:32:11 +0200 | <jasonu> | Axman6: I've looked into Servant and it seems quite powerful, but I think I'm not at that level I have a weak grasp of Monads. I still need to learn about State, Monad Transformers and half a dozen other things. |
2021-06-21 04:34:03 +0200 | mpt | (~tom@2a02:908:1862:49e0::3) (Ping timeout: 265 seconds) |
2021-06-21 04:36:33 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2021-06-21 04:36:33 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (zinc.libera.chat (Nickname regained by services))) |
2021-06-21 04:36:33 +0200 | finn_elija | FinnElija |
2021-06-21 04:37:49 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-21 04:44:33 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-06-21 04:46:47 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.3-dev) |
2021-06-21 04:47:08 +0200 | slack1256 | (~slack1256@181.203.98.105) (Ping timeout: 265 seconds) |
2021-06-21 04:48:26 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Read error: Connection reset by peer) |
2021-06-21 04:50:07 +0200 | <Cajun> | janonu: i read that book too! its very good; i moved onto Parallel and Concurrent Programming in Haskell and i recommend it |
2021-06-21 04:50:17 +0200 | <Cajun> | jasonu * typo |
2021-06-21 04:51:28 +0200 | <Cajun> | but you cant really approach it without firmly understanding the language, so make sure you understand the second part of Programming in Haskell as thats crucial |
2021-06-21 04:52:16 +0200 | <Cajun> | sadly the textbook lacks as many examples as Hutton's, but its still a great introduction to parallelization |
2021-06-21 04:53:59 +0200 | <jasonu> | Thanks Cajun. I do plan to read that one as well...sometime. |
2021-06-21 04:54:03 +0200 | <_73> | jasonu: I wrote a website in haskell as a intermediate haskell noob. I did not understand monads or transformers. That project helped me a lot to learn these concepts though. I used Yesod because it comes with a book. |
2021-06-21 04:54:51 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) |
2021-06-21 04:56:45 +0200 | trent1 | (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) |
2021-06-21 04:57:17 +0200 | td_ | (~td@94.134.91.60) (Ping timeout: 265 seconds) |
2021-06-21 04:57:54 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-21 04:58:07 +0200 | Jonno_FTW | (~come@api.carswap.me) (Changing host) |
2021-06-21 04:58:07 +0200 | Jonno_FTW | (~come@user/jonno-ftw/x-0835346) |
2021-06-21 04:59:05 +0200 | td_ | (~td@94.134.91.150) |
2021-06-21 05:01:10 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
2021-06-21 05:02:54 +0200 | <sm[m]> | jasonu: time to work on some projects! |
2021-06-21 05:04:45 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 05:05:57 +0200 | altern | (~altern@altern.corbina.com.ua) (Ping timeout: 265 seconds) |
2021-06-21 05:06:03 +0200 | <jasonu> | _73: I kinda want something to help fill in gaps in my knowledge while doing project work. The Yesod book looks like it could lead to a good project rather quickly. |
2021-06-21 05:07:19 +0200 | <jasonu> | sm[m]: Yeah, writing code is the only way to learn, and at some point you just have to dive in. |
2021-06-21 05:08:13 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 05:08:24 +0200 | yd502 | (~yd502@180.168.212.6) |
2021-06-21 05:13:58 +0200 | fef | (~thedawn@user/thedawn) (Ping timeout: 244 seconds) |
2021-06-21 05:18:09 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-06-21 05:22:17 +0200 | <sm[m]> | Yesod is great. I've got a foss yesod app if you'd like to try and contribute to an existing code base |
2021-06-21 05:22:17 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-06-21 05:22:46 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) |
2021-06-21 05:23:48 +0200 | ukari | (~ukari@user/ukari) (Remote host closed the connection) |
2021-06-21 05:24:42 +0200 | ukari | (~ukari@user/ukari) |
2021-06-21 05:24:59 +0200 | <sm[m]> | yesod apps aren't the easiest place to start, but tweaking a working app can be rewarding |
2021-06-21 05:26:00 +0200 | wanagnuj | (~wanagnuj@101.95.97.158) |
2021-06-21 05:26:01 +0200 | wanagnuj | (~wanagnuj@101.95.97.158) (Client Quit) |
2021-06-21 05:26:40 +0200 | MQ-17J | (~MQ-17J@8.6.144.186) |
2021-06-21 05:27:16 +0200 | wanagnuj | (~wanagnuj@101.95.97.158) |
2021-06-21 05:27:18 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) (Remote host closed the connection) |
2021-06-21 05:28:10 +0200 | wanagnuj | (~wanagnuj@101.95.97.158) (Client Quit) |
2021-06-21 05:28:43 +0200 | wanagnuj | (~wanagnuj@101.95.97.158) |
2021-06-21 05:29:08 +0200 | wanagnuj | (~wanagnuj@101.95.97.158) (Client Quit) |
2021-06-21 05:30:41 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 258 seconds) |
2021-06-21 05:34:56 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-21 05:35:36 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2021-06-21 05:36:49 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 258 seconds) |
2021-06-21 05:36:50 +0200 | Lord_of_Life_ | Lord_of_Life |
2021-06-21 05:39:26 +0200 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2021-06-21 05:39:49 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-06-21 05:47:02 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds) |
2021-06-21 05:47:12 +0200 | alx741 | (~alx741@181.196.68.152) (Quit: alx741) |
2021-06-21 05:47:54 +0200 | econo | (uid147250@user/econo) |
2021-06-21 05:59:49 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 258 seconds) |
2021-06-21 06:00:02 +0200 | Sgeo_ | (~Sgeo@ool-18b9875e.dyn.optonline.net) |
2021-06-21 06:00:02 +0200 | jasonu` | (~user@166.70.242.157) |
2021-06-21 06:00:12 +0200 | phma_ | (phma@2001:5b0:210d:d028:dead:9920:575e:b71e) |
2021-06-21 06:00:23 +0200 | wroathe_ | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-06-21 06:00:28 +0200 | yd502_ | (~yd502@180.168.212.6) |
2021-06-21 06:00:51 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2021-06-21 06:00:55 +0200 | tzh_ | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2021-06-21 06:01:30 +0200 | eggplant_ | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 06:02:05 +0200 | bontaq` | (~user@ool-18e47f8d.dyn.optonline.net) |
2021-06-21 06:02:28 +0200 | ikex1 | (ash@user/ikex) |
2021-06-21 06:02:33 +0200 | fiddlerwoaroof_ | (~fiddlerwo@user/fiddlerwoaroof) |
2021-06-21 06:02:36 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 06:02:49 +0200 | Feuermagier_ | (~Feuermagi@2a02:2488:4211:3400:5def:8486:9e4:b49a) |
2021-06-21 06:02:54 +0200 | nurupo_ | (~nurupo.ga@user/nurupo) |
2021-06-21 06:03:05 +0200 | motherfsck | (~motherfsc@user/motherfsck) (Ping timeout: 244 seconds) |
2021-06-21 06:03:08 +0200 | tomsmeding_ | (~tomsmedin@2a03:b0c0:0:1010::767:3001) |
2021-06-21 06:03:08 +0200 | econo_ | (uid147250@user/econo) |
2021-06-21 06:03:19 +0200 | hnOsmium0001_ | (uid453710@id-453710.stonehaven.irccloud.com) |
2021-06-21 06:03:26 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-06-21 06:03:58 +0200 | howdy` | (~user@2001:8003:2432:d501:1ea:381d:5464:1a19) |
2021-06-21 06:04:28 +0200 | moet | (~moet@172.58.27.142) (Ping timeout: 265 seconds) |
2021-06-21 06:04:29 +0200 | Ferdiran1 | (~somebody@2001:4c78:2012:5000::2) |
2021-06-21 06:04:44 +0200 | np | (~nerdypepp@user/nerdypepper) |
2021-06-21 06:04:47 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2021-06-21 06:04:47 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (copper.libera.chat (Nickname regained by services))) |
2021-06-21 06:04:47 +0200 | finn_elija | FinnElija |
2021-06-21 06:04:57 +0200 | ezzieygu1wuf | (~Unknown@user/ezzieyguywuf) |
2021-06-21 06:05:03 +0200 | trent2 | (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) |
2021-06-21 06:05:05 +0200 | euandreh_ | (~euandreh@2804:14c:33:9fe5:ee71:32ea:12e0:378c) |
2021-06-21 06:05:12 +0200 | jonatan_ | (~nate@h77-53-70-163.cust.a3fiber.se) |
2021-06-21 06:05:18 +0200 | td__ | (~td@94.134.91.150) |
2021-06-21 06:05:29 +0200 | amirouche` | (~amirouche@user/amirouche) |
2021-06-21 06:05:31 +0200 | xff0x_ | (~xff0x@2001:1a81:53cb:7800:33aa:1278:7cdb:992c) |
2021-06-21 06:06:05 +0200 | moet | (~moet@172.58.27.142) |
2021-06-21 06:06:11 +0200 | derelict_ | (~derelict@user/derelict) |
2021-06-21 06:07:07 +0200 | RemiYuko | (~licht@user/akechishiro) |
2021-06-21 06:07:32 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-21 06:09:34 +0200 | jackhill_ | (~jackhill@kalessin.dragonsnail.net) |
2021-06-21 06:09:36 +0200 | econo | (uid147250@user/econo) (*.net *.split) |
2021-06-21 06:09:36 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (*.net *.split) |
2021-06-21 06:09:36 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) (*.net *.split) |
2021-06-21 06:09:36 +0200 | yd502 | (~yd502@180.168.212.6) (*.net *.split) |
2021-06-21 06:09:36 +0200 | td_ | (~td@94.134.91.150) (*.net *.split) |
2021-06-21 06:09:36 +0200 | trent1 | (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (*.net *.split) |
2021-06-21 06:09:36 +0200 | xff0x | (~xff0x@2001:1a81:53cb:7800:33aa:1278:7cdb:992c) (*.net *.split) |
2021-06-21 06:09:36 +0200 | jakalx | (~jakalx@base.jakalx.net) (*.net *.split) |
2021-06-21 06:09:36 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (*.net *.split) |
2021-06-21 06:09:36 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (*.net *.split) |
2021-06-21 06:09:36 +0200 | jasonu | (~user@166.70.242.157) (*.net *.split) |
2021-06-21 06:09:36 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (*.net *.split) |
2021-06-21 06:09:36 +0200 | nerdypepper | (~nerdypepp@user/nerdypepper) (*.net *.split) |
2021-06-21 06:09:36 +0200 | ikex | (ash@user/ikex) (*.net *.split) |
2021-06-21 06:09:36 +0200 | tomsmeding | (~tomsmedin@tomsmeding.com) (*.net *.split) |
2021-06-21 06:09:36 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (*.net *.split) |
2021-06-21 06:09:36 +0200 | jackhill | (~jackhill@kalessin.dragonsnail.net) (*.net *.split) |
2021-06-21 06:09:36 +0200 | aveltras[m] | (~aveltrasm@2001:470:69fc:105::3ef9) (*.net *.split) |
2021-06-21 06:09:36 +0200 | Sgeo | (~Sgeo@user/sgeo) (*.net *.split) |
2021-06-21 06:09:36 +0200 | nurupo | (~nurupo.ga@user/nurupo) (*.net *.split) |
2021-06-21 06:09:36 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (*.net *.split) |
2021-06-21 06:09:36 +0200 | bontaq | (~user@ool-18e47f8d.dyn.optonline.net) (*.net *.split) |
2021-06-21 06:09:36 +0200 | phma | (phma@2001:5b0:210d:d028:dead:9920:575e:b71e) (*.net *.split) |
2021-06-21 06:09:36 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (*.net *.split) |
2021-06-21 06:09:36 +0200 | euandreh | (~euandreh@2804:14c:33:9fe5:c617:f0e4:6f11:e3af) (*.net *.split) |
2021-06-21 06:09:36 +0200 | howdy | (~user@2001:8003:2432:d501:71e9:d3d3:3664:52d2) (*.net *.split) |
2021-06-21 06:09:36 +0200 | img | (~img@user/img) (*.net *.split) |
2021-06-21 06:09:36 +0200 | derelict | (~derelict@user/derelict) (*.net *.split) |
2021-06-21 06:09:36 +0200 | rawles | (~o@sputnik.rawles.net) (*.net *.split) |
2021-06-21 06:09:36 +0200 | ezzieyguywuf | (~Unknown@user/ezzieyguywuf) (*.net *.split) |
2021-06-21 06:09:36 +0200 | jonatan | (~nate@h77-53-70-163.cust.a3fiber.se) (*.net *.split) |
2021-06-21 06:09:36 +0200 | amirouche | (~amirouche@user/amirouche) (*.net *.split) |
2021-06-21 06:09:36 +0200 | AkechiShiro | (~licht@user/akechishiro) (*.net *.split) |
2021-06-21 06:09:36 +0200 | Ferdirand | (~somebody@2001:4c78:2012:5000::2) (*.net *.split) |
2021-06-21 06:09:36 +0200 | fiddlerwoaroof | (~fiddlerwo@user/fiddlerwoaroof) (*.net *.split) |
2021-06-21 06:09:36 +0200 | econo_ | econo |
2021-06-21 06:09:37 +0200 | nurupo_ | nurupo |
2021-06-21 06:09:37 +0200 | ikex1 | ikex |
2021-06-21 06:09:41 +0200 | hnOsmium0001_ | hnOsmium0001 |
2021-06-21 06:09:45 +0200 | wroathe_ | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: leaving) |
2021-06-21 06:09:59 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-06-21 06:10:52 +0200 | phma_ | phma |
2021-06-21 06:11:52 +0200 | sheepduck | (~sheepduck@user/sheepduck) (Quit: Leaving) |
2021-06-21 06:12:03 +0200 | sheepduck | (~sheepduck@user/sheepduck) |
2021-06-21 06:12:12 +0200 | teaSlurper | (~chris@81.96.113.213) (Ping timeout: 265 seconds) |
2021-06-21 06:16:36 +0200 | hmmmas | (~chenqisu1@183.217.200.246) (Quit: Leaving.) |
2021-06-21 06:16:43 +0200 | img | (~img@user/img) |
2021-06-21 06:17:08 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-06-21 06:18:36 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-06-21 06:19:27 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 265 seconds) |
2021-06-21 06:20:01 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-06-21 06:20:08 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 258 seconds) |
2021-06-21 06:23:09 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 268 seconds) |
2021-06-21 06:25:29 +0200 | vonfry | (~user@240e:688:3:1010:5942:1e2c:6233:6863) |
2021-06-21 06:32:40 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Quit: Leaving) |
2021-06-21 06:33:32 +0200 | <jackdk> | I stumbled across the following type while trying to write a trace function for an evaluator for a language I'm working on `data Trace m a = Done a | Step a (m (Trace m a))`. It looks like `Free m a` with an additional value - does it have a canonical name? |
2021-06-21 06:34:26 +0200 | wei2912 | (~wei2912@112.199.250.21) |
2021-06-21 06:37:23 +0200 | <dibblego> | Ap Either (Cofree f) |
2021-06-21 06:39:12 +0200 | sheepduck | (~sheepduck@user/sheepduck) (Quit: Leaving) |
2021-06-21 06:46:47 +0200 | <jackdk> | Ap? |
2021-06-21 06:47:05 +0200 | <jackdk> | the only Ap I know is in Data.Monoid and has the wrong kind |
2021-06-21 06:47:13 +0200 | <dibblego> | newtype Ap f g a = Ap (f a (g a)) |
2021-06-21 06:47:39 +0200 | jasonu` | (~user@166.70.242.157) (Remote host closed the connection) |
2021-06-21 06:47:51 +0200 | jasonu` | (~user@166.70.242.157) |
2021-06-21 06:48:57 +0200 | <dibblego> | I don't know what it is; almost NonEmptyList |
2021-06-21 06:49:16 +0200 | AgentM | (~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) (Ping timeout: 258 seconds) |
2021-06-21 06:51:41 +0200 | aveltras[m] | (~aveltrasm@2001:470:69fc:105::3ef9) |
2021-06-21 06:52:45 +0200 | jasonu` | (~user@166.70.242.157) (Ping timeout: 268 seconds) |
2021-06-21 06:54:44 +0200 | yd502_ | (~yd502@180.168.212.6) (Ping timeout: 265 seconds) |
2021-06-21 07:00:08 +0200 | ChanServ | (ChanServ@services.libera.chat) (shutting down) |
2021-06-21 07:00:11 +0200 | cheater | (~Username@user/cheater) (Remote host closed the connection) |
2021-06-21 07:01:17 +0200 | bilegeek | (~bilegeek@2600:1008:b017:63a6:c26d:d119:faaa:a6d7) (Quit: Leaving) |
2021-06-21 07:05:04 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
2021-06-21 07:08:45 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds) |
2021-06-21 07:11:54 +0200 | finsternis | (~X@23.226.237.192) (Remote host closed the connection) |
2021-06-21 07:14:42 +0200 | azeem | (~azeem@dynamic-adsl-94-34-49-60.clienti.tiscali.it) (Remote host closed the connection) |
2021-06-21 07:14:44 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Remote host closed the connection) |
2021-06-21 07:14:45 +0200 | fabfianda | (~fabfianda@net-109-116-251-109.cust.vodafonedsl.it) (Remote host closed the connection) |
2021-06-21 07:14:55 +0200 | ChanServ | (ChanServ@services.libera.chat) |
2021-06-21 07:14:55 +0200 | osmium.libera.chat | +o ChanServ |
2021-06-21 07:15:40 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-06-21 07:16:01 +0200 | azeem | (~azeem@dynamic-adsl-94-34-49-60.clienti.tiscali.it) |
2021-06-21 07:16:23 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-06-21 07:17:06 +0200 | vonfry | (~user@240e:688:3:1010:5942:1e2c:6233:6863) (Quit: ERC (IRC client for Emacs 27.2)) |
2021-06-21 07:17:47 +0200 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
2021-06-21 07:20:17 +0200 | <Axman6> | have there been any proposals for a monadic case syntax? something like case! (something foo bar :: m BaZ) of Baz x -> ...; Quux y -> ...; which would be equivalent to something foo bar >>= \case ... |
2021-06-21 07:21:17 +0200 | <shachaf> | I'd probably rather see the (<- x) syntax. |
2021-06-21 07:21:28 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 07:21:44 +0200 | <Axman6> | what would that look like? |
2021-06-21 07:21:48 +0200 | <nshepperd> | would it really be an improvement over >>= \case? |
2021-06-21 07:21:53 +0200 | <shachaf> | https://github.com/ghc-proposals/ghc-proposals/pull/64 |
2021-06-21 07:23:49 +0200 | <Axman6> | hmm, that's cute, though the question about ordering of evaluation is a good one, I'd hate to have to write flip foo (<- y) (<- x) z to get y to run before x just because foo was definied in the "wrong" order |
2021-06-21 07:24:03 +0200 | <Axman6> | but, I would probably use it a lot if it were available |
2021-06-21 07:24:10 +0200 | <shachaf> | Then don't, just do it the same way you do in C. |
2021-06-21 07:24:17 +0200 | <nshepperd> | i would only use it when ordering doesn't matter |
2021-06-21 07:24:34 +0200 | <shachaf> | You write f(g(), h()), but if you care about the order, you write "int x = g(); int y = h(); f(x, y);" |
2021-06-21 07:24:47 +0200 | yd502_ | (~yd502@180.168.212.6) |
2021-06-21 07:25:30 +0200 | <nshepperd> | to enforce this, ghc should desugar the bindings into different possible orderings on different days of the week |
2021-06-21 07:25:51 +0200 | yd502_ | (~yd502@180.168.212.6) (Client Quit) |
2021-06-21 07:26:18 +0200 | <shachaf> | Anyway, it solves your case issue. |
2021-06-21 07:28:08 +0200 | <nshepperd> | https://github.com/ghc-proposals/ghc-proposals/pull/64#issuecomment-318910111 yikes |
2021-06-21 07:28:11 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-06-21 07:29:13 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 07:29:35 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 07:33:31 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2021-06-21 07:35:01 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-06-21 07:35:25 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 07:55:07 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-21 07:55:46 +0200 | zeenk | (~zeenk@82.76.113.130) |
2021-06-21 07:56:02 +0200 | Morrow_ | (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 252 seconds) |
2021-06-21 08:02:06 +0200 | bontaq` | (~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 258 seconds) |
2021-06-21 08:03:47 +0200 | <Rembane> | tomsmeding_: I can totally see why those parts feel odd to you. It just struck me! There's another paper where they reason about generating highly recursive types in a more structured way: https://octopi.chalmers.se/2018/11/11/dragen/ |
2021-06-21 08:03:48 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Read error: Connection reset by peer) |
2021-06-21 08:04:07 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-06-21 08:04:17 +0200 | MQ-17J | (~MQ-17J@8.6.144.186) (Ping timeout: 268 seconds) |
2021-06-21 08:04:36 +0200 | MQ-17J | (~MQ-17J@8.9.230.29) |
2021-06-21 08:05:40 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-21 08:06:54 +0200 | tput | (~tim@S0106a84e3fe54613.ed.shawcable.net) (Ping timeout: 264 seconds) |
2021-06-21 08:07:24 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 08:08:28 +0200 | michalz | (~michalz@185.246.204.40) |
2021-06-21 08:09:23 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
2021-06-21 08:10:42 +0200 | Feuermagier_ | (~Feuermagi@2a02:2488:4211:3400:5def:8486:9e4:b49a) (Quit: Leaving) |
2021-06-21 08:14:25 +0200 | Meh | (~Meh@202.14.120.214) |
2021-06-21 08:14:33 +0200 | qbt | (~edun@user/edun) |
2021-06-21 08:14:48 +0200 | Meh | Guest3331 |
2021-06-21 08:14:50 +0200 | Guest3331 | (~Meh@202.14.120.214) (Client Quit) |
2021-06-21 08:14:56 +0200 | awth13 | (~user@user/awth13) |
2021-06-21 08:16:08 +0200 | Meh | (~Meh@202.14.120.214) |
2021-06-21 08:16:32 +0200 | Meh | Guest5827 |
2021-06-21 08:16:55 +0200 | teaSlurper | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-06-21 08:17:21 +0200 | Guest5827 | (~Meh@202.14.120.214) (Client Quit) |
2021-06-21 08:17:23 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) |
2021-06-21 08:19:05 +0200 | MQ-17J | (~MQ-17J@8.9.230.29) (Ping timeout: 268 seconds) |
2021-06-21 08:20:50 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 08:21:17 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 08:21:45 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-21 08:22:25 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) (Ping timeout: 258 seconds) |
2021-06-21 08:22:43 +0200 | Guest9 | (~Guest9@43.250.158.40) |
2021-06-21 08:23:29 +0200 | unyu | (~pyon@user/pyon) (Quit: WeeChat 3.2) |
2021-06-21 08:25:42 +0200 | teaSlurper | (~chris@81.96.113.213) (Read error: Connection reset by peer) |
2021-06-21 08:26:00 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-21 08:31:00 +0200 | leeb_ | (~leeb@KD111239158072.au-net.ne.jp) |
2021-06-21 08:33:55 +0200 | leeb | (~leeb@KD111239153103.au-net.ne.jp) (Ping timeout: 258 seconds) |
2021-06-21 08:34:52 +0200 | unyu | (~pyon@user/pyon) |
2021-06-21 08:35:50 +0200 | trent2 | (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 268 seconds) |
2021-06-21 08:35:59 +0200 | unyu | (~pyon@user/pyon) (Client Quit) |
2021-06-21 08:38:56 +0200 | deshalb | (~deshalb@user/deshalb) |
2021-06-21 08:40:00 +0200 | trcc | (~trcc@2-104-60-169-cable.dk.customer.tdc.net) |
2021-06-21 08:40:49 +0200 | niko | o |
2021-06-21 08:43:21 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:9f46:523f:c74b:90e0) |
2021-06-21 08:43:30 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 258 seconds) |
2021-06-21 08:45:16 +0200 | MQ-17J | (~MQ-17J@8.9.230.29) |
2021-06-21 08:48:18 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2021-06-21 08:52:36 +0200 | chele | (~chele@user/chele) |
2021-06-21 08:54:13 +0200 | Morrow_ | (~MorrowM_@147.161.13.127) |
2021-06-21 09:01:27 +0200 | moet_ | (~moet@172.58.19.92) |
2021-06-21 09:04:18 +0200 | chomwitt | (~Pitsikoko@2a02:587:dc0b:ff00:c813:70d9:31b2:b1b9) |
2021-06-21 09:04:35 +0200 | moet | (~moet@172.58.27.142) (Ping timeout: 258 seconds) |
2021-06-21 09:06:52 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-06-21 09:08:22 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-21 09:08:39 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2021-06-21 09:11:42 +0200 | Morrow | (~MorrowM_@147.161.13.127) |
2021-06-21 09:12:06 +0200 | <Unhammer> | hm, why isn't takeEnd part of Data.Sequence |
2021-06-21 09:12:07 +0200 | MQ-17J | (~MQ-17J@8.9.230.29) (Ping timeout: 268 seconds) |
2021-06-21 09:14:35 +0200 | Morrow_ | (~MorrowM_@147.161.13.127) (Ping timeout: 268 seconds) |
2021-06-21 09:14:56 +0200 | moet | (~moet@172.58.38.233) |
2021-06-21 09:15:28 +0200 | <Unhammer> | guess it'd be something like Seq.foldrWithIndex (\_ e (!c,a)->if c<n then (c+1, e:<|a) else (c,a)) |
2021-06-21 09:16:23 +0200 | <maerwald[m]> | That looks like a proposal similarly brittle and confusing like ApplicativeDo |
2021-06-21 09:16:28 +0200 | moet_ | (~moet@172.58.19.92) (Ping timeout: 258 seconds) |
2021-06-21 09:20:48 +0200 | <nshepperd> | Unhammer: takeEnd? why not just use Seq.drop (Seq.length xs - n) |
2021-06-21 09:23:03 +0200 | <nshepperd> | The length is cached so that should be about as fast as it can get |
2021-06-21 09:23:56 +0200 | <nshepperd> | it is odd that the module doesn't have takeEnd and dropEnd for convenience though |
2021-06-21 09:26:04 +0200 | tomsmeding_ | tomsmeding |
2021-06-21 09:27:35 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 09:28:24 +0200 | <tomsmeding> | Rembane: thanks for the reference! will read later :) |
2021-06-21 09:28:39 +0200 | <tomsmeding> | Sweden is active in this area it seems |
2021-06-21 09:31:51 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Ping timeout: 268 seconds) |
2021-06-21 09:33:04 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-06-21 09:34:30 +0200 | nschoe | (~quassel@178.251.84.79) |
2021-06-21 09:35:07 +0200 | Boomerang | (~Boomerang@xd520f68c.cust.hiper.dk) |
2021-06-21 09:35:34 +0200 | pera | (~pera@154.red-79-155-45.dynamicip.rima-tde.net) |
2021-06-21 09:35:58 +0200 | pera | Guest8323 |
2021-06-21 09:37:24 +0200 | teaSlurper | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-06-21 09:37:24 +0200 | hmmmas | (~chenqisu1@183.217.200.246) |
2021-06-21 09:38:32 +0200 | gnoo | (~gnoo@user/gnoo) |
2021-06-21 09:39:49 +0200 | <Unhammer> | nshepperd, I assuming Seq.drop would "start from the beginning", but now I see the docs say O(log(min(i,n−i))) which I guess means it does the smart thing and picks the end it's closest to :) |
2021-06-21 09:39:54 +0200 | <Unhammer> | *I was assuming |
2021-06-21 09:40:30 +0200 | <nshepperd> | it uses a clever thing similar to binary search |
2021-06-21 09:40:41 +0200 | <Unhammer> | Thanks (though I still think it'd be nice to have takeEnd/dropEnd there for convenience) |
2021-06-21 09:41:09 +0200 | <nshepperd> | hence the logarithmic time |
2021-06-21 09:41:43 +0200 | deshalb | (~deshalb@user/deshalb) (Ping timeout: 268 seconds) |
2021-06-21 09:41:45 +0200 | <int-e> | it's kind of intrinsic to the measured finger trees |
2021-06-21 09:46:25 +0200 | cfricke | (~cfricke@user/cfricke) |
2021-06-21 09:46:42 +0200 | ubert | (~Thunderbi@p200300ecdf259dd4ad9b8920565e1743.dip0.t-ipconnect.de) |
2021-06-21 09:48:40 +0200 | beka | (~beka@104.193.170-244.PUBLIC.monkeybrains.net) (Ping timeout: 258 seconds) |
2021-06-21 09:49:07 +0200 | Morrow | (~MorrowM_@147.161.13.127) (Ping timeout: 268 seconds) |
2021-06-21 09:50:19 +0200 | <Unhammer> | nah I could easily write a bad drop function that goes slowly from the start |
2021-06-21 09:50:47 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-06-21 09:51:01 +0200 | <Unhammer> | I've got lots of experience with taking performant data structures and making them go slowly |
2021-06-21 09:51:27 +0200 | berberman | (~berberman@user/berberman) (Ping timeout: 244 seconds) |
2021-06-21 09:52:11 +0200 | berberman | (~berberman@user/berberman) |
2021-06-21 09:52:31 +0200 | tzh_ | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2021-06-21 09:52:49 +0200 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
2021-06-21 09:53:49 +0200 | hmmmas | (~chenqisu1@183.217.200.246) (Quit: Leaving.) |
2021-06-21 09:57:53 +0200 | fm | (~fm@user/fm) (Quit: fm) |
2021-06-21 10:00:54 +0200 | octeep | (~octeep@n219077212239.netvigator.com) (Ping timeout: 264 seconds) |
2021-06-21 10:01:16 +0200 | acid | (~acid@user/acid) (Ping timeout: 244 seconds) |
2021-06-21 10:02:20 +0200 | acid | (~acid@user/acid) |
2021-06-21 10:03:40 +0200 | Guest8323 | (~pera@154.red-79-155-45.dynamicip.rima-tde.net) (Quit: leaving) |
2021-06-21 10:03:54 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 10:03:56 +0200 | octeep | (~octeep@42-2-220-152.static.netvigator.com) |
2021-06-21 10:04:30 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 10:06:16 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 10:06:22 +0200 | elf_fortrez | (~elf_fortr@adsl-64-237-239-58.prtc.net) |
2021-06-21 10:06:40 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-06-21 10:08:04 +0200 | Guest9 | (~Guest9@43.250.158.40) (Ping timeout: 265 seconds) |
2021-06-21 10:08:52 +0200 | jneira | (~jneira@212.8.115.226) (Client Quit) |
2021-06-21 10:09:10 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 10:09:20 +0200 | <int-e> | Unhammer: but if you do the natural thing, which is to look at the current node in the fingertree and its parts (each of which has a known length), and skip over all the parts that are shorter than your target length... you'll almost automatically end up with that complexity. |
2021-06-21 10:09:30 +0200 | hendursaga | (~weechat@user/hendursaga) (Ping timeout: 244 seconds) |
2021-06-21 10:09:57 +0200 | lemmih | (~lemmih@2406:3003:2072:44:925e:d7ab:50d2:4457) (Remote host closed the connection) |
2021-06-21 10:10:15 +0200 | lemmih | (~lemmih@2406:3003:2072:44:9bcd:6adc:313d:18f9) |
2021-06-21 10:10:24 +0200 | <int-e> | And that was my point: you get that complexity even if you don't try to look at the finger tree from the "shorter" end. |
2021-06-21 10:13:30 +0200 | hegstal | (~hegstal@2a02:c7f:7604:8a00:7fb:5bd8:2599:2fdb) |
2021-06-21 10:17:32 +0200 | allbery_b | (~geekosaur@xmonad/geekosaur) |
2021-06-21 10:17:32 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
2021-06-21 10:17:44 +0200 | jumper149 | (~jumper149@80.240.31.34) |
2021-06-21 10:18:23 +0200 | Sgeo_ | (~Sgeo@ool-18b9875e.dyn.optonline.net) (Read error: Connection reset by peer) |
2021-06-21 10:18:49 +0200 | maroloccio | (~marolocci@186.210.216.126) |
2021-06-21 10:19:13 +0200 | hegstal | (~hegstal@2a02:c7f:7604:8a00:7fb:5bd8:2599:2fdb) (Remote host closed the connection) |
2021-06-21 10:19:56 +0200 | hegstal | (~hegstal@2a02:c7f:7604:8a00:2a76:42b9:78db:d162) |
2021-06-21 10:20:24 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-06-21 10:22:38 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 10:23:00 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 10:24:08 +0200 | fendor | (~fendor@178.115.131.43.wireless.dyn.drei.com) |
2021-06-21 10:25:02 +0200 | jneira | (~jneira@212.8.115.226) (Client Quit) |
2021-06-21 10:25:05 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 258 seconds) |
2021-06-21 10:25:18 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 10:26:51 +0200 | maroloccio1 | (~marolocci@189.15.9.54) |
2021-06-21 10:29:22 +0200 | maroloccio | (~marolocci@186.210.216.126) (Ping timeout: 246 seconds) |
2021-06-21 10:31:04 +0200 | eggplant_ | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Remote host closed the connection) |
2021-06-21 10:31:48 +0200 | <merijn> | Unhammer: Don't we all? ;) |
2021-06-21 10:31:59 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) |
2021-06-21 10:33:48 +0200 | kuribas | (~user@ptr-25vy0i7yslxo8ej7h6j.18120a2.ip6.access.telenet.be) |
2021-06-21 10:35:29 +0200 | <siraben> | finger trees <3 |
2021-06-21 10:36:10 +0200 | <siraben> | are there structures that can be used to replace mutable graphs in imperative languages? problems involving mutable graphs are usually quite difficult in Haskell |
2021-06-21 10:37:22 +0200 | <merijn> | The answer is always arrays :p |
2021-06-21 10:37:25 +0200 | qrpnxz | (abc4f95c31@user/qrpnxz) (Quit: Gateway shutdown) |
2021-06-21 10:37:41 +0200 | qrpnxz | (~qrpnxz@user/qrpnxz) |
2021-06-21 10:37:47 +0200 | <merijn> | If there is one lesson I have taken away from HPC it's that arrays are the universal HPC data structure :p |
2021-06-21 10:37:54 +0200 | <tomsmeding> | re:finger trees: just want to post this very nice explanation of them for those who haven't seen it yet https://www.cs.tufts.edu/~nr/cs257/archive/koen-claessen/finger-trees.pdf |
2021-06-21 10:38:14 +0200 | <merijn> | And if you're not using arrays...well, better figure out a way to start :p |
2021-06-21 10:38:45 +0200 | <EvanR> | "everything is arrays", this is where conal comes to knock some sense into us |
2021-06-21 10:39:34 +0200 | <merijn> | EvanR: Naah, that's APL talking |
2021-06-21 10:39:48 +0200 | <merijn> | HPC isn't "everything is arrays", but "everything *should be* arrays" :p |
2021-06-21 10:39:49 +0200 | involans | (~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net) |
2021-06-21 10:40:49 +0200 | <EvanR> | is this because architecture is built to cache, prefetch, stream, and SIMD operate on arrays |
2021-06-21 10:41:22 +0200 | <merijn> | Like that one time I had a perfectly optimal, single pass O(n log n) algorithm and I made it 7x faster, by adding a double pass on top of it and replacing heaps with a single massive array :p |
2021-06-21 10:41:26 +0200 | <merijn> | EvanR: Pretty much |
2021-06-21 10:41:51 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 10:42:19 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 10:42:28 +0200 | <merijn> | EvanR: O(n) where you are basically linearly going over a massive array will almost always beat some fancy optimal data structure where you have dynamic allocations, pointer chasing, etc. |
2021-06-21 10:42:37 +0200 | <int-e> | merijn: it's embarrasing how often the stupidest approach is the fastest because CPUs coevolve with stupid algorithms (if you want to be cynical about it ;-) ) |
2021-06-21 10:42:51 +0200 | <siraben> | merijn: Data.Array is enough or should I use Data.Vector? |
2021-06-21 10:42:57 +0200 | <siraben> | Hm, always arrays? aaaa |
2021-06-21 10:43:11 +0200 | <merijn> | siraben: tbh, either are a massive improvement overy lists |
2021-06-21 10:43:17 +0200 | <int-e> | siraben: yes, arrays, especially if you get sequential access to them |
2021-06-21 10:43:24 +0200 | <merijn> | siraben: Personally I prefer Vector for 1D |
2021-06-21 10:43:32 +0200 | <int-e> | or the arrays are small enough to (mostly) fit into the cache |
2021-06-21 10:43:38 +0200 | <merijn> | siraben: Array is more flexible (as it allows custom indexing schemes) |
2021-06-21 10:43:45 +0200 | <shachaf> | int-e: Do you think CPUs could do much better? |
2021-06-21 10:43:48 +0200 | <siraben> | Yeah I already avoid lists whenever doing random access, but arrays are awkward enough that sometimes I just resort to Map (Int,Int) a |
2021-06-21 10:43:58 +0200 | <merijn> | siraben: tbh, Map is surprisingly performant |
2021-06-21 10:44:01 +0200 | <siraben> | multidimensional arrays, that is |
2021-06-21 10:44:18 +0200 | <merijn> | siraben: Like, I've had Map with millions of elements doing lookups in tight loops and it performs pretty well |
2021-06-21 10:44:53 +0200 | <siraben> | I see |
2021-06-21 10:44:57 +0200 | <merijn> | Of course, there's also the matter of "does performance matter here?" |
2021-06-21 10:45:19 +0200 | kayprish | (~kayprish@46.240.143.86) (Read error: Connection reset by peer) |
2021-06-21 10:45:22 +0200 | <merijn> | Like, if your code is doing disk/network IO there's basically no point in optimising compute to be faster than the time you're waiting for IO anyway |
2021-06-21 10:45:44 +0200 | <merijn> | (well, there's some if the machine is shared or whatever, but you get what I mean) |
2021-06-21 10:46:03 +0200 | <EvanR> | it's like drive faster so we can get to the red light sooner |
2021-06-21 10:46:22 +0200 | <merijn> | EvanR: Now I'm imagining "green waves" for compute xD |
2021-06-21 10:46:39 +0200 | <int-e> | shachaf: I don't know. Maybe RAM is not the right abstraction for advanced algorithms :P |
2021-06-21 10:47:00 +0200 | jneira | (~jneira@212.8.115.226) (Client Quit) |
2021-06-21 10:47:01 +0200 | <kuribas> | merijn: wouldn't it be better to combine arrays with other structures (like trees or lists)? |
2021-06-21 10:47:19 +0200 | moet | (~moet@172.58.38.233) (Ping timeout: 258 seconds) |
2021-06-21 10:47:20 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 10:47:21 +0200 | <merijn> | kuribas: In what scenario? |
2021-06-21 10:47:22 +0200 | <siraben> | merijn: yeah, this is in solving algorithmic type problems |
2021-06-21 10:47:22 +0200 | <EvanR> | array mapped trie |
2021-06-21 10:47:24 +0200 | <kuribas> | merijn: for example, chunked lists for time series. |
2021-06-21 10:47:28 +0200 | <siraben> | e.g. AOC, Codeforces, etc. |
2021-06-21 10:47:31 +0200 | <siraben> | Google Code Jam |
2021-06-21 10:47:56 +0200 | <siraben> | I have a conservative template for these types of problems |
2021-06-21 10:47:57 +0200 | <siraben> | https://github.com/siraben/haoc-2020/blob/master/template.hs |
2021-06-21 10:48:15 +0200 | <merijn> | kuribas: Why would a chunked list be better than just an array? |
2021-06-21 10:48:20 +0200 | <siraben> | but in particular I should avoid other libraries whenever possible, even Data.Vector isn't always on the autograder |
2021-06-21 10:48:34 +0200 | <siraben> | merijn: cache reasons? |
2021-06-21 10:48:37 +0200 | <kuribas> | merijn: less copying |
2021-06-21 10:48:47 +0200 | <merijn> | kuribas: That only applies if you mutate |
2021-06-21 10:48:59 +0200 | <kuribas> | merijn: also if you need to store them |
2021-06-21 10:49:02 +0200 | <kuribas> | and retrieve |
2021-06-21 10:49:02 +0200 | <siraben> | IIRC, the kind of linked lists one learns in undergrad CS is woefully slow compared to unrolled link lists |
2021-06-21 10:49:16 +0200 | <siraben> | s/link/linked/ |
2021-06-21 10:49:25 +0200 | <merijn> | siraben: Right, but Haskell lists are the dreadful type ;) |
2021-06-21 10:49:38 +0200 | <siraben> | yeah |
2021-06-21 10:49:40 +0200 | <kuribas> | siraben: for code contests it's rarely the language or implementation that matters, usually just the algorithmic complexity. |
2021-06-21 10:49:41 +0200 | <siraben> | but lists aren't always so bad, IME |
2021-06-21 10:50:01 +0200 | <siraben> | if you do a single pass and use folds correctly, they can be quite performant |
2021-06-21 10:50:11 +0200 | <siraben> | kuribas: yeah |
2021-06-21 10:50:12 +0200 | <EvanR> | because they get compiled away entirely? xD |
2021-06-21 10:50:18 +0200 | <int-e> | Haskell's lists are so convenient though... I usually start out with lists and then replace them by some kind of array (Data.Vector is an array in that view) if performance becomes an issue. |
2021-06-21 10:50:19 +0200 | <siraben> | it is annoying to do these problems when I wish I could "just" mutate a structure |
2021-06-21 10:50:24 +0200 | <EvanR> | no list is definitely fast |
2021-06-21 10:50:28 +0200 | <siraben> | that I know I'm handling in a linear way, so in-place should be fine |
2021-06-21 10:50:29 +0200 | <maerwald[m]> | If you're lucky that fusion triggers you mean |
2021-06-21 10:50:37 +0200 | <siraben> | maerwald: yeah |
2021-06-21 10:50:44 +0200 | <siraben> | IntSet and IntMap are really fast, IME |
2021-06-21 10:50:50 +0200 | dka_ | (~code-is-a@ns3059207.ip-193-70-33.eu) |
2021-06-21 10:50:54 +0200 | <kuribas> | siraben: leverage lazyness? |
2021-06-21 10:51:02 +0200 | <siraben> | probably I've use IntMap much more than laziness |
2021-06-21 10:51:07 +0200 | <kuribas> | siraben: I find most of these problems have nice elegant lazy solution |
2021-06-21 10:51:12 +0200 | <siraben> | s/use/used/ s/laziness/arrays/ |
2021-06-21 10:51:15 +0200 | <int-e> | And of course there's all those cases where you use lists intermittently and rely on fusion for them to mostly disappear. |
2021-06-21 10:51:34 +0200 | <siraben> | kuribas: lol https://github.com/siraben/haoc-2020/blob/master/day3.hs |
2021-06-21 10:51:38 +0200 | <merijn> | siraben: Well, it depends on how you define "bad" :) |
2021-06-21 10:51:47 +0200 | <siraben> | `part2 i = let (a, b, c, d, e, _) = foldl' f (0, 0, 0, 0, 0, 1) (tail i) in a * b * c * d * e` "oops" |
2021-06-21 10:51:52 +0200 | <merijn> | siraben: Like I said, not everything actually needs "high performance" |
2021-06-21 10:52:11 +0200 | <merijn> | And there's no point investing effort into optimising something that doesn't need optimisation |
2021-06-21 10:52:21 +0200 | <siraben> | merijn: yeah of course, I'm also interested in how to get the fastest possible especially for toy problems |
2021-06-21 10:52:29 +0200 | <siraben> | in practice it may not matter when I/O, network is far slower |
2021-06-21 10:52:31 +0200 | dka_ | (~code-is-a@ns3059207.ip-193-70-33.eu) (Remote host closed the connection) |
2021-06-21 10:52:48 +0200 | <siraben> | reducing branches actually does wonders |
2021-06-21 10:52:55 +0200 | dka | (~code-is-a@ns3059207.ip-193-70-33.eu) |
2021-06-21 10:52:59 +0200 | <merijn> | siraben: So of course lists are convenient when the performance of something isn't immediately crucial. Especially since GHC has quite some effort on optimising list transformations |
2021-06-21 10:53:40 +0200 | hegstal | (~hegstal@2a02:c7f:7604:8a00:2a76:42b9:78db:d162) (Remote host closed the connection) |
2021-06-21 10:53:54 +0200 | <EvanR> | any time casual performance concerns come up, I remind everyone the internet is based on PHP and ruby on rails |
2021-06-21 10:54:01 +0200 | jespada | (~jespada@90.254.247.46) |
2021-06-21 10:54:07 +0200 | <kuribas> | and Python! |
2021-06-21 10:54:08 +0200 | <siraben> | merijn: ok, here's a good example, how can I avoid V.cons here? |
2021-06-21 10:54:08 +0200 | <siraben> | https://github.com/siraben/morans/blob/bb1e65b26d83188ea81b6509e7d340d8af94ee48/morans.hs#L55 |
2021-06-21 10:54:25 +0200 | <siraben> | it needs to be performant since this is a neural net in haskell |
2021-06-21 10:54:37 +0200 | <siraben> | I got the running time down from 45 s to around 22s |
2021-06-21 10:54:44 +0200 | <siraben> | just by translating the code to vectors |
2021-06-21 10:54:49 +0200 | <int-e> | siraben: kiss: https://paste.debian.net/1201880/ |
2021-06-21 10:54:50 +0200 | <siraben> | but V.cons is linear in the size of the vector >.< |
2021-06-21 10:55:11 +0200 | <merijn> | siraben: You're just constructing a new result vector from some input, right? |
2021-06-21 10:55:12 +0200 | <Taneb> | siraben: can you turn it into a scan rather than a fold? |
2021-06-21 10:55:35 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-06-21 10:55:39 +0200 | <EvanR> | instead of consing, you could use an endo builder |
2021-06-21 10:55:47 +0200 | <Taneb> | Ending with a vector of tuples which is easy to make into a tuple of vectors |
2021-06-21 10:55:49 +0200 | <siraben> | hm, it would be awesome if hlint had support for laws that require some precondition to be true, such as the foldl/scanl law |
2021-06-21 10:56:00 +0200 | <kuribas> | merijn: why would a chunked list be slower than one bug chunk (for large enough chunks). |
2021-06-21 10:56:01 +0200 | <merijn> | siraben: There are in-place construction functions for vector |
2021-06-21 10:56:14 +0200 | <EvanR> | instead of copying into new vectors each time, you build a thing you can iterate through later |
2021-06-21 10:56:48 +0200 | Ariakenom | (~Ariakenom@2001:9b1:efb:fc00:315a:5813:efa5:bde0) |
2021-06-21 10:56:49 +0200 | <merijn> | siraben: I'd say you want something like generate instead: https://hackage.haskell.org/package/vector-0.12.3.0/docs/Data-Vector-Fusion-Stream-Monadic.html#v:… |
2021-06-21 10:57:32 +0200 | <siraben> | int-e: yes, that's similar to my initial solution, I managed to get down from 39 μs to 26 μs by using bytestring and some strictness |
2021-06-21 10:57:46 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 10:58:06 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 10:58:24 +0200 | <merijn> | siraben: So instead of folding, running basically an indexed loop on the original vector, something like: https://github.com/merijn/Belewitte/blob/master/benchmark-analysis/src/StepAggregate.hs#L112-L116 |
2021-06-21 10:58:42 +0200 | <siraben> | ah, interesting, I could try that |
2021-06-21 10:58:46 +0200 | <siraben> | ooh, VS.unsafeIndex |
2021-06-21 10:59:03 +0200 | <merijn> | siraben: unsafeIndex skips bounds checking |
2021-06-21 10:59:15 +0200 | <merijn> | So great way to segfault your code if you don't know what you're doing ;) |
2021-06-21 10:59:30 +0200 | <siraben> | yeah, how much difference does it make? |
2021-06-21 10:59:39 +0200 | <merijn> | Very little |
2021-06-21 10:59:40 +0200 | <EvanR> | all you need is a proof you're in bounds |
2021-06-21 10:59:49 +0200 | <siraben> | this would be the type of stuff that refinement types (or full blown dep types) could help with |
2021-06-21 10:59:54 +0200 | <merijn> | but I'm using this in a tight loop where I do millions (maybe billions) of lookups :p |
2021-06-21 10:59:55 +0200 | <siraben> | EvanR: right |
2021-06-21 11:00:12 +0200 | <merijn> | So a billion times very little helps ;) |
2021-06-21 11:00:14 +0200 | <EvanR> | a real proof can be difficult to actually get and maintain |
2021-06-21 11:00:22 +0200 | <siraben> | I think the GOL type problems in AOC were more performance sensitive as well |
2021-06-21 11:00:29 +0200 | <int-e> | siraben: I tend not to optimize anything that runs in under a second when using runghc :) |
2021-06-21 11:00:44 +0200 | <merijn> | siraben: Anyway, the key point here is that generate basically allocates an empty vector and fills in every element with "Int -> a" (where the Int is the index) |
2021-06-21 11:01:06 +0200 | <siraben> | int-e: fair enough, as kuribas said, algorithmic efficiency can matter more even in CP problems |
2021-06-21 11:01:08 +0200 | <merijn> | siraben: So you can construct your result array "in place" if you can reformulate your fold into a function from index to a value |
2021-06-21 11:01:10 +0200 | <siraben> | merijn: yeah |
2021-06-21 11:01:21 +0200 | <merijn> | That will save all the cons copying |
2021-06-21 11:01:26 +0200 | <siraben> | the recursion pattern is a bit weird here |
2021-06-21 11:01:32 +0200 | <siraben> | in my function `revaz` |
2021-06-21 11:01:53 +0200 | <siraben> | because it calls the function zLayer defined as `zLayer as (bs, wvs) = V.zipWith (+) bs $ V.sum . V.zipWith (*) as <$> wvs` |
2021-06-21 11:02:01 +0200 | <siraben> | so in that sense, it's already quadratic |
2021-06-21 11:02:58 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-06-21 11:03:14 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-06-21 11:03:38 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-06-21 11:05:05 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 11:06:53 +0200 | ocramz | (~user@c80-216-51-213.bredband.tele2.se) |
2021-06-21 11:07:01 +0200 | <ocramz> | hullo! |
2021-06-21 11:07:31 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-06-21 11:07:47 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 11:08:56 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) |
2021-06-21 11:08:59 +0200 | <ocramz> | ghc-lib versus ghc-as-a-library : can I write a GHC plugin by importing only ghc-lib ? or, yes it does typecheck and the interface is the same as ghc library, but would it work when used by code that compiles against the ghc library ? |
2021-06-21 11:09:45 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) (Remote host closed the connection) |
2021-06-21 11:09:56 +0200 | azeem | (~azeem@dynamic-adsl-94-34-49-60.clienti.tiscali.it) (Ping timeout: 258 seconds) |
2021-06-21 11:09:59 +0200 | chomwitt | (~Pitsikoko@2a02:587:dc0b:ff00:c813:70d9:31b2:b1b9) (Ping timeout: 244 seconds) |
2021-06-21 11:10:10 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) |
2021-06-21 11:10:43 +0200 | azeem | (~azeem@176.200.214.195) |
2021-06-21 11:11:10 +0200 | <kuribas> | merijn: I also remember some article where they implemented search using a hybrid tree and linear search on arrays. |
2021-06-21 11:11:37 +0200 | <kuribas> | merijn: that was on CPU though. GPU's are another beast. |
2021-06-21 11:12:21 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 265 seconds) |
2021-06-21 11:12:32 +0200 | hmmmas | (~chenqisu1@183.217.200.246) |
2021-06-21 11:14:04 +0200 | hexo | (~hexo@user/hexo) (Quit: Leaving) |
2021-06-21 11:14:07 +0200 | xsperry | (~as@user/xsperry) (Ping timeout: 244 seconds) |
2021-06-21 11:15:13 +0200 | maroloccio1 | (~marolocci@189.15.9.54) (Ping timeout: 246 seconds) |
2021-06-21 11:16:22 +0200 | <kuribas> | RE poor error handling in haskell, my PR to cassava for providing a decent error message (which should have been there), has been just sitting there for several weeks now. |
2021-06-21 11:17:14 +0200 | <kuribas> | This kind of sloppiness in core libraries just goes against all ideas of haskell being more rigorous. |
2021-06-21 11:17:56 +0200 | <kuribas> | It's like just an obsession for type level programming, GADTs etc, but then ignoring low hanging fruit. |
2021-06-21 11:18:10 +0200 | <ocramz> | cassava has been in a sorry state for a while now. I guess CSV is seen as low priority by the intelligentsia |
2021-06-21 11:18:43 +0200 | <ocramz> | (whereas the rest of the world lives inside excel tables and csv dumps) |
2021-06-21 11:18:49 +0200 | <kuribas> | ocramz: :-( We use CSV for everthing... |
2021-06-21 11:18:57 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 11:18:59 +0200 | <ocramz> | I know, anybody doing data work uses csv |
2021-06-21 11:20:25 +0200 | <merijn> | If only there was some way to just take the existing work and improve it directly yourself... ;) |
2021-06-21 11:20:42 +0200 | <ocramz> | btw kuribas, I've had a good experience with csv-conduit ( https://hackage.haskell.org/package/csv-conduit ) for parsing , and serializing by hand with bytestring/text builders |
2021-06-21 11:20:53 +0200 | <merijn> | Then you could just pay programmers to make it to your liking, imagine that! |
2021-06-21 11:21:42 +0200 | <ocramz> | merijn, it's not about open source entitlement. we all do our share of OSS. but if a maintainer is not responsive and doesn't allow external help, then it's a problem |
2021-06-21 11:21:56 +0200 | <kuribas> | this |
2021-06-21 11:23:05 +0200 | <kuribas> | I am not even blaming the maintainer, he may be very busy or something, just saying it's a problem that reflects badly on the language. |
2021-06-21 11:23:24 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 11:23:40 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 11:23:46 +0200 | <merijn> | Right, but if the maintainer is too busy you ask if you can be co-maintainer and if not you fork? |
2021-06-21 11:24:43 +0200 | chronon | (~chronon@user/chronon) |
2021-06-21 11:25:23 +0200 | <ocramz> | that would work if Hackage had a hierarchical name space, which is part of the social contract of our particular corner of open source |
2021-06-21 11:25:36 +0200 | <kuribas> | merijn: forking is possible, but not very convenient, and certainly doesn't reflect well on haskell. |
2021-06-21 11:25:56 +0200 | <ocramz> | e.g. kuribas.cassava is actively maintained, use that |
2021-06-21 11:25:59 +0200 | kenran | (~kenran@b2b-37-24-119-190.unitymedia.biz) |
2021-06-21 11:26:14 +0200 | <merijn> | Sure it's not convenient, but what else do you propose? |
2021-06-21 11:27:09 +0200 | chexum | (~chexum@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2021-06-21 11:27:09 +0200 | gnoo | (~gnoo@user/gnoo) (Remote host closed the connection) |
2021-06-21 11:27:09 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
2021-06-21 11:27:09 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2021-06-21 11:27:09 +0200 | HotblackDesiato | (~HotblackD@gateway/tor-sasl/hotblackdesiato) (Remote host closed the connection) |
2021-06-21 11:27:09 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2021-06-21 11:27:09 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Remote host closed the connection) |
2021-06-21 11:27:09 +0200 | hendursa1 | (~weechat@user/hendursaga) (Remote host closed the connection) |
2021-06-21 11:27:13 +0200 | <kuribas> | I can ask to be co-maintainer... |
2021-06-21 11:28:27 +0200 | <merijn> | Like, these discussions are always about how lack of maintenance reflects on the library/community and how things "should" be professional, but in the end there's literally just 1 solution and that is "pay people enough to prioritise their open source work" |
2021-06-21 11:29:02 +0200 | <ocramz> | OR allow co-maintainers, as kuribas proposed one line above |
2021-06-21 11:29:21 +0200 | <merijn> | ocramz: I proposed that even earlier, but in effect that is still the same solution |
2021-06-21 11:29:33 +0200 | <merijn> | since, presumably, you are getting paid by your job to do that maintenance |
2021-06-21 11:29:57 +0200 | <ocramz> | many write OSS in their spare time |
2021-06-21 11:30:07 +0200 | <kuribas> | merijn: reviewing PRs shouldn't be that much work... |
2021-06-21 11:30:14 +0200 | __monty__ | (~toonn@user/toonn) |
2021-06-21 11:30:19 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2021-06-21 11:30:25 +0200 | <merijn> | ocramz: If you do, then you should realise why people might not have the time to prioritise |
2021-06-21 11:30:26 +0200 | <Taneb> | ocramz: if it's their spare time, they have no obligation on how to spend that time |
2021-06-21 11:30:31 +0200 | HotblackDesiato | (~HotblackD@gateway/tor-sasl/hotblackdesiato) |
2021-06-21 11:30:33 +0200 | <merijn> | kuribas: Who cares if it's much work or not |
2021-06-21 11:30:35 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2021-06-21 11:30:45 +0200 | hmmmas | (~chenqisu1@183.217.200.246) (Quit: Leaving.) |
2021-06-21 11:31:00 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-06-21 11:31:05 +0200 | <kuribas> | we should care for core libraries. |
2021-06-21 11:31:07 +0200 | <ocramz> | I feel we're talking past each other here |
2021-06-21 11:31:33 +0200 | <merijn> | Some of my stuff still doesn't support GHC 9.0, because after 1.5 year of stuck at home in lockdown I can't find the energy to work on it in my spare time |
2021-06-21 11:31:35 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 11:32:02 +0200 | <kuribas> | couldn't that be something for haskell consultancy companies? They get paid to sell haskell, so it is in their interest to have decent libraries. |
2021-06-21 11:32:19 +0200 | <ocramz> | since the Hackage namespace is write-only, and flat, IMO once you upload a new package it shoudl become part of the commons, and it should be easy by design to let new maintainers in, both in the repo and as hackage uploaders |
2021-06-21 11:32:35 +0200 | chexum | (~chexum@gateway/tor-sasl/chexum) |
2021-06-21 11:32:44 +0200 | <ocramz> | without complex bargaining, or ego battles |
2021-06-21 11:32:46 +0200 | <merijn> | ocramz: That seems like a good way to get people to not upload code at all |
2021-06-21 11:32:49 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-06-21 11:32:55 +0200 | gnoo | (~gnoo@user/gnoo) |
2021-06-21 11:33:20 +0200 | <merijn> | ocramz: I mean, you don't have to bargain, it's open source, you can simply fork it with a different name and use/advertise that? |
2021-06-21 11:33:25 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-06-21 11:33:51 +0200 | <kuribas> | ocramz: wasn't their some drama a while ago about exactly that? Someone doing changes against the authors wishes. |
2021-06-21 11:34:01 +0200 | <ocramz> | because by forking we have two similar things, one of which is left to bitrot |
2021-06-21 11:34:19 +0200 | <ocramz> | kuribas : yeah |
2021-06-21 11:34:22 +0200 | <kuribas> | I thought there was already a process for abandoned projects. |
2021-06-21 11:34:22 +0200 | <Taneb> | kristjansson: cassava/Cassava? |
2021-06-21 11:34:48 +0200 | <Taneb> | kuribas* sorry |
2021-06-21 11:34:48 +0200 | <ocramz> | yeah |
2021-06-21 11:35:10 +0200 | <kuribas> | but I am not even talking about obscore/abandoned projects, I am talking about libraries considered core, like Cassava, Aeson, ... |
2021-06-21 11:35:21 +0200 | <ocramz> | this duplication is technically feasible but frankly sucks, because it shows that it was not possible to reach a civil agreement |
2021-06-21 11:35:21 +0200 | <merijn> | I mean, I wouldn't consider either of those core |
2021-06-21 11:35:36 +0200 | <kuribas> | merijn: what do you use for JSON then? |
2021-06-21 11:35:44 +0200 | <merijn> | kuribas: I don't use JSON |
2021-06-21 11:35:49 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Ping timeout: 244 seconds) |
2021-06-21 11:35:53 +0200 | <kuribas> | merijn: good for you :) |
2021-06-21 11:35:59 +0200 | <ocramz> | kuribas: aeson, same thing |
2021-06-21 11:36:15 +0200 | <merijn> | Here's the key problem in "these core libraries", I doubt you'll find much agreement community wide on what is "core" |
2021-06-21 11:36:43 +0200 | <merijn> | Anything GHC depends on, sure. containers and vector also. I think people will already start disagreeing on unordered-containers |
2021-06-21 11:36:56 +0200 | <kuribas> | merijn: Cassava is the standard for CSV, Aeson for JSON, or am I wrong? |
2021-06-21 11:37:07 +0200 | <merijn> | kuribas: Define "standard" |
2021-06-21 11:37:10 +0200 | <ocramz> | merijn : a simple graph centrality argument willl show why cassava can be considered as "core" : https://packdeps.haskellers.com/reverse/cassava |
2021-06-21 11:37:18 +0200 | <kuribas> | merijn: as in, what everyone uses? |
2021-06-21 11:37:28 +0200 | elf_fortrez | (~elf_fortr@adsl-64-237-239-58.prtc.net) (Quit: Client closed) |
2021-06-21 11:37:38 +0200 | <Taneb> | kuribas: that's community-accepted rather than standard. <blink> was supported by all commonly used browsers many years ago |
2021-06-21 11:37:53 +0200 | <merijn> | ocramz: I mean, that's 96 packages, most of which I never even heard off... |
2021-06-21 11:38:02 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-06-21 11:38:14 +0200 | <Taneb> | And, like, there are alternatives for both cassava and aeson, that do get used |
2021-06-21 11:38:15 +0200 | <ocramz> | "I haven't heard of a thing" is not a good argument why a thing is not important |
2021-06-21 11:38:37 +0200 | <merijn> | ocramz: I mean, vector has 1900 reverse dependencies |
2021-06-21 11:38:54 +0200 | <merijn> | 5300 for containers |
2021-06-21 11:39:06 +0200 | <merijn> | Those are orders of magnitude "more core" than cassava |
2021-06-21 11:39:16 +0200 | <ocramz> | all of these should be core, so what |
2021-06-21 11:39:18 +0200 | <Taneb> | ocramz: so, why should someone lose control of something they've created because it gets popular? That's what I understand of what you're proposing |
2021-06-21 11:39:39 +0200 | elf_fortrez | (~elf_fortr@adsl-64-237-239-58.prtc.net) |
2021-06-21 11:39:40 +0200 | <merijn> | Taneb: Well, he proposed they should lose control because they made it public on Hackage |
2021-06-21 11:39:47 +0200 | <merijn> | Taneb: That's slightly different |
2021-06-21 11:39:53 +0200 | <merijn> | But I still don't think it's a great idea |
2021-06-21 11:40:30 +0200 | <ocramz> | the (current?) architecture of cabal/hackage forces this particular state of things |
2021-06-21 11:40:38 +0200 | <merijn> | ocramz: I'm not saying it's not important. I'm saying it's not important enough to take away from owners |
2021-06-21 11:40:54 +0200 | <merijn> | How so? |
2021-06-21 11:40:58 +0200 | <ocramz> | whereas forking is ..? |
2021-06-21 11:41:01 +0200 | <kuribas> | merijn: cassava :: 565 DLs, csv :: 181 Dls (last upload 2010) csv-conduit :: 119 DLs |
2021-06-21 11:41:19 +0200 | <kuribas> | https://hackage.haskell.org/packages/search?terms=csv |
2021-06-21 11:41:31 +0200 | <merijn> | ocramz: Making a new thing with a different name and distinct new person in charge |
2021-06-21 11:41:58 +0200 | <Taneb> | kuribas: groups, 823 downloads in the past 30 days. I don't think anyone's suggested that groups should be standard |
2021-06-21 11:42:07 +0200 | <merijn> | Taneb: Lots of bot downloads |
2021-06-21 11:42:15 +0200 | <merijn> | kuribas: Those are number per version, btw |
2021-06-21 11:42:48 +0200 | dhil | (~dhil@195.213.192.47) |
2021-06-21 11:42:58 +0200 | maroloccio | (~marolocci@189.15.9.54) |
2021-06-21 11:43:24 +0200 | <Taneb> | And I think a lot of people get their packages from stackage or nixpkgs or similar not-Hackage sources these days and that won't count for those download stats |
2021-06-21 11:43:35 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-21 11:44:11 +0200 | <kuribas> | Just showing that Cassava is by far the most popular CSV parser, and Aeson for JSON... |
2021-06-21 11:44:19 +0200 | <kuribas> | prove me wrong... |
2021-06-21 11:44:24 +0200 | <merijn> | Right, but I wasn't arguing popularity |
2021-06-21 11:44:33 +0200 | <Taneb> | I don't think anyone was arguing that they weren't |
2021-06-21 11:45:21 +0200 | <merijn> | I wasn't arguing "those aren't core, because they're not the most popular" I was arguing "they aren't core, because their usage isn't nearly universal enough" |
2021-06-21 11:45:45 +0200 | <ocramz> | idk feels like we've hit ideological brick walls here. You upload a BSD package to the commons, plant a flag, and then impede its evolution |
2021-06-21 11:45:59 +0200 | <tomsmeding> | kuribas: just as a data point on people disagreeing about the definition of "core": anything that cannot be compiled in 2 GB of RAM is something that I personally would never want as "core" :p |
2021-06-21 11:45:59 +0200 | <ocramz> | this, to me, is backwards |
2021-06-21 11:46:00 +0200 | Cajun | (~Cajun@ip98-163-211-112.no.no.cox.net) (Quit: Client closed) |
2021-06-21 11:46:22 +0200 | <tomsmeding> | (hint, aeson) |
2021-06-21 11:46:39 +0200 | <tomsmeding> | vector barely passes iirc |
2021-06-21 11:47:05 +0200 | <ocramz> | tomsmeding: that's a pretty arbitrary bar but ok |
2021-06-21 11:47:11 +0200 | <merijn> | ocramz: Well, Hackage is open source and welcomes more contributions if you have better ideas |
2021-06-21 11:47:33 +0200 | <merijn> | ocramz: Who gets to decide when/who gets to steal a package, though? |
2021-06-21 11:47:39 +0200 | <ocramz> | "steal" |
2021-06-21 11:47:41 +0200 | <Taneb> | ocramz: the flag you plant is just a name |
2021-06-21 11:47:55 +0200 | <kuribas> | I am fine with using something else that Aeson or Cassava, but there isn't much, is there? |
2021-06-21 11:48:08 +0200 | <tomsmeding> | ocramz: true :) |
2021-06-21 11:48:11 +0200 | <ocramz> | you literally placed in the middle of the town square, with your name written on a post it |
2021-06-21 11:48:30 +0200 | <Taneb> | It's a pretty large town square |
2021-06-21 11:48:36 +0200 | <merijn> | ocramz: I have package foo, person X wants to basically completely change the direction of my package |
2021-06-21 11:48:44 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 11:48:48 +0200 | <merijn> | ocramz: At which point is this progress vs ruining? |
2021-06-21 11:48:51 +0200 | <merijn> | Who is the arbiter? |
2021-06-21 11:49:15 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 11:49:19 +0200 | <ocramz> | case by case basis. If you let it bitrot for two years and it doesn't build with the latest compilers then it's not ruining it's evolving |
2021-06-21 11:49:29 +0200 | <ocramz> | oh, Hackage-wide CI would be nice too |
2021-06-21 11:49:35 +0200 | <ocramz> | getting there though |
2021-06-21 11:49:36 +0200 | <kuribas> | maybe we should have a "core" CSV and JSON parser, which is handled by a committee, like the standard libraries? |
2021-06-21 11:49:41 +0200 | allbery_b | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-06-21 11:49:48 +0200 | <merijn> | ocramz: Who decides the case-by-case basis? |
2021-06-21 11:50:17 +0200 | <merijn> | kuribas: That's a great way to slow down development, not speed up |
2021-06-21 11:50:18 +0200 | <Taneb> | kuribas: that doesn't feel like a solution to the underlying problem |
2021-06-21 11:50:28 +0200 | <merijn> | kuribas: Now that CLC has to agree to any API changes... |
2021-06-21 11:51:06 +0200 | elf_fortrez | (~elf_fortr@adsl-64-237-239-58.prtc.net) (Quit: Client closed) |
2021-06-21 11:51:06 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-06-21 11:51:40 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 11:52:10 +0200 | <ocramz> | merijn: idk the next candidate maintainer? |
2021-06-21 11:52:18 +0200 | <kuribas> | python comes with csv and json out of the box. |
2021-06-21 11:52:26 +0200 | <ocramz> | the alternatives here are 1. bitrot 2. doing something about it |
2021-06-21 11:52:53 +0200 | <ocramz> | anyway kuribas : use csv-conduit and text , and be merry |
2021-06-21 11:52:57 +0200 | <merijn> | What if people do not agree whether a library is bitrotting? |
2021-06-21 11:52:58 +0200 | <Taneb> | kuribas: I'm not convinced that Python is the best language for Haskell to imitate |
2021-06-21 11:53:29 +0200 | <ocramz> | merijn : I don't understand what's your angle besides fabricating objections |
2021-06-21 11:53:38 +0200 | <merijn> | kuribas: And as soon as something moves into python's core libraries it stops changing and >60% of the core libraries are now deprecated/recommended against by now |
2021-06-21 11:53:53 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-06-21 11:54:15 +0200 | <merijn> | ocramz: My angle is: People are gonna people and people *are* gonna try to take over stufff and you can't just handwave this stuff without having a solid and well-defined process for how to handle edge cases |
2021-06-21 11:54:29 +0200 | <merijn> | ocramz: Your suggestion currently is just "we should let people take over packages" |
2021-06-21 11:54:42 +0200 | <ocramz> | kuribas : come chat on the datahaskell gitter if you want to do something for Hs data stuff http://gitter.im/dataHaskell/Lobby |
2021-06-21 11:54:59 +0200 | <merijn> | ocramz: My counter-argument is: there is absolutely no sensible/feasible process for doing that and I don't think one can exist |
2021-06-21 11:55:12 +0200 | <ocramz> | I think one should exist instead |
2021-06-21 11:55:13 +0200 | <merijn> | ocramz: You are free to convince me by proposing a process that seems fair and feasible |
2021-06-21 11:55:22 +0200 | <Taneb> | For what it's worth, there _is_ a process for taking over a package on Hackage: https://wiki.haskell.org/Taking_over_a_package |
2021-06-21 11:55:54 +0200 | <ocramz> | aka "howling into the void" |
2021-06-21 11:55:57 +0200 | <merijn> | Taneb: Right, but ocramz wants a process that lets you take over packages even if maintainers are not absent, just no merging what people want |
2021-06-21 11:56:09 +0200 | <merijn> | That's a massive can of worms |
2021-06-21 11:56:31 +0200 | <merijn> | And you better have a solid and fair process. And I don't think one (can) exist |
2021-06-21 11:57:05 +0200 | <merijn> | So the only way to convince me that "taking over packages" is a good idea is by proposing a process that might work. |
2021-06-21 11:57:29 +0200 | <merijn> | Until such a process is defined I am opposed to the whole idea |
2021-06-21 11:57:47 +0200 | brandonh | (~brandonh@151.68.85.160) |
2021-06-21 11:58:37 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 11:58:57 +0200 | <ocramz> | I think instead it's about taking this very tenuous notion of OSS "ownership", in the specific incarnation on the Hackage namespace, to its logical conclusion |
2021-06-21 12:00:08 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 12:00:23 +0200 | <merijn> | ocramz: Ownership and personal pride are the only thing keeping non-commercial OSS alive |
2021-06-21 12:02:11 +0200 | ukari | (~ukari@user/ukari) (Remote host closed the connection) |
2021-06-21 12:02:17 +0200 | <ocramz> | what about building on the shoulders of giants? using, hopefully, working dependencies? not reinventing the wheel every 6 months? those are also things we all take for granted |
2021-06-21 12:02:41 +0200 | <ocramz> | yet, take work besides pride and ownership in your little pretty garden |
2021-06-21 12:03:07 +0200 | <merijn> | ocramz: Building on the shoulder of giants is great. If those giants are starving and burned out |
2021-06-21 12:03:14 +0200 | ukari | (~ukari@user/ukari) |
2021-06-21 12:04:22 +0200 | chele | (~chele@user/chele) (Ping timeout: 258 seconds) |
2021-06-21 12:05:55 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 12:08:31 +0200 | cheater | (~Username@user/cheater) |
2021-06-21 12:09:36 +0200 | chele | (~chele@user/chele) |
2021-06-21 12:10:08 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Ping timeout: 250 seconds) |
2021-06-21 12:12:09 +0200 | ukari | (~ukari@user/ukari) (Remote host closed the connection) |
2021-06-21 12:12:45 +0200 | ukari | (~ukari@user/ukari) |
2021-06-21 12:13:42 +0200 | <kuribas> | merijn: for me OSS is more about solving something that hasn't been solved yet (satisfactory), and making it public so it can help other people. |
2021-06-21 12:14:15 +0200 | <__monty__> | That's the fun part of FOSS, not the sustainable part though. |
2021-06-21 12:14:28 +0200 | <merijn> | kuribas: And you don't take any pride in your solutions? |
2021-06-21 12:14:31 +0200 | <__monty__> | All your newfangled gadgets need to be maintained to remain useful. |
2021-06-21 12:14:39 +0200 | <kuribas> | merijn: I do :) |
2021-06-21 12:14:51 +0200 | <merijn> | kuribas: Right, so that's part of the reason people like sharing their stuff |
2021-06-21 12:14:56 +0200 | <kuribas> | __monty__: indeed. Maintaining is boring |
2021-06-21 12:15:05 +0200 | <merijn> | kuribas: And if you take that away from them, why even share your stuff? |
2021-06-21 12:15:37 +0200 | <kuribas> | merijn: how is taking over a project taking away the pride? |
2021-06-21 12:15:49 +0200 | <Taneb> | kuribas: ...how isn't it? |
2021-06-21 12:16:02 +0200 | <merijn> | kuribas: If you're still working on it and someone takes it over, that wouldn't affect you? |
2021-06-21 12:16:15 +0200 | <merijn> | (against your will) |
2021-06-21 12:16:20 +0200 | <Taneb> | I'd certainly be upset if someone said that I was doing something I'd created wrong and they were going to take over and do it their way |
2021-06-21 12:16:30 +0200 | <merijn> | We already have a policy for taking over abandonned packages |
2021-06-21 12:16:32 +0200 | <kuribas> | merijn: If I am working on it, yes. If I don't have time for it, no. |
2021-06-21 12:17:08 +0200 | <merijn> | kuribas: And how long before it qualifies as "I don't have time"? |
2021-06-21 12:17:23 +0200 | <merijn> | kuribas: Like, you don't have time for 6 months before you plan to continue on a project |
2021-06-21 12:17:26 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
2021-06-21 12:17:31 +0200 | <merijn> | Should someone be able to take it away? |
2021-06-21 12:18:19 +0200 | <kuribas> | merijn: in that case, they could fork the project, work on it, and after 6 months I'll incorporate changes I like. |
2021-06-21 12:18:22 +0200 | ocramz | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 250 seconds) |
2021-06-21 12:18:38 +0200 | <kuribas> | But if the project is used by many people, maybe even better if someone else just takes it over. |
2021-06-21 12:18:47 +0200 | <kuribas> | for those months |
2021-06-21 12:18:54 +0200 | <merijn> | kuribas: And who decides that? |
2021-06-21 12:20:13 +0200 | <merijn> | If many people/companies rely on a project, well, that sounds like there's a lot of people who could be paying to prioritise that project! |
2021-06-21 12:21:32 +0200 | <merijn> | "Oh, but it's open source, we shouldn't have to pay! We just want to casually burn out maintainers and get the most of our tragedy of the commons!" |
2021-06-21 12:21:48 +0200 | <kuribas> | In my projects where I gave other people ownership or co-maintainership, I have not yet been disappointed. |
2021-06-21 12:22:02 +0200 | <Taneb> | But you chose to give other people ownership or co-maintainership |
2021-06-21 12:22:06 +0200 | <Taneb> | And you chose who |
2021-06-21 12:22:14 +0200 | <merijn> | kuribas: That's fine, but then it's *you* in control and deciding if/who gets maintainership |
2021-06-21 12:22:24 +0200 | <merijn> | kuribas: That's is fundamentally different from having it imposed on you |
2021-06-21 12:22:49 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection) |
2021-06-21 12:22:50 +0200 | <kuribas> | merijn: yeah, having it imposed isn't nice. |
2021-06-21 12:23:21 +0200 | <merijn> | The older I get, the more my opinion on 100% of open source maintainership converges on "fuck you, pay me" |
2021-06-21 12:24:01 +0200 | <merijn> | Or, I guess "free software" but "free as in puppies" |
2021-06-21 12:24:06 +0200 | <kuribas> | merijn: that's fair. If I am in a company using haskell, they would have a budget for this stuff. |
2021-06-21 12:24:14 +0200 | <merijn> | i.e. "You'll have to pay to get it fixed" |
2021-06-21 12:24:33 +0200 | <merijn> | I don't know who I got that quote from, but I love it more and more :) |
2021-06-21 12:24:50 +0200 | tauli[m] | (~tauliacme@2001:470:69fc:105::755) |
2021-06-21 12:25:09 +0200 | <kuribas> | merijn: if I get passed the "haskell is an academic language which is not for practical use, as it doesn't even have libraries for common usecases." |
2021-06-21 12:26:22 +0200 | <kuribas> | merijn: the only thing a company cares about is that the net benefit is positive. |
2021-06-21 12:27:02 +0200 | <merijn> | Sure |
2021-06-21 12:27:15 +0200 | <merijn> | But also, I don't care what companies think about stuff I do |
2021-06-21 12:27:31 +0200 | ocramz | (~user@c80-216-51-213.bredband.tele2.se) |
2021-06-21 12:27:49 +0200 | <merijn> | And neither should anyone else who isn't actively being paid to care |
2021-06-21 12:27:54 +0200 | hughjfchen | (~hughjfche@vmi556545.contaboserver.net) |
2021-06-21 12:28:40 +0200 | <merijn> | anyway, lunch |
2021-06-21 12:29:49 +0200 | ham | (~ham4@user/ham) (Read error: Connection reset by peer) |
2021-06-21 12:32:58 +0200 | sa | (sid1055@id-1055.tinside.irccloud.com) (Ping timeout: 244 seconds) |
2021-06-21 12:33:06 +0200 | ham | (~ham4@user/ham) |
2021-06-21 12:33:07 +0200 | hughjfchen | (~hughjfche@vmi556545.contaboserver.net) (Client Quit) |
2021-06-21 12:34:06 +0200 | sa | (sid1055@id-1055.tinside.irccloud.com) |
2021-06-21 12:34:15 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-06-21 12:34:20 +0200 | teaSlurper | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-06-21 12:34:24 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 12:37:25 +0200 | nschoe | (~quassel@178.251.84.79) (Ping timeout: 265 seconds) |
2021-06-21 12:39:26 +0200 | Hafydd | (~Hafydd@user/hafydd) (Quit: WeeChat 3.0) |
2021-06-21 12:39:27 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-21 12:40:31 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 12:40:34 +0200 | <ocramz> | kuribas: completely agree with your pov. besides, having a mechanism for adding active maintainers (who are either interested in evolving a library or have the means to ask others do so) is precisely a way for everybody to _avoid_ burnout |
2021-06-21 12:41:03 +0200 | jakesyl | (sid56879@id-56879.stonehaven.irccloud.com) (Ping timeout: 272 seconds) |
2021-06-21 12:41:18 +0200 | <kuribas> | to be clear, I am not advocating forcing projects away from the creators :) |
2021-06-21 12:41:38 +0200 | <ocramz> | I said adding, in fact |
2021-06-21 12:41:59 +0200 | <ocramz> | or letting new patches be incorporated, or whatever. Moving the project forward |
2021-06-21 12:42:50 +0200 | <ocramz> | the "package takeover" process, involving multiple rounds of email, copy-pasted conversations in the mailing lists, months wasted, is one of the most comically inefficient ways of doing this |
2021-06-21 12:43:30 +0200 | teaSlurper | (~chris@81.96.113.213) (Ping timeout: 250 seconds) |
2021-06-21 12:43:50 +0200 | jakesyl | (sid56879@id-56879.stonehaven.irccloud.com) |
2021-06-21 12:44:23 +0200 | <kuribas> | ocramz: I would only do this for projects with widespread use. |
2021-06-21 12:44:33 +0200 | <ocramz> | sure |
2021-06-21 12:44:58 +0200 | <ocramz> | a voting process! like, if more than N people ask for this, click |
2021-06-21 12:45:22 +0200 | <ocramz> | surely we don't need sMaRt CoNtRaCtS to pull this shit off |
2021-06-21 12:45:57 +0200 | ubert | (~Thunderbi@p200300ecdf259dd4ad9b8920565e1743.dip0.t-ipconnect.de) (Remote host closed the connection) |
2021-06-21 12:49:19 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-06-21 12:52:05 +0200 | zeenk | (~zeenk@82.76.113.130) (Quit: Konversation terminated!) |
2021-06-21 12:53:20 +0200 | <Taneb> | What's the justification for the "is strictly more specific than" bit of resolving overlapping instances? |
2021-06-21 12:54:38 +0200 | <__monty__> | Because that gives a unique match? Whereas the = in >= wouldn't? |
2021-06-21 12:55:10 +0200 | <hpc> | ^ |
2021-06-21 12:55:18 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-21 12:55:23 +0200 | <hpc> | when you aren't able to resolve the match in some unambiguous way, you get incoherent instances |
2021-06-21 12:55:41 +0200 | <hpc> | although not quite "unique", but "unambiguous" |
2021-06-21 12:56:12 +0200 | <hpc> | the specificity requirement gives ghc a way to consistently pick the same instance in similar situationns |
2021-06-21 12:59:33 +0200 | <Taneb> | Why is it relevant when all-but-one of the candidate instances is marked as overlappable? |
2021-06-21 13:00:43 +0200 | mpt | (~tom@2a02:908:1862:49e0::3) |
2021-06-21 13:04:43 +0200 | ocramz | (~user@c80-216-51-213.bredband.tele2.se) (ERC (IRC client for Emacs 27.2)) |
2021-06-21 13:05:57 +0200 | jneira | (~jneira@212.8.115.226) |
2021-06-21 13:06:03 +0200 | brandonh_ | (~brandonh@151.68.85.160) |
2021-06-21 13:06:58 +0200 | brandonh | (~brandonh@151.68.85.160) (Ping timeout: 252 seconds) |
2021-06-21 13:07:11 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 13:07:21 +0200 | zot | (sid449795@id-449795.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-06-21 13:07:33 +0200 | brandonh_ | (~brandonh@151.68.85.160) (Client Quit) |
2021-06-21 13:07:41 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-06-21 13:08:20 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 13:09:56 +0200 | azeem | (~azeem@176.200.214.195) (Ping timeout: 250 seconds) |
2021-06-21 13:11:42 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Ping timeout: 264 seconds) |
2021-06-21 13:13:40 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-06-21 13:13:45 +0200 | azeem | (~azeem@176.201.29.233) |
2021-06-21 13:14:21 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 13:14:34 +0200 | mpt | (~tom@2a02:908:1862:49e0::3) (Ping timeout: 268 seconds) |
2021-06-21 13:15:39 +0200 | polux4 | (~polux@51.15.169.172) |
2021-06-21 13:16:31 +0200 | polux | (~polux@51.15.169.172) (Ping timeout: 272 seconds) |
2021-06-21 13:16:31 +0200 | polux4 | polux |
2021-06-21 13:16:43 +0200 | samebchase | (~samebchas@51.15.68.182) (Ping timeout: 272 seconds) |
2021-06-21 13:16:49 +0200 | samebchase | (~samebchas@51.15.68.182) |
2021-06-21 13:16:50 +0200 | deshalb | (~deshalb@user/deshalb) |
2021-06-21 13:16:56 +0200 | MasseR | (~MasseR@51.15.143.128) (Ping timeout: 268 seconds) |
2021-06-21 13:17:02 +0200 | alp | (~alp@user/alp) (Ping timeout: 268 seconds) |
2021-06-21 13:17:09 +0200 | haveo | (~haveo@sl35.iuwt.fr) (Ping timeout: 272 seconds) |
2021-06-21 13:17:16 +0200 | haveo | (~haveo@sl35.iuwt.fr) |
2021-06-21 13:17:36 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 252 seconds) |
2021-06-21 13:17:55 +0200 | MasseR | (~MasseR@51.15.143.128) |
2021-06-21 13:18:10 +0200 | Ariakenom | (~Ariakenom@2001:9b1:efb:fc00:315a:5813:efa5:bde0) (Ping timeout: 250 seconds) |
2021-06-21 13:18:51 +0200 | stevenxl | (~stevenlei@174.128.182.199) |
2021-06-21 13:19:45 +0200 | Hafydd | (~Hafydd@user/hafydd) |
2021-06-21 13:20:11 +0200 | <merijn> | It's funny that people think "package take-over process is comically inefficient" is a bug as opposed to "intended by design" |
2021-06-21 13:20:40 +0200 | <merijn> | It's almost as if it's something we want to discourage... |
2021-06-21 13:21:23 +0200 | <Las[m]> | I have a Haskell program that segfaults somewhere, and I'm trying to get a stack trace for that. I'm compiling with -g and -O1, but inspecting the dump with gdb and running `bt` just gives me garbage. How can I debug this? |
2021-06-21 13:21:55 +0200 | <Las[m]> | The Haskell program uses raw pointers all over the place unfortunately |
2021-06-21 13:22:20 +0200 | <merijn> | RIP |
2021-06-21 13:22:31 +0200 | srk | (~sorki@user/srk) (Remote host closed the connection) |
2021-06-21 13:22:49 +0200 | srk | (~sorki@user/srk) |
2021-06-21 13:22:52 +0200 | <merijn> | -g just gives you c symbols for the RTS |
2021-06-21 13:22:57 +0200 | <merijn> | not the compiled Haskell |
2021-06-21 13:23:16 +0200 | <merijn> | GHC has (experimentalish) support for DWARF, but I don't think -g enables that atm? |
2021-06-21 13:23:34 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2021-06-21 13:25:39 +0200 | <Las[m]> | FWIW I get some mangled symbol name, can I somehow use that? |
2021-06-21 13:25:57 +0200 | <Las[m]> | I used the -ddump thing to get some dumps but I can't find the symbol name there |
2021-06-21 13:26:27 +0200 | <merijn> | Las[m]: https://www.haskell.org/ghc/blog/20200403-dwarf-1.html |
2021-06-21 13:26:30 +0200 | <Las[m]> | > Emit debug information in object code. Currently only DWARF debug information is supported on x86-64 and i386. Currently debug levels 0 through 3 are accepted, with 0 disabling debug information production and higher numbers producing richer output. If ⟨n⟩ is omitted, level 2 is assumed. |
2021-06-21 13:26:32 +0200 | <lambdabot> | <hint>:1:24: error: parse error on input ‘in’ |
2021-06-21 13:26:41 +0200 | <Las[m]> | it's not supported on my platform... |
2021-06-21 13:26:45 +0200 | <merijn> | ah |
2021-06-21 13:26:47 +0200 | <Las[m]> | (aarch64-linux) |
2021-06-21 13:27:05 +0200 | <merijn> | Then you might be, as we experts say, "fucked" >.> |
2021-06-21 13:27:12 +0200 | <Las[m]> | can I use the mangled symbol name then somehow to at least find out where it happened? |
2021-06-21 13:27:38 +0200 | <merijn> | No clue, tbh |
2021-06-21 13:28:03 +0200 | <merijn> | tbh, at this point binary searching your code by throwing Debug.Trace prints everywhere might be the fastest/most accurate to figure out what fails and where |
2021-06-21 13:28:10 +0200 | <tomsmeding> | what _is_ the mangled symbol name? |
2021-06-21 13:28:24 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-06-21 13:28:52 +0200 | <Las[m]> | I need to generate the coredump again for that since it was purged after a reboot |
2021-06-21 13:29:34 +0200 | <tomsmeding> | just curious, no need to expend effort :) |
2021-06-21 13:30:37 +0200 | is7s | (~is7s@2a01:4b00:895f:3d00:ddd:ae00:86d4:d79c) (Quit: Client closed) |
2021-06-21 13:30:41 +0200 | maroloccio | (~marolocci@189.15.9.54) (Quit: Client closed) |
2021-06-21 13:30:46 +0200 | alp | (~alp@163.172.83.213) |
2021-06-21 13:31:01 +0200 | <Las[m]> | it says `c2Xrz_info$def` |
2021-06-21 13:31:32 +0200 | <tomsmeding> | right, I have no idea :p |
2021-06-21 13:31:37 +0200 | <merijn> | Sounds like an info pointer |
2021-06-21 13:31:59 +0200 | <Las[m]> | what does that mean? |
2021-06-21 13:32:16 +0200 | <merijn> | Las[m]: info pointers are internal meta information for GHC about datatypes |
2021-06-21 13:32:25 +0200 | <Las[m]> | ah |
2021-06-21 13:32:27 +0200 | <merijn> | and closures |
2021-06-21 13:32:49 +0200 | <merijn> | Like "is this thunk already evaluated?" "how big is the result?" etc. |
2021-06-21 13:33:02 +0200 | <merijn> | "where is the code for this?" |
2021-06-21 13:33:38 +0200 | <Las[m]> | I think I'll have to go the Debug.Trace route like you said... |
2021-06-21 13:33:44 +0200 | mpt | (~tom@2a02:908:1862:49e0::3) |
2021-06-21 13:36:30 +0200 | wei2912 | (~wei2912@112.199.250.21) (Quit: Lost terminal) |
2021-06-21 13:38:47 +0200 | haveo | (~haveo@sl35.iuwt.fr) (Quit: leaving) |
2021-06-21 13:42:13 +0200 | haveo | (~haveo@sl35.iuwt.fr) |
2021-06-21 13:46:49 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-06-21 13:47:30 +0200 | azeem | (~azeem@176.201.29.233) (Ping timeout: 265 seconds) |
2021-06-21 13:53:33 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-21 13:53:46 +0200 | azeem | (~azeem@176.201.29.233) |
2021-06-21 13:56:26 +0200 | brandonh | (~brandonh@151.68.5.207) |
2021-06-21 14:01:44 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-06-21 14:01:56 +0200 | mpt | (~tom@2a02:908:1862:49e0::3) (Ping timeout: 250 seconds) |
2021-06-21 14:03:56 +0200 | <maerwald[m]> | Is there a tool to vendor 3rd party deps (not on hackage) into the library component so I can upload it on hackage? |
2021-06-21 14:04:27 +0200 | <merijn> | maerwald[m]: Eh "copy and paste the source into your repo"? :p |
2021-06-21 14:04:34 +0200 | <merijn> | maerwald[m]: iow, no |
2021-06-21 14:04:51 +0200 | <maerwald[m]> | Yeah, that, adjust modules in cabsl file |
2021-06-21 14:04:56 +0200 | <maerwald[m]> | And all the jazz |
2021-06-21 14:05:16 +0200 | <maerwald[m]> | Seems this can be automated |
2021-06-21 14:05:34 +0200 | <merijn> | Sure, just a Small Matter of Programming (TM) :) |
2021-06-21 14:06:25 +0200 | <maerwald[m]> | OCD lock-in... 3 months later... "done... so back to what I was working on... what was I working on?" |
2021-06-21 14:06:34 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-06-21 14:07:03 +0200 | <merijn> | maerwald[m]: That never happens to me >.> |
2021-06-21 14:08:10 +0200 | <merijn> | maerwald[m]: Can't convince the 3rd party to make a Hackage release? |
2021-06-21 14:08:22 +0200 | <maerwald[m]> | No |
2021-06-21 14:09:14 +0200 | <maerwald[m]> | My tar patches haven't been merged since 1.5 years and the other library smells like NMU needed too |
2021-06-21 14:09:22 +0200 | <maerwald[m]> | No time for that nonsense |
2021-06-21 14:09:38 +0200 | <merijn> | Doesn't vanessa actively maintain a tar library? |
2021-06-21 14:10:01 +0200 | <merijn> | At least, she's the only person I see shitposting about tar being terrible more than you :p |
2021-06-21 14:10:12 +0200 | <maerwald[m]> | Yes, I'm using that |
2021-06-21 14:10:21 +0200 | <maerwald[m]> | But it doesn't build everywhere |
2021-06-21 14:10:27 +0200 | <maerwald[m]> | Thanks to c2hs |
2021-06-21 14:10:46 +0200 | <merijn> | She's not including your patches? |
2021-06-21 14:11:10 +0200 | <maerwald[m]> | No no |
2021-06-21 14:11:16 +0200 | <maerwald[m]> | She's maintaining libarchive |
2021-06-21 14:11:34 +0200 | <maerwald[m]> | That works well for platforms where c2hs is not broken |
2021-06-21 14:12:18 +0200 | <merijn> | I'd argue that c2hs is broken everywhere xD |
2021-06-21 14:12:32 +0200 | <merijn> | It just happens to work sometimes :p |
2021-06-21 14:13:21 +0200 | <maerwald[m]> | For the others I need tar, which I had initially forked to bytestring based filepaths, but when supporting windows, this would require implementing AFPP first or some light wrapper. So I'm back to using a patched branch of upstream haskell tar, which is more or less unmaintained. |
2021-06-21 14:14:50 +0200 | <maerwald[m]> | So I don't care to fix any on that, just want to be able to make a hackage release. |
2021-06-21 14:16:05 +0200 | <maerwald[m]> | So need a tool that vendors all deps into the codebas and call it a day, haha |
2021-06-21 14:16:11 +0200 | <maerwald[m]> | Don't care |
2021-06-21 14:16:47 +0200 | <maerwald[m]> | Not much different from using PVP bounds |
2021-06-21 14:18:03 +0200 | Morrow | (~Morrow@37.142.145.18) |
2021-06-21 14:18:57 +0200 | Ariakenom | (~Ariakenom@2001:9b1:efb:fc00:8de:a8d1:83fb:c4a6) |
2021-06-21 14:19:01 +0200 | <merijn> | maerwald[m]: So, how about just copying the source tree into a separate subdir, copying the library entry from the original cabal file and making it an internal library in your package? |
2021-06-21 14:19:13 +0200 | <merijn> | Still *some* manual work, but not a lot |
2021-06-21 14:19:23 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-06-21 14:19:33 +0200 | <maerwald[m]> | For tar yes... the other is a transitive dep |
2021-06-21 14:19:42 +0200 | <adamse> | how about uploading your fork to hackage under a new name? |
2021-06-21 14:20:00 +0200 | <maerwald[m]> | That's gonna be fun |
2021-06-21 14:20:14 +0200 | <merijn> | I'm sure Hecate has tons of recommendations on yak herding and shaving implements :p |
2021-06-21 14:20:39 +0200 | derelict_ | derelict |
2021-06-21 14:20:39 +0200 | <maerwald[m]> | Hackage should have had fork support |
2021-06-21 14:21:13 +0200 | <merijn> | maerwald[m]: Fortunately, hackage is open source! So now you have yet another yak! :D |
2021-06-21 14:21:16 +0200 | <maerwald[m]> | You can have 'username/pkg' and still have an unqualified 'pkg' |
2021-06-21 14:21:24 +0200 | pbrisbin | (~patrick@pool-72-92-38-164.phlapa.fios.verizon.net) |
2021-06-21 14:21:53 +0200 | dajoer | (~david@softbank126065252160.bbtec.net) |
2021-06-21 14:21:56 +0200 | <maerwald[m]> | Unqualified pkg's would go through trustees, potentially or so |
2021-06-21 14:22:18 +0200 | Morrow | (~Morrow@37.142.145.18) (Ping timeout: 250 seconds) |
2021-06-21 14:22:27 +0200 | dajoer | (~david@softbank126065252160.bbtec.net) (Changing host) |
2021-06-21 14:22:27 +0200 | dajoer | (~david@user/gvx) |
2021-06-21 14:22:38 +0200 | <merijn> | maerwald[m]: There was an idea to make a "PVP opt-in" layer on top of "raw hackage", but not sure if that's going anywhere now that hvr is busy |
2021-06-21 14:22:52 +0200 | <maerwald[m]> | Right, let me write a proposal first... but no, I value my mental health more |
2021-06-21 14:23:05 +0200 | Morrow | (~Morrow@31.154.96.164) |
2021-06-21 14:24:21 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 14:28:48 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 250 seconds) |
2021-06-21 14:29:07 +0200 | fendor_ | (~fendor@77.119.129.45.wireless.dyn.drei.com) |
2021-06-21 14:32:13 +0200 | <Hecate> | maerwald[m] I will forcefully kidnap you and put you in a train for a thermal station if you take on another project :< |
2021-06-21 14:32:30 +0200 | <maerwald[m]> | xD |
2021-06-21 14:33:07 +0200 | <maerwald[m]> | I have 8 healthy fingers left |
2021-06-21 14:33:29 +0200 | <maerwald[m]> | Should get me through at least 2 more projects |
2021-06-21 14:34:02 +0200 | <int-e> | but fingers are not a renewable resource? |
2021-06-21 14:34:05 +0200 | int-e | is scared |
2021-06-21 14:34:46 +0200 | <maerwald[m]> | Oh, I thought they regrow after a couple of years |
2021-06-21 14:35:04 +0200 | <int-e> | they. don't. |
2021-06-21 14:35:14 +0200 | <maerwald[m]> | Shouldn't have cut them off I guess... hrmm |
2021-06-21 14:36:30 +0200 | <hrnz> | o.o |
2021-06-21 14:36:33 +0200 | psydroid | psydroid[m] |
2021-06-21 14:37:46 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.227.207) (Read error: Connection reset by peer) |
2021-06-21 14:38:01 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 14:38:05 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-21 14:39:00 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 252 seconds) |
2021-06-21 14:39:22 +0200 | cheater | (~Username@user/cheater) |
2021-06-21 14:41:14 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-06-21 14:42:27 +0200 | ukari | (~ukari@user/ukari) (Remote host closed the connection) |
2021-06-21 14:43:26 +0200 | ukari | (~ukari@user/ukari) |
2021-06-21 14:44:41 +0200 | <maerwald[m]> | https://github.com/biegunka/terminal-size/pulls |
2021-06-21 14:44:43 +0200 | <maerwald[m]> | Looks abandoned |
2021-06-21 14:45:13 +0200 | <merijn> | lemme check what I'm using |
2021-06-21 14:45:27 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-06-21 14:46:08 +0200 | <maerwald[m]> | This is a transitive dep though |
2021-06-21 14:46:19 +0200 | <merijn> | Ah, I use terminal-size |
2021-06-21 14:46:41 +0200 | <maerwald[m]> | It has a pretty humongous bug on darwin |
2021-06-21 14:47:01 +0200 | <merijn> | It does? |
2021-06-21 14:47:06 +0200 | <merijn> | I haven't noticed anything so far? |
2021-06-21 14:47:24 +0200 | <maerwald[m]> | `ccall` is impossible to get right on darwin |
2021-06-21 14:47:35 +0200 | <maerwald[m]> | https://github.com/biegunka/terminal-size/pull/16 |
2021-06-21 14:47:48 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 252 seconds) |
2021-06-21 14:48:49 +0200 | <maerwald[m]> | It causes segfaults, occuring in random places, randomly changing |
2021-06-21 14:49:16 +0200 | <maerwald[m]> | Who knows how many more of those hidden bugs darwin users face |
2021-06-21 14:49:33 +0200 | <merijn> | Which macs is it segfaulting on? |
2021-06-21 14:50:00 +0200 | <merijn> | I've been using it since 2016 and I haven't had any segfaults (that weren't my own fault) so far |
2021-06-21 14:50:15 +0200 | <maerwald[m]> | The verdict was you have to compare the generated code to be sure, but even then it's a moving target. An OSX update might break your FFI code |
2021-06-21 14:50:28 +0200 | <maerwald[m]> | Aarch64 darwin |
2021-06-21 14:51:30 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 258 seconds) |
2021-06-21 14:51:55 +0200 | cheater | (~Username@user/cheater) |
2021-06-21 14:52:28 +0200 | <stevenxl> | Does anyone here do any Haskell tutoring - paid, not free. Essentially, I have a Haskell program that is giving me a type error, and I want to walk through how we got to that type error. I'm thinking this won't take more than 1 hr, but maybe 2. Again, happy to pay for someone's time to understand what is going on at a deeper level. |
2021-06-21 14:54:46 +0200 | <merijn> | stevenxl: The Haskell reddit and haskell-cafe mailing list will probably give you comments for free ;) |
2021-06-21 14:55:59 +0200 | <maerwald[m]> | Also, should indicate whether this is type level errors or normal haskell |
2021-06-21 14:56:06 +0200 | Morrow | (~Morrow@31.154.96.164) (Ping timeout: 250 seconds) |
2021-06-21 14:56:06 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 250 seconds) |
2021-06-21 14:56:58 +0200 | <maerwald[m]> | 1-2 hours sounds like this might be a 1500 lines type error after diving too deep into type families |
2021-06-21 14:57:32 +0200 | brandonh | (~brandonh@151.68.5.207) (Quit: brandonh) |
2021-06-21 14:58:25 +0200 | jneira | (~jneira@212.8.115.226) (Quit: Client closed) |
2021-06-21 14:58:58 +0200 | jolly | (~jolly@208.180.97.158) |
2021-06-21 14:59:13 +0200 | MQ-17J | (~MQ-17J@8.21.10.15) |
2021-06-21 15:00:59 +0200 | alx741 | (~alx741@181.196.68.152) |
2021-06-21 15:01:06 +0200 | maroloccio | (~marolocci@189.15.9.54) |
2021-06-21 15:01:22 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-06-21 15:02:10 +0200 | psydroid[m] | psydroid |
2021-06-21 15:02:25 +0200 | fendor_ | (~fendor@77.119.129.45.wireless.dyn.drei.com) (Ping timeout: 265 seconds) |
2021-06-21 15:02:36 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-06-21 15:02:43 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-06-21 15:02:52 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-06-21 15:05:21 +0200 | warnz | (~warnz@2600:1700:77c0:5610:799f:ce24:eb20:cceb) |
2021-06-21 15:06:02 +0200 | finsternis | (~X@23.226.237.192) |
2021-06-21 15:08:03 +0200 | lbseale_ | (~lbseale@user/ep1ctetus) |
2021-06-21 15:08:49 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 15:09:12 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 15:09:23 +0200 | nschoe | (~quassel@178.251.84.79) |
2021-06-21 15:11:14 +0200 | <stevenxl> | maerwald[m]: It is very plain-vanilla Haskell. The top-level value is of type `Spec` from HSpec, and there are like 2 or 3 non-library functions, mostly dealing with a Reader for DB actions. |
2021-06-21 15:11:47 +0200 | <stevenxl> | merijn: Thanks. I'll give that a shot, but still interested in a more hands-on approach. |
2021-06-21 15:11:49 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Ping timeout: 258 seconds) |
2021-06-21 15:11:52 +0200 | <merijn> | oh |
2021-06-21 15:12:07 +0200 | <merijn> | HSpec has super cryptic type errors due to its over-reliance on typeclasses |
2021-06-21 15:12:08 +0200 | <dminuoso> | stevenxl: If you're willing to send me a box of candy, we can do it tonight! |
2021-06-21 15:12:11 +0200 | <stevenxl> | I guess there is a type-family involved in terms of `HSpec`. I think `Arg` is an associated type family. |
2021-06-21 15:12:14 +0200 | <dminuoso> | That's all I ask. :p |
2021-06-21 15:12:16 +0200 | <merijn> | Which is one of the reasons I dislike hspec |
2021-06-21 15:13:06 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
2021-06-21 15:13:15 +0200 | <stevenxl> | dminuoso: I'm down! M |
2021-06-21 15:13:26 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Ping timeout: 250 seconds) |
2021-06-21 15:13:39 +0200 | <dminuoso> | Perfect, I'll be around 10pm CEST |
2021-06-21 15:13:57 +0200 | <stevenxl> | :+1 |
2021-06-21 15:15:03 +0200 | wei2912 | (~wei2912@112.199.250.21) |
2021-06-21 15:15:05 +0200 | <merijn> | dminuoso: I'm gonna make you debug my shite and sent you salmiak licorice as "reward" :p |
2021-06-21 15:15:59 +0200 | <Boomerang> | Salmiak licorice is great! Not sure why the quotes are necessary ^^ |
2021-06-21 15:16:06 +0200 | <dminuoso> | Yes, indeed! |
2021-06-21 15:16:59 +0200 | <maerwald[m]> | Promotion of drugs :p |
2021-06-21 15:17:34 +0200 | <merijn> | Boomerang: I agree, most of the world does not |
2021-06-21 15:18:04 +0200 | <merijn> | There's this invisible border running through the middle of Europe above which licorice is considered amazing and below which it's considered human torture ;) |
2021-06-21 15:18:08 +0200 | <dminuoso> | stevenxl: Oh I just realized, Ill probably be around 8pm already for an hour. If that works with you, we can start a bit earlier. |
2021-06-21 15:18:45 +0200 | <dminuoso> | merijn: Personally I think mixing licorice with salmiak is an offense. |
2021-06-21 15:19:02 +0200 | <stevenxl> | dminuoso: :-). I'll set my alarm for 8PM CEST. |
2021-06-21 15:19:05 +0200 | <merijn> | Starting somewhere around belgium running through the middle of Germany and then heading more north while approaching the baltics |
2021-06-21 15:19:40 +0200 | <merijn> | I'm not sure if licorice is big in the Baltics |
2021-06-21 15:19:58 +0200 | <Boomerang> | It is! :D |
2021-06-21 15:20:33 +0200 | <merijn> | Insert "Esti can into Nordics" joke :p |
2021-06-21 15:21:06 +0200 | <Boomerang> | Well the baltic states I don't know. But nordic countries/scandinavia definitely |
2021-06-21 15:21:34 +0200 | <merijn> | Yeah, that I know |
2021-06-21 15:23:24 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 250 seconds) |
2021-06-21 15:23:57 +0200 | cheater | (~Username@user/cheater) |
2021-06-21 15:25:31 +0200 | kenran | (~kenran@b2b-37-24-119-190.unitymedia.biz) (Quit: WeeChat info:version) |
2021-06-21 15:26:55 +0200 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) |
2021-06-21 15:31:12 +0200 | azeem | (~azeem@176.201.29.233) (Ping timeout: 250 seconds) |
2021-06-21 15:31:29 +0200 | AgentM | (~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) |
2021-06-21 15:32:18 +0200 | curiousgay | (~quassel@178.217.208.8) (Read error: Connection reset by peer) |
2021-06-21 15:33:00 +0200 | chomwitt | (~Pitsikoko@athedsl-351576.home.otenet.gr) |
2021-06-21 15:33:09 +0200 | curiousgay | (~quassel@178.217.208.8) |
2021-06-21 15:34:21 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 15:35:06 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 250 seconds) |
2021-06-21 15:35:28 +0200 | cheater | (~Username@user/cheater) |
2021-06-21 15:35:53 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 15:37:23 +0200 | azeem | (~azeem@176.201.29.233) |
2021-06-21 15:37:45 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-06-21 15:38:40 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 15:38:43 +0200 | brandonh | (~brandonh@151.34.95.83) |
2021-06-21 15:40:13 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 15:40:44 +0200 | curiousgay | (~quassel@178.217.208.8) (Read error: Connection reset by peer) |
2021-06-21 15:43:04 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 15:47:51 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
2021-06-21 15:51:34 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 250 seconds) |
2021-06-21 15:52:05 +0200 | cheater | (~Username@user/cheater) |
2021-06-21 15:55:33 +0200 | trcc | (~trcc@2-104-60-169-cable.dk.customer.tdc.net) (Remote host closed the connection) |
2021-06-21 15:56:04 +0200 | trcc | (~trcc@2-104-60-169-cable.dk.customer.tdc.net) |
2021-06-21 15:56:46 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-21 15:56:46 +0200 | azeem | (~azeem@176.201.29.233) (Ping timeout: 250 seconds) |
2021-06-21 15:57:11 +0200 | shimin | (~liushimin@2001:250:5806:3dad:c501:9418:6d95:abfa) |
2021-06-21 15:57:19 +0200 | azeem | (~azeem@176.201.29.233) |
2021-06-21 15:57:49 +0200 | xkuru | (~xkuru@user/xkuru) |
2021-06-21 15:58:09 +0200 | shimin | (~liushimin@2001:250:5806:3dad:c501:9418:6d95:abfa) () |
2021-06-21 15:59:40 +0200 | shimin | (~liushimin@2001:250:5806:3dad:c501:9418:6d95:abfa) |
2021-06-21 16:00:08 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-21 16:00:55 +0200 | fendor_ | (~fendor@77.119.129.45.wireless.dyn.drei.com) |
2021-06-21 16:00:58 +0200 | trcc | (~trcc@2-104-60-169-cable.dk.customer.tdc.net) (Ping timeout: 268 seconds) |
2021-06-21 16:02:42 +0200 | is7s | (~is7s@2a01:4b00:895f:3d00:3d61:e4ff:2003:3c7) |
2021-06-21 16:03:32 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2021-06-21 16:05:39 +0200 | justBull | (~justache@user/justache) (Remote host closed the connection) |
2021-06-21 16:06:36 +0200 | justBull | (~justache@user/justache) |
2021-06-21 16:08:12 +0200 | argento | (~argent0@168-227-97-34.ptr.westnet.com.ar) |
2021-06-21 16:08:47 +0200 | <kuribas> | Why does MaybeT has: (Functor m, Monad m) => Applicative (MaybeT m) |
2021-06-21 16:08:55 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-06-21 16:08:57 +0200 | <kuribas> | instaed of Applicative m => Applicative (MaybeT m) ? |
2021-06-21 16:09:45 +0200 | <kuribas> | seems perfectly doable with applicative. |
2021-06-21 16:09:58 +0200 | <kuribas> | unless you want short-circuiting? |
2021-06-21 16:10:02 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-06-21 16:10:33 +0200 | <kuribas> | (guess I answered my own question) |
2021-06-21 16:10:41 +0200 | <Taneb> | kuribas: I think the short circuting is a pretty big part of why you'd use it |
2021-06-21 16:10:42 +0200 | <nshepperd> | it has to short circuit to match the monad instance |
2021-06-21 16:10:55 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-06-21 16:11:07 +0200 | <nshepperd> | and also because that's what it's for i guess lol |
2021-06-21 16:11:08 +0200 | <kuribas> | Taneb: yeah |
2021-06-21 16:11:50 +0200 | fendor__ | (~fendor@91.141.3.62.wireless.dyn.drei.com) |
2021-06-21 16:12:02 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-06-21 16:12:24 +0200 | <_73> | what do you guys mean by short-circuiting? |
2021-06-21 16:12:30 +0200 | shimin | (~liushimin@2001:250:5806:3dad:c501:9418:6d95:abfa) () |
2021-06-21 16:12:50 +0200 | <_73> | Just the behavior of the Maybe monad? |
2021-06-21 16:12:56 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-06-21 16:13:37 +0200 | <kuribas> | _73: "Foo <$> eff1 <*> eff2" => eff2 is not executed if eff1 returns Nothing. |
2021-06-21 16:14:04 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-06-21 16:14:06 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 250 seconds) |
2021-06-21 16:14:26 +0200 | fendor | (~fendor@178.115.131.43.wireless.dyn.drei.com) (Ping timeout: 265 seconds) |
2021-06-21 16:14:54 +0200 | <_73> | ok I understand |
2021-06-21 16:14:56 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-06-21 16:15:22 +0200 | fluffyballoon | (~fluffybal@199.204.58.62) |
2021-06-21 16:15:33 +0200 | <lortabac> | I have an IO action and a mutable variable update that must be executed atomically. What is the best way to do it? |
2021-06-21 16:15:49 +0200 | chexum | (~chexum@gateway/tor-sasl/chexum) (Ping timeout: 244 seconds) |
2021-06-21 16:16:00 +0200 | <lortabac> | I saw that some people use an IORef and unsafeInterleaveIO in this case |
2021-06-21 16:16:04 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-06-21 16:16:23 +0200 | <lortabac> | or maybe I should use an MVar |
2021-06-21 16:16:57 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-06-21 16:17:20 +0200 | anon1 | (~anon@94.140.141.53) |
2021-06-21 16:17:33 +0200 | <kuribas> | lortabac: you mean update the variable if the IO action didn't throw? |
2021-06-21 16:18:01 +0200 | <lortabac> | no, I mean that the variable should not be modified during the IO action |
2021-06-21 16:18:04 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-06-21 16:18:19 +0200 | <kuribas> | lortabac: atomicModifyIORef then? |
2021-06-21 16:18:35 +0200 | <Hecate> | lortabac: did you check the "Applicability" section here: https://hackage.haskell.org/package/base-4.15.0.0/docs/Control-Concurrent-MVar.html ? |
2021-06-21 16:18:55 +0200 | jackhill_ | jackhill |
2021-06-21 16:18:57 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-06-21 16:19:04 +0200 | <lortabac> | atomicModifyIORef only works with a pure function, doesn't it? it requires unsafeInterleaveIO AFAIK |
2021-06-21 16:20:05 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-06-21 16:20:25 +0200 | <kuribas> | lortabac: I am not sure unsafeInterleaveIO will do what you want. |
2021-06-21 16:20:53 +0200 | <kuribas> | better use an MVar then |
2021-06-21 16:20:58 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-06-21 16:21:49 +0200 | <kuribas> | because it doesn't say atomicModifyIORef locks the variable while evaluating the function. |
2021-06-21 16:21:49 +0200 | <lortabac> | kuribas: unsafeInterleaveIO defers the IO action until the result is used in the function passed to atomicModifyIORef |
2021-06-21 16:22:05 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-06-21 16:22:33 +0200 | <lortabac> | anyway, the idea is not mine, I just saw this trick a couple of times |
2021-06-21 16:22:42 +0200 | <kuribas> | lortabac: sounds like a very bad idea. |
2021-06-21 16:22:45 +0200 | <kuribas> | just use an MVar |
2021-06-21 16:23:22 +0200 | <lortabac> | you are right, I'll use an MVar |
2021-06-21 16:24:05 +0200 | <lortabac> | even if it turns out that the trick works reliably, it's still hard to understand for other people who read the code |
2021-06-21 16:24:36 +0200 | <kuribas> | lortabac: even if it works reliably now, the docs don't say it would work in the future. |
2021-06-21 16:25:05 +0200 | <lortabac> | yes I agree |
2021-06-21 16:25:50 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 16:26:17 +0200 | <lortabac> | Hecate: thanks I've just read that section, it seems that MVar are good for my use case |
2021-06-21 16:30:08 +0200 | Boomerang | (~Boomerang@xd520f68c.cust.hiper.dk) (Quit: Leaving) |
2021-06-21 16:31:31 +0200 | <anon1> | hey, how do i extend https://wiki.haskell.org/Roll_your_own_IRC_bot so it can connect over TLS? |
2021-06-21 16:35:09 +0200 | <exarkun> | anon1: it's not exactly based on that wiki page but https://git.sr.ht/~jcalderone/DevBot/tree/main/item/src/Net.hs#L339 |
2021-06-21 16:36:11 +0200 | fendor_ | (~fendor@77.119.129.45.wireless.dyn.drei.com) (Ping timeout: 265 seconds) |
2021-06-21 16:36:34 +0200 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
2021-06-21 16:36:40 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 265 seconds) |
2021-06-21 16:37:44 +0200 | Morrow | (~MorrowM_@147.161.9.198) |
2021-06-21 16:39:05 +0200 | shimin | (~liushimin@2001:250:5806:3dad:c501:9418:6d95:abfa) |
2021-06-21 16:39:29 +0200 | <anon1> | exarkun: thanks a lot |
2021-06-21 16:40:21 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-21 16:43:04 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-21 16:43:49 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2021-06-21 16:44:29 +0200 | <teaSlurper> | is polymorphism in haskell heavily about pattern matching? |
2021-06-21 16:44:37 +0200 | moet | (~moet@172.58.75.87) |
2021-06-21 16:45:11 +0200 | <c_wraith> | they're not especially related |
2021-06-21 16:45:37 +0200 | <dminuoso> | Mmm. Ad-hoc polymorphism is type-level pattern matching. |
2021-06-21 16:46:09 +0200 | <dminuoso> | Perhaps we can think of typeclasses as setting up a type level `case-of`, and instances providing match clauses? |
2021-06-21 16:47:14 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.227.207) |
2021-06-21 16:47:28 +0200 | <teaSlurper> | ok, i'll keep reading. am start to get to that now in the "school of music" haskell book |
2021-06-21 16:47:30 +0200 | jamestmartin | (james@jtmar.me) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in) |
2021-06-21 16:47:40 +0200 | <teaSlurper> | polymorphism concepts |
2021-06-21 16:48:01 +0200 | ystael | (~ystael@user/ystael) (Read error: Connection reset by peer) |
2021-06-21 16:48:56 +0200 | <dminuoso> | teaSlurper: At the core, a polymorphic value is one whose type mentions a type variable. The user/caller/consumer must choose a type for every such type variable (satisfying the constraints, if any) |
2021-06-21 16:49:00 +0200 | <dminuoso> | % :t id |
2021-06-21 16:49:00 +0200 | <yahb> | dminuoso: a -> a |
2021-06-21 16:49:20 +0200 | ystael | (~ystael@user/ystael) |
2021-06-21 16:49:26 +0200 | <dminuoso> | The user of `id` has somehow decide/choose the types. This choice is usually done implicitly by the argument you provide it (or by a type signature) |
2021-06-21 16:49:37 +0200 | <c_wraith> | I suppose there's some amount of type-level pattern-matching even in parametric polymorphism. Unification in general is a form of pattern matching. But it's not matching against data constructors, which is usually what is meant by pattern-matching in Haskell |
2021-06-21 16:49:48 +0200 | <dminuoso> | c_wraith: better, its matching against type constructors! |
2021-06-21 16:49:50 +0200 | <dminuoso> | :-) |
2021-06-21 16:51:59 +0200 | bitmapper | (uid464869@id-464869.tooting.irccloud.com) |
2021-06-21 16:52:06 +0200 | moet | (~moet@172.58.75.87) (Ping timeout: 252 seconds) |
2021-06-21 16:53:15 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-06-21 16:53:48 +0200 | fluffyballoon | (~fluffybal@199.204.58.62) (Quit: Client closed) |
2021-06-21 16:54:03 +0200 | fendor_ | (~fendor@77.119.129.45.wireless.dyn.drei.com) |
2021-06-21 16:55:11 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-06-21 16:57:33 +0200 | wei2912 | (~wei2912@112.199.250.21) (Quit: Lost terminal) |
2021-06-21 16:58:54 +0200 | <teaSlurper> | thx |
2021-06-21 16:58:55 +0200 | <anon1> | quit |
2021-06-21 16:58:56 +0200 | <teaSlurper> | both |
2021-06-21 16:58:56 +0200 | anon1 | (~anon@94.140.141.53) (Quit: WeeChat 3.2) |
2021-06-21 16:59:15 +0200 | turlando | (~turlando@user/turlando) |
2021-06-21 16:59:19 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-06-21 16:59:26 +0200 | argento | (~argent0@168-227-97-34.ptr.westnet.com.ar) (Ping timeout: 252 seconds) |
2021-06-21 17:00:28 +0200 | motherfsck | (~motherfsc@user/motherfsck) |
2021-06-21 17:04:47 +0200 | mpt | (~tom@2a02:908:1862:49e0::3) |
2021-06-21 17:08:25 +0200 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) |
2021-06-21 17:09:50 +0200 | curiousgay | (~curiousgg@178.217.208.8) |
2021-06-21 17:10:03 +0200 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
2021-06-21 17:12:03 +0200 | fendor_ | (~fendor@77.119.129.45.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-06-21 17:14:42 +0200 | shimin | (~liushimin@2001:250:5806:3dad:c501:9418:6d95:abfa) () |
2021-06-21 17:16:29 +0200 | argento | (~argent0@168-227-97-34.ptr.westnet.com.ar) |
2021-06-21 17:17:52 +0200 | tremon | (~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl) |
2021-06-21 17:21:34 +0200 | kayprish | (~kayprish@46.240.143.86) (Quit: leaving) |
2021-06-21 17:21:42 +0200 | chomwitt | (~Pitsikoko@athedsl-351576.home.otenet.gr) (Ping timeout: 250 seconds) |
2021-06-21 17:21:50 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 17:23:00 +0200 | favonia | (~favonia@user/favonia) |
2021-06-21 17:23:09 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2021-06-21 17:28:12 +0200 | dajoer | (~david@user/gvx) (Quit: leaving) |
2021-06-21 17:28:43 +0200 | chomwitt | (~Pitsikoko@2a02:587:dc0b:ff00:c813:70d9:31b2:b1b9) |
2021-06-21 17:29:26 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:9f46:523f:c74b:90e0) (Quit: WeeChat 2.8) |
2021-06-21 17:29:28 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 17:30:06 +0200 | kayprish | (~kayprish@46.240.143.86) (Quit: leaving) |
2021-06-21 17:30:15 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 17:30:59 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 17:34:02 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Remote host closed the connection) |
2021-06-21 17:34:54 +0200 | mpt | (~tom@2a02:908:1862:49e0::3) (Ping timeout: 244 seconds) |
2021-06-21 17:35:35 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 17:36:21 +0200 | fef | (~thedawn@user/thedawn) |
2021-06-21 17:36:52 +0200 | moet | (~moet@172.58.75.87) |
2021-06-21 17:37:11 +0200 | jamestmartin | (james@jtmar.me) |
2021-06-21 17:37:20 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.227.207) (Remote host closed the connection) |
2021-06-21 17:37:54 +0200 | Deide | (~Deide@wire.desu.ga) |
2021-06-21 17:37:54 +0200 | Deide | (~Deide@wire.desu.ga) (Changing host) |
2021-06-21 17:37:54 +0200 | Deide | (~Deide@user/deide) |
2021-06-21 17:38:24 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 17:39:21 +0200 | kayprish | (~kayprish@46.240.143.86) (Quit: leaving) |
2021-06-21 17:39:31 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 17:39:57 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 17:40:43 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 17:41:48 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 17:42:51 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 17:43:17 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Remote host closed the connection) |
2021-06-21 17:44:24 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 17:44:58 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 17:45:16 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
2021-06-21 17:46:03 +0200 | elf_fortrez | (~elf_fortr@adsl-64-237-239-58.prtc.net) |
2021-06-21 17:48:40 +0200 | jumper149 | (~jumper149@80.240.31.34) (Quit: WeeChat 3.1) |
2021-06-21 17:48:54 +0200 | nate1 | (~nate@216.176.47.241) |
2021-06-21 17:49:19 +0200 | fef | (~thedawn@user/thedawn) (Remote host closed the connection) |
2021-06-21 17:50:06 +0200 | kayprish | (~kayprish@46.240.143.86) (Remote host closed the connection) |
2021-06-21 17:53:42 +0200 | Morrow | (~MorrowM_@147.161.9.198) (Read error: Connection reset by peer) |
2021-06-21 17:53:55 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 17:54:04 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-21 17:55:51 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 17:56:39 +0200 | Morrow | (~MorrowM_@147.161.9.198) |
2021-06-21 17:56:41 +0200 | dunj3 | (~dunj3@2001:16b8:309f:ea00:9791:603:5183:d379) |
2021-06-21 17:57:17 +0200 | kayprish | (~kayprish@46.240.143.86) (Client Quit) |
2021-06-21 17:57:32 +0200 | MorrowM | (~MorrowM_@147.161.13.169) |
2021-06-21 17:57:34 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 17:58:45 +0200 | ubert | (~Thunderbi@p200300ecdf259dd400f35283690bc8bb.dip0.t-ipconnect.de) |
2021-06-21 17:59:06 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Remote host closed the connection) |
2021-06-21 18:01:15 +0200 | Morrow | (~MorrowM_@147.161.9.198) (Ping timeout: 265 seconds) |
2021-06-21 18:01:15 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-06-21 18:01:41 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 18:03:37 +0200 | bontaq` | (~user@ool-18e47f8d.dyn.optonline.net) |
2021-06-21 18:04:29 +0200 | nschoe | (~quassel@178.251.84.79) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2021-06-21 18:06:32 +0200 | MQ-17J | (~MQ-17J@8.21.10.15) (Ping timeout: 252 seconds) |
2021-06-21 18:06:47 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Read error: Connection reset by peer) |
2021-06-21 18:06:54 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-21 18:07:22 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 18:07:43 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
2021-06-21 18:08:28 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 18:08:55 +0200 | kayprish | (~kayprish@46.240.143.86) (Quit: Lost terminal) |
2021-06-21 18:10:54 +0200 | hendursa1 | (~weechat@user/hendursaga) (Quit: hendursa1) |
2021-06-21 18:11:21 +0200 | hendursaga | (~weechat@user/hendursaga) |
2021-06-21 18:11:42 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 264 seconds) |
2021-06-21 18:12:18 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 18:12:46 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-21 18:13:15 +0200 | favonia | (~favonia@user/favonia) |
2021-06-21 18:13:20 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 265 seconds) |
2021-06-21 18:13:41 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 18:14:28 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
2021-06-21 18:15:21 +0200 | mikail | (~mikail@2a02:c7f:bc9c:3100:ae93:93fc:603f:ceaf) |
2021-06-21 18:16:25 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 18:17:21 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds) |
2021-06-21 18:19:00 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-21 18:19:11 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-06-21 18:19:22 +0200 | elf_fortrez | (~elf_fortr@adsl-64-237-239-58.prtc.net) (Quit: Client closed) |
2021-06-21 18:19:43 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 18:20:06 +0200 | nate1 | (~nate@216.176.47.241) (Ping timeout: 265 seconds) |
2021-06-21 18:20:18 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 240 seconds) |
2021-06-21 18:21:53 +0200 | tput | (~tim@s0106a84e3fe54613.ed.shawcable.net) |
2021-06-21 18:22:52 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-06-21 18:23:03 +0200 | favonia | (~favonia@user/favonia) |
2021-06-21 18:28:40 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 18:30:10 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-06-21 18:30:12 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-06-21 18:30:13 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
2021-06-21 18:34:06 +0200 | azeem | (~azeem@176.201.29.233) (Read error: Connection reset by peer) |
2021-06-21 18:35:03 +0200 | mrusme | mrus |
2021-06-21 18:35:10 +0200 | azeem | (~azeem@dynamic-adsl-94-34-49-60.clienti.tiscali.it) |
2021-06-21 18:37:41 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 18:38:34 +0200 | ubert | (~Thunderbi@p200300ecdf259dd400f35283690bc8bb.dip0.t-ipconnect.de) (Quit: ubert) |
2021-06-21 18:39:27 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 268 seconds) |
2021-06-21 18:40:29 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Remote host closed the connection) |
2021-06-21 18:43:18 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-06-21 18:43:38 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 18:43:53 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 18:44:57 +0200 | qbt | (~edun@user/edun) (Ping timeout: 258 seconds) |
2021-06-21 18:44:59 +0200 | gnoo | (~gnoo@user/gnoo) (Remote host closed the connection) |
2021-06-21 18:45:25 +0200 | gnoo | (~gnoo@user/gnoo) |
2021-06-21 18:45:28 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 18:45:55 +0200 | fendor__ | fendor |
2021-06-21 18:46:49 +0200 | shapr | (~user@144.163.30.223) |
2021-06-21 18:48:05 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 18:48:42 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-21 18:49:25 +0200 | xff0x_ | (~xff0x@2001:1a81:53cb:7800:33aa:1278:7cdb:992c) (Ping timeout: 268 seconds) |
2021-06-21 18:49:37 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 18:49:39 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 18:49:40 +0200 | econo | (uid147250@user/econo) |
2021-06-21 18:49:56 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds) |
2021-06-21 18:50:04 +0200 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) (Ping timeout: 265 seconds) |
2021-06-21 18:50:14 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 18:52:22 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 18:52:24 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.227.207) |
2021-06-21 18:53:57 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 18:54:17 +0200 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) |
2021-06-21 18:54:56 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-21 18:55:32 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 18:55:52 +0200 | MorrowM | (~MorrowM_@147.161.13.169) (Ping timeout: 265 seconds) |
2021-06-21 18:56:52 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 18:57:40 +0200 | kuribas | (~user@ptr-25vy0i7yslxo8ej7h6j.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2021-06-21 18:58:24 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 18:58:28 +0200 | xff0x | (~xff0x@2001:1a81:53cb:7800:fb34:5f25:12c9:2a25) |
2021-06-21 18:59:07 +0200 | gnoo | (~gnoo@user/gnoo) (Bye!) |
2021-06-21 18:59:43 +0200 | MoC | (~moc@user/moc) |
2021-06-21 19:00:24 +0200 | brandonh | (~brandonh@151.34.95.83) (Read error: Connection reset by peer) |
2021-06-21 19:00:48 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-21 19:01:15 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 19:01:24 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:02:39 +0200 | Morrow | (~MorrowM_@147.161.13.169) |
2021-06-21 19:02:57 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:02:58 +0200 | azeem | (~azeem@dynamic-adsl-94-34-49-60.clienti.tiscali.it) (Ping timeout: 258 seconds) |
2021-06-21 19:03:15 +0200 | azeem | (~azeem@176.201.29.233) |
2021-06-21 19:06:02 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:06:18 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-21 19:07:15 +0200 | brandonh | (~brandonh@151.34.22.105) |
2021-06-21 19:07:21 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 19:07:34 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:07:45 +0200 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 3.1) |
2021-06-21 19:07:57 +0200 | argento | (~argent0@168-227-97-34.ptr.westnet.com.ar) (Ping timeout: 258 seconds) |
2021-06-21 19:09:46 +0200 | chomwitt | (~Pitsikoko@2a02:587:dc0b:ff00:c813:70d9:31b2:b1b9) (Ping timeout: 268 seconds) |
2021-06-21 19:10:40 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:12:13 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:12:18 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 265 seconds) |
2021-06-21 19:12:33 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
2021-06-21 19:12:35 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 19:12:54 +0200 | mikail | (~mikail@2a02:c7f:bc9c:3100:ae93:93fc:603f:ceaf) (Ping timeout: 264 seconds) |
2021-06-21 19:13:06 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 19:14:33 +0200 | xkuru | (~xkuru@user/xkuru) (Quit: Unvirtualizing) |
2021-06-21 19:14:50 +0200 | xkuru | (~xkuru@user/xkuru) |
2021-06-21 19:15:12 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:16:43 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:17:28 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 19:17:33 +0200 | lbseale__ | (~lbseale@user/ep1ctetus) |
2021-06-21 19:17:39 +0200 | elf_fortrez | (~elf_fortr@adsl-64-237-239-58.prtc.net) |
2021-06-21 19:18:22 +0200 | chele | (~chele@user/chele) (Remote host closed the connection) |
2021-06-21 19:18:35 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-06-21 19:18:55 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 268 seconds) |
2021-06-21 19:19:00 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 19:19:17 +0200 | xkuru | (~xkuru@user/xkuru) (Client Quit) |
2021-06-21 19:19:35 +0200 | xkuru | (~xkuru@user/xkuru) |
2021-06-21 19:19:46 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:20:52 +0200 | lbseale_ | (~lbseale@user/ep1ctetus) (Ping timeout: 250 seconds) |
2021-06-21 19:21:19 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:22:27 +0200 | jonatan_ | (~nate@h77-53-70-163.cust.a3fiber.se) (Ping timeout: 265 seconds) |
2021-06-21 19:22:34 +0200 | lbseale__ | lbseale |
2021-06-21 19:24:11 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:25:43 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:26:19 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-06-21 19:28:30 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:29:35 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-06-21 19:30:05 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:32:20 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:7c55:3c65:74e1:3dc5) |
2021-06-21 19:32:53 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:33:00 +0200 | <dminuoso> | c_wraith: What kind of pattern matching are you thinking of in parametric polymorphism? |
2021-06-21 19:33:18 +0200 | <dminuoso> | Or did you mean unification? The sentence structure is not clear. |
2021-06-21 19:33:26 +0200 | Morrow | (~MorrowM_@147.161.13.169) (Ping timeout: 252 seconds) |
2021-06-21 19:33:44 +0200 | <c_wraith> | in that sentence I meant that unification is a kind of pattern matching, in a very broad sense. |
2021-06-21 19:34:00 +0200 | <c_wraith> | but that's very different from runtime pattern matching of values. |
2021-06-21 19:34:01 +0200 | <ski> | _73 : "maybe if I had to account for the possibility of error it would be easier to do this then instead start using the EitherT State transformer?" -- maybe. ("Is this a sensical reason?" -- yes) "Cps is reminding me a lot of monads…" -- there are clear similarities |
2021-06-21 19:34:26 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:36:02 +0200 | <ski> | _73 : it sounds like maybe you'd want to experiment with `ContT o' or `Codensity', or maybe a handwritten CPS monad, over `EitherT Error (State ProgramState) Value' |
2021-06-21 19:36:05 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-21 19:37:23 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:38:57 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:41:12 +0200 | chomwitt | (~Pitsikoko@athedsl-351576.home.otenet.gr) |
2021-06-21 19:41:40 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:43:13 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:46:18 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:47:08 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection) |
2021-06-21 19:47:51 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:48:28 +0200 | <ski> | _73 : one of the main reasons for using CPS / `Cont o'/`ContT o'/`Codensity', apart from wanting to do more exotic control behaviour, is for efficiency reasons. you'll sometimes hear "removal of interpretative overhead / avoiding step-by-step percolating errors upward / avoiding left-association", in connection with `(>>=)'. perhaps the `Either' (or maybe the `(,)') could cause some overhead, that could be |
2021-06-21 19:48:34 +0200 | <ski> | avoided in this way. but i'd say before doing anything like this, you should have some suspicion that this might be a problem; and then, you should really attempt to measure some |
2021-06-21 19:49:44 +0200 | maroloccio | (~marolocci@189.15.9.54) (Quit: Client closed) |
2021-06-21 19:50:39 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:51:45 +0200 | fef | (~thedawn@user/thedawn) |
2021-06-21 19:51:50 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2021-06-21 19:52:12 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:52:19 +0200 | xff0x | (~xff0x@2001:1a81:53cb:7800:fb34:5f25:12c9:2a25) (Ping timeout: 268 seconds) |
2021-06-21 19:52:36 +0200 | unyu | (~pyon@user/pyon) |
2021-06-21 19:53:40 +0200 | xff0x | (~xff0x@2001:1a81:53f8:8c00:17bc:3aea:ca8:b929) |
2021-06-21 19:53:55 +0200 | elf_fortrez | (~elf_fortr@adsl-64-237-239-58.prtc.net) (Ping timeout: 246 seconds) |
2021-06-21 19:54:53 +0200 | haltux | (~haltux@a89-154-181-47.cpe.netcabo.pt) |
2021-06-21 19:55:02 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 19:55:11 +0200 | <_73> | ski: what is meant by the `o` in `Cont o`? |
2021-06-21 19:56:36 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 19:59:35 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:01:07 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:04:14 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Remote host closed the connection) |
2021-06-21 20:05:39 +0200 | azeem | (~azeem@176.201.29.233) (Read error: Connection reset by peer) |
2021-06-21 20:05:48 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:05:59 +0200 | mikail | (~mikail@90.152.14.81) |
2021-06-21 20:06:48 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) (Quit: ERC (IRC client for Emacs 28.0.50)) |
2021-06-21 20:06:55 +0200 | azeem | (~azeem@dynamic-adsl-84-220-246-6.clienti.tiscali.it) |
2021-06-21 20:08:04 +0200 | MoC | (~moc@user/moc) (Quit: Konversation terminated!) |
2021-06-21 20:08:05 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) |
2021-06-21 20:08:55 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:09:05 +0200 | jonatan | (~nate@h77-53-70-163.cust.a3fiber.se) |
2021-06-21 20:10:28 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:11:16 +0200 | Izem | (~Izem@bras-base-london1483w-grc-42-65-95-172-41.dsl.bell.ca) |
2021-06-21 20:11:30 +0200 | <Izem> | do haskellers ever have the need for macros? |
2021-06-21 20:12:14 +0200 | fef | (~thedawn@user/thedawn) (Remote host closed the connection) |
2021-06-21 20:13:08 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:14:40 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:15:11 +0200 | <monochrom> | Yes. This is why Template Haskell exists. |
2021-06-21 20:15:12 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Quit: Leaving) |
2021-06-21 20:16:37 +0200 | <davean> | though Template Haskell is more than macros in a way, and its not wanted for much in Haskell |
2021-06-21 20:17:30 +0200 | <Izem> | ok, cool |
2021-06-21 20:17:45 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:19:21 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:22:15 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:23:34 +0200 | x_kuru | (~xkuru@user/xkuru) |
2021-06-21 20:23:48 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:24:03 +0200 | juhp_ | (~juhp@128.106.188.66) |
2021-06-21 20:24:59 +0200 | <ski> | _73 : the "final answer type" |
2021-06-21 20:26:14 +0200 | xkuru | (~xkuru@user/xkuru) (Ping timeout: 252 seconds) |
2021-06-21 20:26:46 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:27:13 +0200 | juhp | (~juhp@128.106.188.66) (Ping timeout: 265 seconds) |
2021-06-21 20:27:13 +0200 | juhp_ | juhp |
2021-06-21 20:28:21 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:29:03 +0200 | _73` | (~user@pool-96-252-123-136.bstnma.fios.verizon.net) |
2021-06-21 20:29:49 +0200 | ddellacosta | (~ddellacos@ool-44c73afc.dyn.optonline.net) |
2021-06-21 20:30:45 +0200 | _73 | (~user@pool-96-252-123-136.bstnma.fios.verizon.net) (Ping timeout: 258 seconds) |
2021-06-21 20:31:02 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:32:35 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:35:21 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:35:58 +0200 | MoC | (~moc@user/moc) |
2021-06-21 20:36:30 +0200 | ddellacosta | (~ddellacos@ool-44c73afc.dyn.optonline.net) (Ping timeout: 258 seconds) |
2021-06-21 20:36:53 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:37:21 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-06-21 20:38:22 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
2021-06-21 20:39:06 +0200 | <_73`> | ski: ok I see. I did initially try this but I wasn't able to get my `Either Error Value` functions lifted in. Do I need to rethink the Either functions as well? Before with the `ExceptT Error (State PS.ProgramState) ()` I was able to just use liftEither to get them lifted in, but now I cant come up with a way to get these functions to work with the Cont Monad. Is this ever going to work?: http://dpaste.com/C2ZEWRKHN |
2021-06-21 20:39:27 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) |
2021-06-21 20:39:40 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:39:47 +0200 | <_73`> | This problem lead me to do: `ContT PS.ProgramState (ExceptT Error (State PS.ProgramState)) Value`, but I think this may defeat the purpose. |
2021-06-21 20:40:11 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-21 20:40:40 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 20:41:14 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:41:36 +0200 | ddellaco_ | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 20:41:43 +0200 | Topsi | (~Tobias@dyndsl-091-249-082-141.ewe-ip-backbone.de) |
2021-06-21 20:42:07 +0200 | BSTMatAoUYek | (~BSTMatAoU@37.73.15.135) |
2021-06-21 20:42:07 +0200 | <BSTMatAoUYek> | 9o baCk to fReen0De OR N0rtH kOr3A nuke5 Y0u |
2021-06-21 20:42:07 +0200 | BSTMatAoUYek | (~BSTMatAoU@37.73.15.135) (Client Quit) |
2021-06-21 20:42:48 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Read error: Connection reset by peer) |
2021-06-21 20:42:56 +0200 | Izem | (~Izem@bras-base-london1483w-grc-42-65-95-172-41.dsl.bell.ca) (Quit: Izem) |
2021-06-21 20:43:05 +0200 | <sshine> | I thought it was south korea. |
2021-06-21 20:43:10 +0200 | ystael | (~ystael@user/ystael) (Ping timeout: 265 seconds) |
2021-06-21 20:43:10 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 20:43:13 +0200 | Izem | (~Izem@bras-base-london1483w-grc-42-65-95-172-41.dsl.bell.ca) |
2021-06-21 20:43:47 +0200 | v01d4lph4 | (~v01d4lph4@user/v01d4lph4) (Ping timeout: 258 seconds) |
2021-06-21 20:44:04 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 20:45:22 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Read error: Connection reset by peer) |
2021-06-21 20:45:30 +0200 | lTcLPewPJLOs | (~lTcLPewPJ@37.73.15.135) |
2021-06-21 20:45:30 +0200 | <lTcLPewPJLOs> | jo1n fr3Enode sIDE, we hAv3 CookieS&fRe3 bnc |
2021-06-21 20:45:31 +0200 | lTcLPewPJLOs | (~lTcLPewPJ@37.73.15.135) (Client Quit) |
2021-06-21 20:45:37 +0200 | betelgeuse7 | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 20:46:17 +0200 | ddellaco_ | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Read error: Connection reset by peer) |
2021-06-21 20:47:00 +0200 | MoC | (~moc@user/moc) (Quit: Konversation terminated!) |
2021-06-21 20:48:44 +0200 | Guest9 | (~Guest9@43.250.158.43) |
2021-06-21 20:54:53 +0200 | betelgeuse7 | betelgeuse |
2021-06-21 20:55:31 +0200 | brandonh | (~brandonh@151.34.22.105) (Quit: brandonh) |
2021-06-21 20:58:29 +0200 | amirouche` | amirouche |
2021-06-21 20:58:42 +0200 | <tomsmeding> | well at least they're mindful enough to approach the issue from both sides: scare us away from here and lure us to the other side |
2021-06-21 20:59:17 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-06-21 20:59:59 +0200 | <monochrom> | Except when you go to the other side you also see them suggesting you to come back here. |
2021-06-21 21:00:15 +0200 | <tomsmeding> | probably not the same "them" though |
2021-06-21 21:00:27 +0200 | <tomsmeding> | this at least was even the very same IP address :p |
2021-06-21 21:00:50 +0200 | <tomsmeding> | also the nicks were equally long and the messages were also (!) equally long |
2021-06-21 21:00:52 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Quit: Must not waste too much time here...) |
2021-06-21 21:01:49 +0200 | <monochrom> | Same "them" is already the best scenerio. The worse scenerio is different "them" therefore akin to two government departments telling you "go to the other department, this is their problem". |
2021-06-21 21:02:55 +0200 | <monochrom> | But good eyes catching the lengths :) |
2021-06-21 21:04:23 +0200 | tzar_bomba | (~tzar_bomb@78-56-41-78.static.zebra.lt) |
2021-06-21 21:05:13 +0200 | ystael | (~ystael@user/ystael) |
2021-06-21 21:05:50 +0200 | <tomsmeding> | my client hiding joins/leaves of idle nicks does make it easier to spot :) |
2021-06-21 21:06:01 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) (Quit: ERC (IRC client for Emacs 28.0.50)) |
2021-06-21 21:07:17 +0200 | <_73`> | ski: I now understand why my example was not going to work. |
2021-06-21 21:07:52 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
2021-06-21 21:08:12 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 21:08:35 +0200 | ski | would think it's more likely to be the same "them" (or similarly motivated people), at least for the "/!\ ..."-style spam, that's been visible on multiple networks, lately |
2021-06-21 21:08:42 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 264 seconds) |
2021-06-21 21:08:55 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Quit: Leaving) |
2021-06-21 21:09:06 +0200 | <ski> | (i've seen that on five networks, and i haven't really bothered to look around more for it) |
2021-06-21 21:09:19 +0200 | rawles | (~o@sputnik.rawles.net) |
2021-06-21 21:09:29 +0200 | favonia | (~favonia@user/favonia) |
2021-06-21 21:09:55 +0200 | rawles | (~o@sputnik.rawles.net) (Changing host) |
2021-06-21 21:09:55 +0200 | rawles | (~o@user/rawles) |
2021-06-21 21:11:07 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Remote host closed the connection) |
2021-06-21 21:11:12 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) |
2021-06-21 21:11:36 +0200 | zeenk | (~zeenk@2a02:2f04:a00e:6e00:d401:4c92:fecc:16f9) |
2021-06-21 21:12:26 +0200 | cyclosa | (~cyclosa@2603-6011-4a41-8ada-0000-0000-0000-0eaa.res6.spectrum.com) |
2021-06-21 21:12:32 +0200 | <ski> | @unmtl ContT o (ExceptT e (StateT s m)) a |
2021-06-21 21:12:32 +0200 | <lambdabot> | (a -> s -> m (Either e o, s)) -> s -> m (Either e o, s) |
2021-06-21 21:12:36 +0200 | <ski> | @unmtl ExceptT e (ContT o (StateT s m)) a |
2021-06-21 21:12:36 +0200 | <lambdabot> | (Either e a -> s -> m (o, s)) -> s -> m (o, s) |
2021-06-21 21:12:38 +0200 | <ski> | @unmtl ExceptT e (StateT s (ContT o m)) a |
2021-06-21 21:12:39 +0200 | <lambdabot> | s -> (Either e a -> s -> m o) -> m o |
2021-06-21 21:14:27 +0200 | <ski> | _73` : the last one looks more promising, i'd think. although, perhaps (or perhaps not) it would be worth it to manually replace `(Either e a -> s -> m o) ->' by `(e -> s -> m o) -> (a -> s -> m o) ->' (having separate "normal exit" and "exceptional exit" paths) .. |
2021-06-21 21:15:11 +0200 | MoC | (~moc@user/moc) |
2021-06-21 21:15:38 +0200 | amirouche | come to (free) deno side |
2021-06-21 21:15:40 +0200 | <amirouche> | quit |
2021-06-21 21:15:42 +0200 | <amirouche> | oops! |
2021-06-21 21:17:38 +0200 | <_73`> | I am going to have to consider this for some time. First I will see how far I can get with the last example. Thanks. |
2021-06-21 21:19:52 +0200 | Guest9 | (~Guest9@43.250.158.43) (Quit: Ping timeout (120 seconds)) |
2021-06-21 21:20:02 +0200 | Morrow | (~MorrowM_@147.161.9.243) |
2021-06-21 21:20:08 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
2021-06-21 21:20:08 +0200 | Erutuon | (~Erutuon@user/erutuon) |
2021-06-21 21:20:22 +0200 | Guest9 | (~Guest9@43.250.158.43) |
2021-06-21 21:20:28 +0200 | dhil | (~dhil@195.213.192.47) (Ping timeout: 250 seconds) |
2021-06-21 21:20:35 +0200 | derelict | (~derelict@user/derelict) (Ping timeout: 258 seconds) |
2021-06-21 21:21:14 +0200 | haltux | (~haltux@a89-154-181-47.cpe.netcabo.pt) (Ping timeout: 252 seconds) |
2021-06-21 21:27:46 +0200 | janiczek | (~janiczek@89-24-215-117.customers.tmcz.cz) |
2021-06-21 21:32:36 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 250 seconds) |
2021-06-21 21:32:58 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Ping timeout: 252 seconds) |
2021-06-21 21:33:19 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-06-21 21:33:38 +0200 | dhil | (~dhil@80.208.56.181) |
2021-06-21 21:35:12 +0200 | shapr | (~user@144.163.30.223) (Ping timeout: 268 seconds) |
2021-06-21 21:37:18 +0200 | jackhill | (~jackhill@kalessin.dragonsnail.net) (Read error: Connection reset by peer) |
2021-06-21 21:38:34 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
2021-06-21 21:38:57 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2021-06-21 21:41:00 +0200 | jackhill | (~jackhill@kalessin.dragonsnail.net) |
2021-06-21 21:42:18 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 21:43:02 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 252 seconds) |
2021-06-21 21:43:26 +0200 | favonia | (~favonia@user/favonia) |
2021-06-21 21:44:11 +0200 | shapr | (~user@144.163.30.223) |
2021-06-21 21:44:47 +0200 | pavonia | (~user@user/siracusa) |
2021-06-21 21:46:21 +0200 | learner-monad | (~ehanneken@user/learner-monad) |
2021-06-21 21:46:59 +0200 | favonia | (~favonia@user/favonia) (Client Quit) |
2021-06-21 21:47:28 +0200 | moet_ | (~moet@172.58.19.20) |
2021-06-21 21:47:41 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1) |
2021-06-21 21:48:17 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 21:48:36 +0200 | dmang | (~dmang@user/dmang) (Remote host closed the connection) |
2021-06-21 21:49:51 +0200 | dmang | (~dmang@047-032-148-170.res.spectrum.com) |
2021-06-21 21:50:50 +0200 | moet | (~moet@172.58.75.87) (Ping timeout: 265 seconds) |
2021-06-21 21:52:31 +0200 | dtman34 | (~dtman34@c-73-62-246-247.hsd1.mn.comcast.net) |
2021-06-21 21:52:48 +0200 | Codaraxis__ | (~Codaraxis@193.32.126.158) |
2021-06-21 21:52:52 +0200 | Codaraxis__ | (~Codaraxis@193.32.126.158) (Remote host closed the connection) |
2021-06-21 21:53:25 +0200 | Codaraxis | (~Codaraxis@193.32.126.158) |
2021-06-21 21:54:42 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) |
2021-06-21 21:57:22 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-21 21:58:22 +0200 | sheepduck | (~sheepduck@user/sheepduck) |
2021-06-21 21:58:29 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-06-21 21:59:22 +0200 | Guest8 | (~Guest8@71.sub-174-248-28.myvzw.com) |
2021-06-21 22:00:10 +0200 | Guest8 | (~Guest8@71.sub-174-248-28.myvzw.com) (Client Quit) |
2021-06-21 22:04:35 +0200 | killsushi | (~killsushi@user/killsushi) |
2021-06-21 22:05:14 +0200 | juhp | (~juhp@128.106.188.66) (Ping timeout: 252 seconds) |
2021-06-21 22:05:30 +0200 | AgentM | (~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) (Quit: Leaving.) |
2021-06-21 22:06:44 +0200 | juhp | (~juhp@128.106.188.66) |
2021-06-21 22:08:48 +0200 | IvanDru[m] | (~dendrumat@2001:470:69fc:105::2f9b) |
2021-06-21 22:08:52 +0200 | delYsid | (~user@user/delYsid) |
2021-06-21 22:09:41 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Ping timeout: 265 seconds) |
2021-06-21 22:11:02 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 22:11:58 +0200 | ddellaco_ | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 22:12:00 +0200 | kayprish | (~kayprish@46.240.143.86) (Quit: leaving) |
2021-06-21 22:12:14 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 22:12:30 +0200 | jumper149 | (~jumper149@80.240.31.34) |
2021-06-21 22:12:31 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-06-21 22:13:09 +0200 | <jumper149> | Hi, is it possible to give a constraint, that a specific type of a non-injective type family exists? |
2021-06-21 22:14:08 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-06-21 22:14:08 +0200 | azeem | (~azeem@dynamic-adsl-84-220-246-6.clienti.tiscali.it) (Read error: Connection reset by peer) |
2021-06-21 22:14:31 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit) |
2021-06-21 22:14:53 +0200 | azeem | (~azeem@dynamic-adsl-84-220-246-6.clienti.tiscali.it) |
2021-06-21 22:15:54 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Ping timeout: 268 seconds) |
2021-06-21 22:16:15 +0200 | sheepduck | (~sheepduck@user/sheepduck) (Quit: Leaving) |
2021-06-21 22:16:42 +0200 | sheepduck | (~sheepduck@user/sheepduck) |
2021-06-21 22:17:50 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) (Remote host closed the connection) |
2021-06-21 22:18:14 +0200 | kayprish | (~kayprish@46.240.143.86) (Quit: leaving) |
2021-06-21 22:18:23 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 22:19:35 +0200 | kayprish | (~kayprish@46.240.143.86) (Client Quit) |
2021-06-21 22:19:45 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 22:19:46 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 22:22:24 +0200 | kayprish | (~kayprish@46.240.143.86) (Client Quit) |
2021-06-21 22:22:35 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 22:22:41 +0200 | dhil | (~dhil@80.208.56.181) (Ping timeout: 268 seconds) |
2021-06-21 22:23:12 +0200 | ddellaco_ | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Ping timeout: 252 seconds) |
2021-06-21 22:24:15 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Read error: Connection reset by peer) |
2021-06-21 22:24:21 +0200 | ddellaco_ | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 22:24:41 +0200 | shapr | (~user@144.163.30.223) (Read error: Connection reset by peer) |
2021-06-21 22:25:33 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 22:26:34 +0200 | kayprish | (~kayprish@46.240.143.86) (Client Quit) |
2021-06-21 22:26:45 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 22:27:05 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 22:27:10 +0200 | Izem | (~Izem@bras-base-london1483w-grc-42-65-95-172-41.dsl.bell.ca) (Quit: Izem) |
2021-06-21 22:27:12 +0200 | shapr | (~user@144.163.30.223) |
2021-06-21 22:29:52 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 22:29:52 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:945c:cf17:8af9:9d4a) |
2021-06-21 22:31:26 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-06-21 22:31:27 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 22:31:44 +0200 | esclear[i] | (~esclear@phobos.esclear.de) (Quit: WeeChat 2.1) |
2021-06-21 22:32:05 +0200 | <delYsid> | heh, I am getting a shady investment AD on youtube tweag channel. |
2021-06-21 22:34:07 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 22:34:13 +0200 | derelict | (~derelict@user/derelict) |
2021-06-21 22:34:55 +0200 | Morrow | (~MorrowM_@147.161.9.243) (Read error: Connection reset by peer) |
2021-06-21 22:35:40 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 22:36:03 +0200 | dhil | (~dhil@195.213.192.47) |
2021-06-21 22:36:21 +0200 | Morrow | (~MorrowM_@147.161.9.243) |
2021-06-21 22:36:56 +0200 | kayprish | (~kayprish@46.240.143.86) (Read error: Connection reset by peer) |
2021-06-21 22:38:31 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 22:38:36 +0200 | MoC | (~moc@user/moc) (Quit: Konversation terminated!) |
2021-06-21 22:38:48 +0200 | korayal | (~Koray_Al@213.14.171.115) |
2021-06-21 22:39:10 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 265 seconds) |
2021-06-21 22:39:17 +0200 | argento | (~argent0@168-227-97-34.ptr.westnet.com.ar) |
2021-06-21 22:40:04 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 22:43:06 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 22:44:39 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 22:44:39 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 22:45:34 +0200 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 252 seconds) |
2021-06-21 22:47:22 +0200 | deshalb | (~deshalb@user/deshalb) (Quit: leaving) |
2021-06-21 22:47:25 +0200 | Erutuon | (~Erutuon@user/erutuon) |
2021-06-21 22:47:26 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 22:48:59 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 22:49:17 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-06-21 22:49:47 +0200 | kayprish | (~kayprish@46.240.143.86) (Quit: leaving) |
2021-06-21 22:49:59 +0200 | kayprish | (~kayprish@46.240.143.86) |
2021-06-21 22:51:44 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 22:52:58 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 22:53:17 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 22:54:02 +0200 | <Topsi> | Is there a decision on the Monad of no return proposal? Is return going to be removed from the Monad class in the future? |
2021-06-21 22:56:07 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 22:56:34 +0200 | ddellaco_ | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Ping timeout: 252 seconds) |
2021-06-21 22:57:41 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 23:00:17 +0200 | ystael | (~ystael@user/ystael) (Read error: Connection reset by peer) |
2021-06-21 23:00:40 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 23:00:41 +0200 | bilegeek | (~bilegeek@2600:1008:b017:63a6:c26d:d119:faaa:a6d7) |
2021-06-21 23:02:13 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 23:04:51 +0200 | chomwitt | (~Pitsikoko@athedsl-351576.home.otenet.gr) (Ping timeout: 258 seconds) |
2021-06-21 23:05:00 +0200 | mikail | (~mikail@90.152.14.81) (Ping timeout: 252 seconds) |
2021-06-21 23:05:04 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 23:05:11 +0200 | acarrico | (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Quit: Leaving.) |
2021-06-21 23:06:38 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 23:06:47 +0200 | zgrep | (~zgrep@user/zgrep) (Quit: It's a quitter's world.) |
2021-06-21 23:07:56 +0200 | shapr | (~user@144.163.30.223) (Ping timeout: 252 seconds) |
2021-06-21 23:08:18 +0200 | zgrep | (~zgrep@user/zgrep) |
2021-06-21 23:09:32 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 23:11:07 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 23:11:09 +0200 | mikail | (~mikail@2a02:c7f:bc9c:3100:ae93:93fc:603f:ceaf) |
2021-06-21 23:12:12 +0200 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.1) |
2021-06-21 23:14:05 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 23:15:21 +0200 | korayal | (~Koray_Al@213.14.171.115) (Quit: WeeChat 3.3-dev) |
2021-06-21 23:15:34 +0200 | korayal | (~Koray_Al@213.14.171.115) |
2021-06-21 23:15:39 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 23:16:11 +0200 | mikail_ | (~mikail@90.212.77.3) |
2021-06-21 23:16:25 +0200 | mikail | (~mikail@2a02:c7f:bc9c:3100:ae93:93fc:603f:ceaf) (Ping timeout: 244 seconds) |
2021-06-21 23:16:40 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-21 23:17:19 +0200 | hammock | (~Hammock@2600:1700:19a1:3330::625) |
2021-06-21 23:17:42 +0200 | <dminuoso> | jumper149: What do you mean by "specific type of a non-injective type family exists"? |
2021-06-21 23:18:36 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 23:19:09 +0200 | haltux | (~haltux@a89-154-181-47.cpe.netcabo.pt) |
2021-06-21 23:19:50 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:7c55:3c65:74e1:3dc5) (Ping timeout: 252 seconds) |
2021-06-21 23:20:11 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 23:21:13 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
2021-06-21 23:21:41 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:7c55:3c65:74e1:3dc5) |
2021-06-21 23:22:59 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 23:23:15 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds) |
2021-06-21 23:24:32 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 23:25:11 +0200 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-06-21 23:25:11 +0200 | hololeap | (hololeap@user/hololeap) |
2021-06-21 23:26:19 +0200 | MQ-17J | (~MQ-17J@8.21.10.15) |
2021-06-21 23:26:27 +0200 | michalz | (~michalz@185.246.204.40) (Remote host closed the connection) |
2021-06-21 23:28:15 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-21 23:29:51 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2021-06-21 23:30:58 +0200 | ystael | (~ystael@user/ystael) |
2021-06-21 23:32:27 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds) |
2021-06-21 23:35:49 +0200 | _73` | (~user@pool-96-252-123-136.bstnma.fios.verizon.net) (ERC (IRC client for Emacs 27.2)) |
2021-06-21 23:36:05 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-06-21 23:36:16 +0200 | beka | (~beka@104.193.170-244.public.monkeybrains.net) |
2021-06-21 23:38:08 +0200 | MQ-17J | (~MQ-17J@8.21.10.15) (Ping timeout: 265 seconds) |
2021-06-21 23:39:44 +0200 | chexum | (~chexum@gateway/tor-sasl/chexum) |
2021-06-21 23:41:11 +0200 | <jumper149> | dminuoso: `StM m a` from MonadBaseControl is supposedly a non-injective type-family. At least GHC tells me that. |
2021-06-21 23:42:05 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-06-21 23:42:23 +0200 | <jumper149> | I am pretty sure what I want is a function like `StM m () -> b (StM m ())`. |
2021-06-21 23:43:37 +0200 | <jumper149> | I guess GHC cannot know what type `StM m ()` actually is unless it was clear it's an injective type family. |
2021-06-21 23:44:08 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Remote host closed the connection) |
2021-06-21 23:44:24 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 23:44:40 +0200 | <dminuoso> | Is m quantified here? Or does m stand for some specific unknown type? |
2021-06-21 23:45:14 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-21 23:46:05 +0200 | <jumper149> | forall m. MonadBaseControl b m => StM m () -> b (StM m ()) |
2021-06-21 23:46:38 +0200 | <jumper149> | wait |
2021-06-21 23:49:39 +0200 | <jumper149> | yeah thats basically it |
2021-06-21 23:49:47 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-06-21 23:50:55 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-06-21 23:52:21 +0200 | <jumper149> | I should say that the actual value never gets inspected. |
2021-06-21 23:52:38 +0200 | MorrowM | (~MorrowM_@147.161.8.246) |
2021-06-21 23:52:41 +0200 | <jumper149> | I got it to the point of: `StM m Any -> b (StM m Any)` |
2021-06-21 23:54:42 +0200 | <jumper149> | and with `unsafeCoerce <$> runInBase $ pure undefined` I got it working. |
2021-06-21 23:55:04 +0200 | Morrow | (~MorrowM_@147.161.9.243) (Ping timeout: 258 seconds) |
2021-06-21 23:55:08 +0200 | <jumper149> | I guess it's impossible to understand what I'm trying to say though x) |
2021-06-21 23:55:12 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-06-21 23:55:54 +0200 | xff0x | (~xff0x@2001:1a81:53f8:8c00:17bc:3aea:ca8:b929) (Ping timeout: 240 seconds) |
2021-06-21 23:56:02 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer) |
2021-06-21 23:56:51 +0200 | xff0x | (~xff0x@2001:1a81:53f8:8c00:146b:f6fc:d9b4:bcad) |
2021-06-21 23:57:03 +0200 | beka | (~beka@104.193.170-244.public.monkeybrains.net) (Remote host closed the connection) |
2021-06-21 23:57:19 +0200 | beka | (~beka@104.193.170-244.PUBLIC.monkeybrains.net) |
2021-06-21 23:57:36 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-21 23:58:02 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) (Remote host closed the connection) |
2021-06-21 23:58:31 +0200 | ddellacosta | (~ddellacos@ool-44c73aff.dyn.optonline.net) |
2021-06-21 23:59:52 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |