| 2021-08-18 00:00:24 +0000 | Matthias1 | (~Matthias1@2603-8001-b545-4900-0d81-0ba2-5923-c2fb.res6.spectrum.com) (Remote host closed the connection) |
| 2021-08-18 00:00:27 +0000 | fabfianda | (~fabfianda@mob-5-91-112-128.net.vodafone.it) (Remote host closed the connection) |
| 2021-08-18 00:00:57 +0000 | polyphem | (~polyphem@ip5f5ac3ae.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
| 2021-08-18 00:01:47 +0000 | Matthias1 | (~Matthias1@2603-8001-b545-4900-0d81-0ba2-5923-c2fb.res6.spectrum.com) |
| 2021-08-18 00:03:46 +0000 | polyphem | (~polyphem@2a00:20:c044:9066:4432:d689:6451:b719) |
| 2021-08-18 00:07:13 +0000 | fabfianda | (~fabfianda@mob-5-91-112-128.net.vodafone.it) |
| 2021-08-18 00:10:48 +0000 | Guest84 | (~Guest84@2406:3003:2006:447e:a859:4a56:2629:b84e) (Quit: Client closed) |
| 2021-08-18 00:12:12 +0000 | polyphem | (~polyphem@2a00:20:c044:9066:4432:d689:6451:b719) (Ping timeout: 245 seconds) |
| 2021-08-18 00:13:02 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2021-08-18 00:16:40 +0000 | aarvar | (~aaron@2601:602:a080:fa0:2492:1e35:77f6:26e2) (Ping timeout: 240 seconds) |
| 2021-08-18 00:16:48 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 00:20:40 +0000 | fernand | (~fernand@179.156.35.4) (Ping timeout: 240 seconds) |
| 2021-08-18 00:20:56 +0000 | Xnuk | (~xnuk@vultr.xnu.kr) (Quit: ZNC - https://znc.in) |
| 2021-08-18 00:21:12 +0000 | Xnuk | (~xnuk@vultr.xnu.kr) |
| 2021-08-18 00:22:41 +0000 | <lechner> | Hi, i can't find much documentation or many examples for here/heredoc. Do any of them support the pipe-less syntax shown here? https://www.reddit.com/r/haskell/comments/8ereh/a_here_document_syntax/c091t96 |
| 2021-08-18 00:23:11 +0000 | chomwitt | (~chomwitt@ppp-94-67-193-240.home.otenet.gr) (Remote host closed the connection) |
| 2021-08-18 00:24:12 +0000 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 245 seconds) |
| 2021-08-18 00:27:58 +0000 | lavaman | (~lavaman@98.38.249.169) |
| 2021-08-18 00:29:43 +0000 | <lechner> | never mind, i think Data.String.Here does! |
| 2021-08-18 00:31:25 +0000 | stiell | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 244 seconds) |
| 2021-08-18 00:39:53 +0000 | stiell | (~stiell@gateway/tor-sasl/stiell) |
| 2021-08-18 00:46:40 +0000 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 240 seconds) |
| 2021-08-18 00:47:57 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 245 seconds) |
| 2021-08-18 01:04:19 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-08-18 01:09:12 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 245 seconds) |
| 2021-08-18 01:15:36 +0000 | geekosaur | (~geekosaur@xmonad/geekosaur) (Quit: Leaving) |
| 2021-08-18 01:16:57 +0000 | geekosaur | (~geekosaur@xmonad/geekosaur) |
| 2021-08-18 01:18:46 +0000 | tabemann_ | tabemann |
| 2021-08-18 01:20:30 +0000 | Cajun | (~Cajun@user/cajun) |
| 2021-08-18 01:24:02 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 01:26:32 +0000 | lbseale | (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
| 2021-08-18 01:36:53 +0000 | machinedgod | (~machinedg@24.105.81.50) |
| 2021-08-18 01:41:10 +0000 | pbrisbin | (~patrick@pool-108-16-214-93.phlapa.fios.verizon.net) (Ping timeout: 240 seconds) |
| 2021-08-18 01:47:45 +0000 | keutoi | (~keutoi@157.48.90.57) |
| 2021-08-18 01:47:55 +0000 | xff0x | (~xff0x@2001:1a81:535d:2700:6b08:445c:db9b:4d20) (Ping timeout: 258 seconds) |
| 2021-08-18 01:48:00 +0000 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 268 seconds) |
| 2021-08-18 01:49:38 +0000 | xff0x | (~xff0x@2001:1a81:5394:ea00:e22:1073:dc28:9e41) |
| 2021-08-18 01:50:50 +0000 | polyphem | (~polyphem@2a02:810d:640:776c:f4c0:a27a:540e:c15e) |
| 2021-08-18 01:58:10 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2021-08-18 01:59:40 +0000 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 240 seconds) |
| 2021-08-18 02:00:53 +0000 | alx741 | (~alx741@181.196.68.125) (Quit: alx741) |
| 2021-08-18 02:01:44 +0000 | Erutuon | (~Erutuon@user/erutuon) |
| 2021-08-18 02:11:13 +0000 | td_ | (~td@muedsl-82-207-238-133.citykom.de) (Ping timeout: 248 seconds) |
| 2021-08-18 02:12:16 +0000 | ahlk | (~user@2600:1700:31c0:3a10::48) |
| 2021-08-18 02:13:11 +0000 | td_ | (~td@94.134.91.158) |
| 2021-08-18 02:15:38 +0000 | thyriaen_ | (~thyriaen@dynamic-077-013-081-232.77.13.pool.telefonica.de) |
| 2021-08-18 02:16:48 +0000 | sleblanc | (~sleblanc@user/sleblanc) |
| 2021-08-18 02:17:18 +0000 | rubix | (~user@2601:602:9502:c70:b7f7:ce5b:5e25:126d) |
| 2021-08-18 02:19:10 +0000 | thyriaen | (~thyriaen@x4dbf521a.dyn.telefonica.de) (Ping timeout: 240 seconds) |
| 2021-08-18 02:22:05 +0000 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
| 2021-08-18 02:22:05 +0000 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (zinc.libera.chat (Nickname regained by services))) |
| 2021-08-18 02:22:05 +0000 | finn_elija | FinnElija |
| 2021-08-18 02:23:05 +0000 | thyriaen_ | (~thyriaen@dynamic-077-013-081-232.77.13.pool.telefonica.de) (Remote host closed the connection) |
| 2021-08-18 02:23:40 +0000 | benin036932 | (~benin@183.82.178.142) (Ping timeout: 240 seconds) |
| 2021-08-18 02:27:25 +0000 | Matthias1 | (~Matthias1@2603-8001-b545-4900-0d81-0ba2-5923-c2fb.res6.spectrum.com) (Read error: Connection reset by peer) |
| 2021-08-18 02:28:03 +0000 | Matthias1 | (~Matthias1@cpe-76-170-236-166.socal.res.rr.com) |
| 2021-08-18 02:30:24 +0000 | hiruji | (~hiruji@user/hiruji) (Quit: ZNC 1.8.2 - https://znc.in) |
| 2021-08-18 02:30:38 +0000 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
| 2021-08-18 02:30:39 +0000 | allbery_b | (~geekosaur@xmonad/geekosaur) |
| 2021-08-18 02:30:42 +0000 | allbery_b | geekosaur |
| 2021-08-18 02:36:27 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-08-18 02:38:18 +0000 | hiruji | (~hiruji@user/hiruji) |
| 2021-08-18 02:41:33 +0000 | obs | (~obscur1ty@user/obs/x-5924898) (Read error: Connection reset by peer) |
| 2021-08-18 02:46:25 +0000 | <lechner> | Hi, could someone please explain this error with postgres-simple? https://paste.debian.net/1208064/ |
| 2021-08-18 02:48:20 +0000 | <Axman6> | you probably need to add a type annotation so the compiler knows what type you actually want |
| 2021-08-18 02:48:38 +0000 | <lechner> | where, though? |
| 2021-08-18 02:49:01 +0000 | <c_wraith> | anywhere that specifies it |
| 2021-08-18 02:49:21 +0000 | <lechner> | output? |
| 2021-08-18 02:49:29 +0000 | <c_wraith> | type inference means you can mention the type anywhere and it will be plumbed through appropriately |
| 2021-08-18 02:49:33 +0000 | <Axman6> | (rows :: [Foo]) <- query... or something. that might need a language extension though |
| 2021-08-18 02:50:09 +0000 | <Axman6> | if you use `rows` somewhere, you can also add it there by replacing `rows` with `(rows :: [Foo])` |
| 2021-08-18 02:51:24 +0000 | Seby | (~Seby@115.98.232.63) |
| 2021-08-18 02:51:40 +0000 | <lechner> | what's the easiest way to print rows? i think it's a [String] |
| 2021-08-18 02:52:06 +0000 | <c_wraith> | (mapM_ putStrLn) ? |
| 2021-08-18 02:52:25 +0000 | <c_wraith> | and... it's probably not a [String] |
| 2021-08-18 02:52:47 +0000 | <c_wraith> | I don't think that instance exists |
| 2021-08-18 02:53:49 +0000 | <c_wraith> | lechner: it's polymorphic in the return type. it can be anything that has an appropriate instance |
| 2021-08-18 02:54:08 +0000 | <lechner> | yeah, i get that |
| 2021-08-18 02:54:16 +0000 | <c_wraith> | though it will have runtime errors if the instance doesn't fit the returned data |
| 2021-08-18 02:54:42 +0000 | <lechner> | i just cant figure out what i will get back |
| 2021-08-18 02:55:24 +0000 | <c_wraith> | then how could the compiler? :P |
| 2021-08-18 02:56:04 +0000 | <c_wraith> | the fact is, we can't tell you. |
| 2021-08-18 02:56:10 +0000 | <c_wraith> | it depends on the query |
| 2021-08-18 02:56:34 +0000 | <lechner> | yeah it's my first time with pg-simple |
| 2021-08-18 02:56:56 +0000 | <c_wraith> | for quick'n'dirty, you probably want a tuple type |
| 2021-08-18 02:57:14 +0000 | <c_wraith> | with a number of elements matching the number of things you're selecting, and appropriate types for each element |
| 2021-08-18 02:57:16 +0000 | <lechner> | single column |
| 2021-08-18 02:58:05 +0000 | <lechner> | https://hackage.haskell.org/package/postgresql-simple-0.6.4/docs/Database-PostgreSQL-Simple.html#t… |
| 2021-08-18 02:58:11 +0000 | <lechner> | sorry |
| 2021-08-18 02:58:38 +0000 | <c_wraith> | You probably want the 1-tuple, then. https://hackage.haskell.org/package/postgresql-simple-0.6.4/docs/Database-PostgreSQL-Simple.html#t… |
| 2021-08-18 02:59:21 +0000 | <c_wraith> | try mapM_ (putStrLn . fromOnly) |
| 2021-08-18 02:59:32 +0000 | <Axman6> | yeah I was going to say, Only will be the type you need |
| 2021-08-18 02:59:49 +0000 | <Axman6> | so it'll return Only String's |
| 2021-08-18 02:59:53 +0000 | <lechner> | Only or [Only String] ? |
| 2021-08-18 03:00:09 +0000 | <c_wraith> | r ~ Only String |
| 2021-08-18 03:00:18 +0000 | <c_wraith> | the return type is IO [r] |
| 2021-08-18 03:03:33 +0000 | rubix | (~user@2601:602:9502:c70:b7f7:ce5b:5e25:126d) (ERC (IRC client for Emacs 28.0.50)) |
| 2021-08-18 03:03:47 +0000 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 2021-08-18 03:04:49 +0000 | <lechner> | it's magic! the calls to fromOnly inside mapM_ were enough to compile |
| 2021-08-18 03:04:59 +0000 | <c_wraith> | the advantage of printing with (mapM_ (putStrLn . fromOnly)) is that type inference means that it uniquely identifies the type of r |
| 2021-08-18 03:05:15 +0000 | <lechner> | yeah, it's amazing! |
| 2021-08-18 03:05:34 +0000 | <lechner> | which way of printin wuold not do so? |
| 2021-08-18 03:05:40 +0000 | <lechner> | printing |
| 2021-08-18 03:05:49 +0000 | <lechner> | would |
| 2021-08-18 03:06:04 +0000 | <c_wraith> | replacing putStrLn with print would leave the type ambiguous |
| 2021-08-18 03:06:24 +0000 | <c_wraith> | or just using (mapM_ print) |
| 2021-08-18 03:06:27 +0000 | iqubic | (~user@2601:602:9502:c70:b7f7:ce5b:5e25:126d) |
| 2021-08-18 03:06:41 +0000 | <c_wraith> | it would *work*, but the types wouldn't be inferred |
| 2021-08-18 03:07:57 +0000 | Skyfire | (~pyon@user/pyon) (Quit: WeeChat 3.2) |
| 2021-08-18 03:08:21 +0000 | Skyfire | (~pyon@user/pyon) |
| 2021-08-18 03:08:53 +0000 | <lechner> | unfortunately the query result is wrong. can -simple pass Pg array types? |
| 2021-08-18 03:09:11 +0000 | <lechner> | the query is otherwise tested |
| 2021-08-18 03:09:17 +0000 | <lechner> | and short |
| 2021-08-18 03:10:24 +0000 | <c_wraith> | looks like it |
| 2021-08-18 03:10:28 +0000 | <c_wraith> | https://hackage.haskell.org/package/postgresql-simple-0.6.4/docs/Database-PostgreSQL-Simple-Types.… |
| 2021-08-18 03:12:01 +0000 | hueso | (~root@user/hueso) (Ping timeout: 248 seconds) |
| 2021-08-18 03:14:35 +0000 | hueso | (~root@user/hueso) |
| 2021-08-18 03:17:26 +0000 | sim590 | (~simon@modemcable090.207-203-24.mc.videotron.ca) (Quit: WeeChat 2.9) |
| 2021-08-18 03:19:32 +0000 | simon1 | (~simon@modemcable090.207-203-24.mc.videotron.ca) |
| 2021-08-18 03:19:50 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2021-08-18 03:20:08 +0000 | <lechner> | Is there an easier way to write this? mapM_ (putStrLn $) (map ("Need " <>) $ map fromOnly rows |
| 2021-08-18 03:21:21 +0000 | <c_wraith> | well, a left section of ($) is always redundant |
| 2021-08-18 03:21:49 +0000 | <lechner> | point taken |
| 2021-08-18 03:22:12 +0000 | <c_wraith> | and then you have three consecutive maps. well, one is a mapM_, but that could be written as sequence_ . map |
| 2021-08-18 03:22:20 +0000 | <c_wraith> | you can always fuse consecutive maps |
| 2021-08-18 03:22:43 +0000 | <c_wraith> | mapM_ (putStrLn . ("Need " <>) . fromOnly) rows |
| 2021-08-18 03:22:47 +0000 | <Axman6> | that's mapM_ (putStrLn . ("Need "<>) . fromOnly) rows |
| 2021-08-18 03:23:09 +0000 | Axman6 | highfives c_wraith |
| 2021-08-18 03:23:12 +0000 | monochrom | (trebla@216.138.220.146) (Quit: NO CARRIER) |
| 2021-08-18 03:23:24 +0000 | <lechner> | i had a problem with the operator precedence of <> vs unapplied fromOnly |
| 2021-08-18 03:23:41 +0000 | <lechner> | i see |
| 2021-08-18 03:23:47 +0000 | <lechner> | TIL |
| 2021-08-18 03:23:47 +0000 | <c_wraith> | that should be irrelevant when using a section |
| 2021-08-18 03:25:06 +0000 | <lechner> | Axman6: thanks! it must be painful to watch |
| 2021-08-18 03:26:10 +0000 | derelict | (~derelict@user/derelict) (Ping timeout: 240 seconds) |
| 2021-08-18 03:28:05 +0000 | monochrom | (trebla@216.138.220.146) |
| 2021-08-18 03:29:15 +0000 | <lechner> | c_wraith: thank you so much for your help! i have a VALUES vs unnest() problem but will have to solve that later tonight. great progress! |
| 2021-08-18 03:33:27 +0000 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 2021-08-18 03:35:14 +0000 | jamie101 | (~jamie101@pa49-199-6-183.pa.vic.optusnet.com.au) |
| 2021-08-18 03:39:09 +0000 | jamie101 | (~jamie101@pa49-199-6-183.pa.vic.optusnet.com.au) () |
| 2021-08-18 03:47:01 +0000 | aarvar | (~aaron@2601:602:a080:fa0:d9cd:315e:aa0a:fa0) |
| 2021-08-18 03:47:28 +0000 | aarvar | (~aaron@2601:602:a080:fa0:d9cd:315e:aa0a:fa0) (Client Quit) |
| 2021-08-18 03:47:57 +0000 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 245 seconds) |
| 2021-08-18 03:50:07 +0000 | falafel | (~falafel@2601:483:4e00:2b20:e0f3:c7c1:91ca:fe6e) |
| 2021-08-18 03:50:58 +0000 | u0_a253 | (~u0_a253@2402:9d80:247:f919:764b:d5cb:dc9:2b1d) |
| 2021-08-18 03:51:35 +0000 | <u0_a253> | hello world |
| 2021-08-18 03:54:41 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 03:55:33 +0000 | <lechner> | Hi, is [1, 2, 3] the same as [(1), (2), (3)] please? |
| 2021-08-18 03:56:02 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 03:56:24 +0000 | <lechner> | it's for this with one column https://hackage.haskell.org/package/postgresql-simple-0.6.4/docs/Database-PostgreSQL-Simple-Types.… |
| 2021-08-18 03:58:24 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
| 2021-08-18 03:59:14 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 2021-08-18 04:00:03 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
| 2021-08-18 04:02:53 +0000 | mei | (~mei@user/mei) |
| 2021-08-18 04:04:07 +0000 | <int-e> | lechner: yes to your question, but it's not applicable to the documentation, which has a list of tuples, more like [(1,2), (3,4)] |
| 2021-08-18 04:04:25 +0000 | <int-e> | > length [(1,2),(3,4)] |
| 2021-08-18 04:04:27 +0000 | <lambdabot> | 2 |
| 2021-08-18 04:04:44 +0000 | <lechner> | int-e: what if my tuples contain only one element each? |
| 2021-08-18 04:05:03 +0000 | <int-e> | > [(1),(2),(3),(4)] |
| 2021-08-18 04:05:05 +0000 | <lambdabot> | [1,2,3,4] |
| 2021-08-18 04:05:16 +0000 | <int-e> | I already said yes :-/ |
| 2021-08-18 04:06:03 +0000 | severen | (~severen@202.36.179.72) |
| 2021-08-18 04:07:02 +0000 | <lechner> | am i not doing the same thing as the example? https://paste.debian.net/1208072/ |
| 2021-08-18 04:12:04 +0000 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
| 2021-08-18 04:17:09 +0000 | <oak-> | >[(1,),(2,),(3,),(4,)] |
| 2021-08-18 04:17:33 +0000 | <oak-> | > [(1,),(2,),(3,),(4,)] |
| 2021-08-18 04:17:35 +0000 | <lambdabot> | error: |
| 2021-08-18 04:17:35 +0000 | <lambdabot> | • No instance for (Typeable t0) |
| 2021-08-18 04:17:35 +0000 | <lambdabot> | arising from a use of ‘show_M72548533020348860047’ |
| 2021-08-18 04:18:11 +0000 | <glguy> | > (1,) 2 |
| 2021-08-18 04:18:13 +0000 | <lambdabot> | (1,2) |
| 2021-08-18 04:18:59 +0000 | <glguy> | > (,1) 2 |
| 2021-08-18 04:19:01 +0000 | <lambdabot> | (2,1) |
| 2021-08-18 04:20:39 +0000 | severen | (~severen@202.36.179.72) (Quit: WeeChat 3.2) |
| 2021-08-18 04:22:33 +0000 | ahlk | (~user@2600:1700:31c0:3a10::48) (ERC (IRC client for Emacs 26.1)) |
| 2021-08-18 04:22:54 +0000 | <int-e> | https://hackage.haskell.org/package/postgresql-simple-0.6.4/docs/Database-PostgreSQL-Simple.html#t… |
| 2021-08-18 04:23:01 +0000 | <int-e> | lechner: ^^ |
| 2021-08-18 04:24:39 +0000 | <int-e> | (which I found via the list of instances of ToRow) |
| 2021-08-18 04:28:40 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2021-08-18 04:32:33 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 248 seconds) |
| 2021-08-18 04:39:58 +0000 | derelict | (~derelict@user/derelict) |
| 2021-08-18 04:44:12 +0000 | derelict | (~derelict@user/derelict) (Ping timeout: 245 seconds) |
| 2021-08-18 04:44:16 +0000 | marinelli[m] | (~marinelli@2001:470:69fc:105::2d8) (Quit: Reconnecting) |
| 2021-08-18 04:44:31 +0000 | marinelli[m] | (~marinelli@2001:470:69fc:105::2d8) |
| 2021-08-18 04:51:13 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-08-18 04:52:54 +0000 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 2021-08-18 04:54:51 +0000 | Sgeo | (~Sgeo@user/sgeo) |
| 2021-08-18 04:55:54 +0000 | <nerdypepper> | hiya o/, is there a parser library for haskell that can help produce loseless syntax trees? something like rowan for rust: https://github.com/rust-analyzer/rowan |
| 2021-08-18 04:56:43 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds) |
| 2021-08-18 05:01:13 +0000 | <lechner> | int-e: unfortunately, i have no idea where to stick that Only https://paste.debian.net/1208074/ |
| 2021-08-18 05:01:14 +0000 | <Axman6> | what does a "lossless syntax tree" mean? |
| 2021-08-18 05:02:11 +0000 | <Axman6> | lechner: Only is for the results, not the arguments |
| 2021-08-18 05:03:02 +0000 | <nerdypepper> | Axman6: it preserves whitespace, comments etc., a more common term is concrete syntax tree. the idea is you can reproduce the source text from the syntax tree |
| 2021-08-18 05:03:35 +0000 | <Axman6> | you could definitely do that with any of the parser libraries I would think |
| 2021-08-18 05:05:56 +0000 | <nerdypepper> | Axman6: oh yeah for sure, you can still preserve whitespace tokens etc. i was hoping to find a library that does the necessary performance optimizations for you (like rowan). |
| 2021-08-18 05:06:33 +0000 | <nerdypepper> | rowan explicitly tries to avoid allocating every single token by interning whitespace and sharing structurally similar subtrees etc. |
| 2021-08-18 05:07:26 +0000 | <int-e> | It's needed for the outer tuple, I think. Only (Values [blah,blub]) |
| 2021-08-18 05:07:53 +0000 | argento | (~argent0@168-227-97-23.ptr.westnet.com.ar) (Quit: leaving) |
| 2021-08-18 05:09:31 +0000 | <Axman6> | edwardk: do you have any thoughts on nerdypepper's question? It feels like trifecta/parsers should be able to do this for you, but I'm not familliar enough to say for sure |
| 2021-08-18 05:10:36 +0000 | <int-e> | nerdypepper: And I think it wants ByteString or Text, never String. |
| 2021-08-18 05:11:32 +0000 | <lechner> | int-e: it seems a step closer, perhaps https://paste.debian.net/1208075/ |
| 2021-08-18 05:12:16 +0000 | <int-e> | sorry for picking the wrong nick all the time :-/ |
| 2021-08-18 05:15:21 +0000 | <Axman6> | lechner: why are you using Values? |
| 2021-08-18 05:15:31 +0000 | <Axman6> | it seems like you're really complicating things more than they need to be |
| 2021-08-18 05:15:48 +0000 | <lechner> | please go ahead |
| 2021-08-18 05:15:55 +0000 | <iqubic> | I see that #haskell survived the transition to Libera. That's good to see. |
| 2021-08-18 05:16:01 +0000 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
| 2021-08-18 05:16:17 +0000 | <lechner> | Axman6: 'semver' cast, maybe? |
| 2021-08-18 05:16:28 +0000 | <int-e> | Well, the ToField Char indicates that it used a ToField a => ToRow [a] instance to get at ToRow String, so something went wrong apart from not using ByteString or Text (the string should be a field, not a row) |
| 2021-08-18 05:16:40 +0000 | Seby | (~Seby@115.98.232.63) (Ping timeout: 240 seconds) |
| 2021-08-18 05:16:41 +0000 | <Axman6> | oh actually... I hadn't looked at the query very closely |
| 2021-08-18 05:17:13 +0000 | <Axman6> | iqubic: irc is just a medium, #haskell will never die |
| 2021-08-18 05:17:18 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 2021-08-18 05:17:25 +0000 | <iqubic> | That's good to know. |
| 2021-08-18 05:17:34 +0000 | int-e | isn't fully following either. |
| 2021-08-18 05:17:58 +0000 | <lechner> | Axman6: it's also an antijoin via EXCEPT |
| 2021-08-18 05:19:03 +0000 | <int-e> | lechner: Quite possibly the strings also need Only. And by ByteString or Text, not String. |
| 2021-08-18 05:19:14 +0000 | <int-e> | s/by/be/ |
| 2021-08-18 05:19:33 +0000 | <Axman6> | ok I can see now what you were trying to do but I have no idea how it's supposed to be done |
| 2021-08-18 05:19:45 +0000 | <lechner> | without Only from the strings https://paste.debian.net/1208076/ |
| 2021-08-18 05:20:32 +0000 | <lechner> | Axman6: it's a value transfer issue. i could also use JSON |
| 2021-08-18 05:20:34 +0000 | <int-e> | lechner: Only turns a field into a row. |
| 2021-08-18 05:21:03 +0000 | <int-e> | and there is a ToField instance for Text. |
| 2021-08-18 05:21:13 +0000 | <Axman6> | Have you tried `(Values ["semver"] [Only ("2.1.6" :: ByteString)])`? |
| 2021-08-18 05:21:25 +0000 | <Axman6> | or Text? |
| 2021-08-18 05:21:38 +0000 | <int-e> | Axman6: We're getting there. You also need Only on the outside. |
| 2021-08-18 05:22:32 +0000 | <lechner> | that compile, with Text |
| 2021-08-18 05:22:37 +0000 | <lechner> | compiled |
| 2021-08-18 05:23:01 +0000 | <Axman6> | so all good? |
| 2021-08-18 05:23:11 +0000 | <Axman6> | does the query run??? :o |
| 2021-08-18 05:23:47 +0000 | <lechner> | the query isn't working |
| 2021-08-18 05:23:58 +0000 | <Axman6> | now for the fun part :P |
| 2021-08-18 05:24:38 +0000 | <lechner> | the query is tested; and this is the second time around |
| 2021-08-18 05:26:05 +0000 | <lechner> | i can probably use PGArray with unnest or a JSON string but VALUES seemed so easy |
| 2021-08-18 05:30:12 +0000 | <edwardk> | Axman6: context? |
| 2021-08-18 05:30:16 +0000 | <edwardk> | *reading back* |
| 2021-08-18 05:30:31 +0000 | <Axman6> | see message at XX:55 |
| 2021-08-18 05:30:39 +0000 | <edwardk> | lossless parsing? |
| 2021-08-18 05:30:39 +0000 | <lechner> | what does the "fat" arrow here mean, please? https://hackage.haskell.org/package/postgresql-simple-0.6.4/docs/Database-PostgreSQL-Simple.html#v… |
| 2021-08-18 05:31:05 +0000 | <Axman6> | it's a type class constraint |
| 2021-08-18 05:31:24 +0000 | <Axman6> | saying that q must be an instance of the ToRow class |
| 2021-08-18 05:31:59 +0000 | <edwardk> | i usually wind up building a parser for whitespace that captures everything inside the whitespace and then make sure my syntax trees are very close to the surface language syntax with little whitespace bins in the tree wherever spaces could occur. this works until you need layout and then regenerating the tree has some extra consistency crap it has to satisfy. |
| 2021-08-18 05:32:24 +0000 | <edwardk> | but i don't know a general purpose 'exactprint' style library |
| 2021-08-18 05:32:53 +0000 | <edwardk> | (whitespace here includes comments, etc.) |
| 2021-08-18 05:32:59 +0000 | <dibblego> | we started writing one aaaaages ago |
| 2021-08-18 05:32:59 +0000 | Axman6 | awaits the nerdsnipe to kick in... |
| 2021-08-18 05:33:20 +0000 | <edwardk> | not happening. groq's keeping me busy this month and i just bought a house and am moving =) |
| 2021-08-18 05:33:33 +0000 | <Axman6> | 'grats! |
| 2021-08-18 05:34:10 +0000 | iqubic` | (~user@2601:602:9502:c70:b7f7:ce5b:5e25:126d) |
| 2021-08-18 05:34:19 +0000 | iqubic` | (~user@2601:602:9502:c70:b7f7:ce5b:5e25:126d) () |
| 2021-08-18 05:34:53 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 2021-08-18 05:38:10 +0000 | iqubic | (~user@2601:602:9502:c70:b7f7:ce5b:5e25:126d) (Ping timeout: 240 seconds) |
| 2021-08-18 05:40:11 +0000 | <cdsmith> | Does this exist somewhere? data ReifiedInstance (cls :: Type -> Constraint) (a :: Type) where ReifiedInstance :: cls a => ReifiedInstance cls a |
| 2021-08-18 05:42:56 +0000 | <nerdypepper> | Axman6: thanks for the mention, trifecta looks great, i will take a look at that. it would be a pretty mega project to rewrite something like rowan, but i am not opposed to trying that out either! |
| 2021-08-18 05:43:11 +0000 | <hsek[m]> | Are there resources for me to read regarding separating API types from the DB types in `servant`? I don't really understand why because it seems really convenient. But I know that a lot of people advocate against it. https://old.reddit.com/r/haskell/comments/p64g1q/servantutil_extending_servant_with_database/h9bbp… |
| 2021-08-18 05:44:11 +0000 | fabfianda | (~fabfianda@mob-5-91-112-128.net.vodafone.it) (Ping timeout: 268 seconds) |
| 2021-08-18 05:49:44 +0000 | Gurkenglas_ | (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 268 seconds) |
| 2021-08-18 05:51:34 +0000 | ablutor | (~quassel@wasscher.com) (Quit: going for vitamine d) |
| 2021-08-18 05:51:51 +0000 | ablutor | (~quassel@wasscher.com) |
| 2021-08-18 05:52:07 +0000 | <cdsmith> | hsek: Can't point to a document, but APIs have different compatibility constraints. They might start out looking similar to backend data, but over time, you'll want to migrate your storage schemas, while APIs must stay the same. That's hard to handle if they are the same type. |
| 2021-08-18 05:55:56 +0000 | favonia | (~favonia@user/favonia) |
| 2021-08-18 05:59:25 +0000 | ozzymcduff | (~mathieu@81-234-151-21-no94.tbcn.telia.com) (Remote host closed the connection) |
| 2021-08-18 06:02:28 +0000 | ozzymcduff | (~mathieu@81-234-151-21-no94.tbcn.telia.com) |
| 2021-08-18 06:02:39 +0000 | <hsek[m]> | I see, thanks Chris Smith ! |
| 2021-08-18 06:02:41 +0000 | arahael | (~arahael@124.170.238.106) (Ping timeout: 248 seconds) |
| 2021-08-18 06:03:10 +0000 | falafel | (~falafel@2601:483:4e00:2b20:e0f3:c7c1:91ca:fe6e) (Ping timeout: 240 seconds) |
| 2021-08-18 06:03:32 +0000 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
| 2021-08-18 06:04:43 +0000 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
| 2021-08-18 06:06:34 +0000 | <lechner> | int-e Axman6: it was the stupidest of all errors. the function was not called. anyway, now I have a runtime type error: Incompatible {errSQLType = "semver", errSQLTableOid = Nothing, errSQLField = "lintian_version", errHaskellType = "Text", errMessage = "types incompatible"} |
| 2021-08-18 06:07:31 +0000 | <lechner> | but it's quite late here. thank you both for your help so far! |
| 2021-08-18 06:10:17 +0000 | ubert | (~Thunderbi@91.141.56.213.wireless.dyn.drei.com) |
| 2021-08-18 06:12:03 +0000 | arahael | (~arahael@203.221.97.63) |
| 2021-08-18 06:16:43 +0000 | echoreply1 | (~echoreply@2001:19f0:9002:1f3b:5400:ff:fe6f:8b8d) (Quit: WeeChat 2.8) |
| 2021-08-18 06:17:01 +0000 | Seby | (~Seby@115.98.232.63) |
| 2021-08-18 06:17:46 +0000 | Seby | (~Seby@115.98.232.63) (Client Quit) |
| 2021-08-18 06:17:50 +0000 | vysn | (~vysn@user/vysn) |
| 2021-08-18 06:18:03 +0000 | echoreply | (~echoreply@45.32.163.16) |
| 2021-08-18 06:18:10 +0000 | chomwitt | (~chomwitt@2a02:587:dc0c:e200:12c3:7bff:fe6d:d374) |
| 2021-08-18 06:20:04 +0000 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2021-08-18 06:22:45 +0000 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) |
| 2021-08-18 06:25:16 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 06:28:47 +0000 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 245 seconds) |
| 2021-08-18 06:32:47 +0000 | aegon | (~mike@174.127.249.180) (Quit: Lost terminal) |
| 2021-08-18 06:37:43 +0000 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 2021-08-18 06:41:19 +0000 | smitop | (~smitop@user/smitop) (Remote host closed the connection) |
| 2021-08-18 06:42:08 +0000 | smitop | (~smitop@user/smitop) |
| 2021-08-18 06:43:46 +0000 | lortabac | (~lortabac@151.73.97.57) |
| 2021-08-18 06:44:52 +0000 | acidjnk_new3 | (~acidjnk@p200300d0c72b955250c7a959aba8feb6.dip0.t-ipconnect.de) |
| 2021-08-18 06:48:06 +0000 | ubert1 | (~Thunderbi@91.141.56.213.wireless.dyn.drei.com) |
| 2021-08-18 06:48:33 +0000 | michalz | (~michalz@185.246.204.62) |
| 2021-08-18 06:48:48 +0000 | gehmehgeh | (~user@user/gehmehgeh) |
| 2021-08-18 06:49:39 +0000 | Unhammer | (~Unhammer@user/unhammer) |
| 2021-08-18 06:59:13 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds) |
| 2021-08-18 07:03:11 +0000 | derelict | (~derelict@user/derelict) |
| 2021-08-18 07:04:15 +0000 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
| 2021-08-18 07:04:40 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds) |
| 2021-08-18 07:05:28 +0000 | Lord_of_Life_ | Lord_of_Life |
| 2021-08-18 07:10:46 +0000 | <albet70> | please unbanned 47.245.54.240 |
| 2021-08-18 07:15:00 +0000 | <dibblego> | albet70: read the topic |
| 2021-08-18 07:16:52 +0000 | Boomerang | (~Boomerang@xd520f68c.cust.hiper.dk) |
| 2021-08-18 07:23:58 +0000 | u0_a2531 | (~u0_a253@2402:9d80:247:f919:942:7578:ff92:e257) |
| 2021-08-18 07:24:47 +0000 | Erutuon | (~Erutuon@user/erutuon) |
| 2021-08-18 07:25:17 +0000 | lortabac | (~lortabac@151.73.97.57) (Read error: Connection reset by peer) |
| 2021-08-18 07:26:05 +0000 | u0_a253 | (~u0_a253@2402:9d80:247:f919:764b:d5cb:dc9:2b1d) (Remote host closed the connection) |
| 2021-08-18 07:26:44 +0000 | u0_a2531 | (~u0_a253@2402:9d80:247:f919:942:7578:ff92:e257) (Remote host closed the connection) |
| 2021-08-18 07:28:56 +0000 | lortabac | (~lortabac@151.73.97.57) |
| 2021-08-18 07:30:09 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 07:34:20 +0000 | mc47 | (~mc47@xmonad/TheMC47) |
| 2021-08-18 07:35:05 +0000 | shriekingnoise | (~shrieking@186.137.144.80) (Quit: Quit) |
| 2021-08-18 07:39:13 +0000 | slack1256 | (~slack1256@191.125.227.92) |
| 2021-08-18 07:40:59 +0000 | justache | (~justache@user/justache) (Ping timeout: 252 seconds) |
| 2021-08-18 07:41:42 +0000 | benin036932 | (~benin@183.82.178.142) |
| 2021-08-18 07:43:00 +0000 | justache | (~justache@user/justache) |
| 2021-08-18 07:44:33 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2021-08-18 07:45:10 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 07:47:10 +0000 | justache | (~justache@user/justache) (Ping timeout: 240 seconds) |
| 2021-08-18 07:47:10 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 2021-08-18 07:47:21 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 2021-08-18 07:49:21 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 248 seconds) |
| 2021-08-18 07:52:17 +0000 | justache | (~justache@user/justache) |
| 2021-08-18 07:56:07 +0000 | Xnuk | (~xnuk@vultr.xnu.kr) (Quit: ZNC - https://znc.in) |
| 2021-08-18 07:56:25 +0000 | Xnuk | (~xnuk@45.76.202.58) |
| 2021-08-18 07:58:27 +0000 | justache | (~justache@user/justache) (Read error: Connection reset by peer) |
| 2021-08-18 07:58:49 +0000 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
| 2021-08-18 07:59:18 +0000 | justache | (~justache@user/justache) |
| 2021-08-18 07:59:32 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 08:03:16 +0000 | <merijn> | sshine_: I wouldn't say that's *cabal* failing, but it's a weird error. You're using a much newer version of hspec than your stack setup, but afaict the newer Hspec still exports Spec there, so that compilation still shouldn't fail |
| 2021-08-18 08:04:50 +0000 | <maralorn> | maerwald: I have just tested streamly-posix with hspec 2.7.10 (because that’s the stackage-lts version). That worked. So theoretically you could lower the version bound on it. |
| 2021-08-18 08:05:23 +0000 | <merijn> | sshine_: oh, I have a *wildly* speculative theory, lemme test it :) |
| 2021-08-18 08:05:25 +0000 | hendursa1 | (~weechat@user/hendursaga) |
| 2021-08-18 08:05:42 +0000 | <maerwald> | maralorn: hspec-discover as well? |
| 2021-08-18 08:06:05 +0000 | slack1256 | (~slack1256@191.125.227.92) (Remote host closed the connection) |
| 2021-08-18 08:06:13 +0000 | <maralorn> | maerwald: Yes |
| 2021-08-18 08:06:37 +0000 | <maerwald> | maralorn: what version? |
| 2021-08-18 08:06:47 +0000 | <maralorn> | Same |
| 2021-08-18 08:07:20 +0000 | dschrempf | (~dominik@2a01-036d-0118-a2d1-3c86-9363-4322-fee7.pool6.digikabel.hu) |
| 2021-08-18 08:08:36 +0000 | Kirat | (~Gill@103.217.122.17) |
| 2021-08-18 08:08:40 +0000 | hendursaga | (~weechat@user/hendursaga) (Ping timeout: 244 seconds) |
| 2021-08-18 08:08:47 +0000 | nschoe | (~quassel@2a01:e0a:8e:a190:f185:3872:6a89:c741) |
| 2021-08-18 08:09:57 +0000 | <maralorn> | maerwald: ^ |
| 2021-08-18 08:10:07 +0000 | <maralorn> | (forgot the highlight) |
| 2021-08-18 08:12:25 +0000 | oldsk00l | (~znc@ec2-3-69-166-47.eu-central-1.compute.amazonaws.com) |
| 2021-08-18 08:12:42 +0000 | Kirat | (~Gill@103.217.122.17) (Client Quit) |
| 2021-08-18 08:13:39 +0000 | Guest48 | (~Guest48@2001:8003:33f0:c100:90f4:2120:7bc8:55aa) |
| 2021-08-18 08:14:05 +0000 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 2021-08-18 08:17:23 +0000 | ubert | (~Thunderbi@91.141.56.213.wireless.dyn.drei.com) (Quit: ubert) |
| 2021-08-18 08:17:24 +0000 | ubert1 | ubert |
| 2021-08-18 08:17:39 +0000 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
| 2021-08-18 08:17:39 +0000 | allbery_b | (~geekosaur@xmonad/geekosaur) |
| 2021-08-18 08:17:42 +0000 | allbery_b | geekosaur |
| 2021-08-18 08:17:42 +0000 | ub | (~Thunderbi@91.141.56.213.wireless.dyn.drei.com) |
| 2021-08-18 08:17:58 +0000 | <merijn> | sshine_: That I can't test, because I can't reproduce it locally >.> But at the very least I see a couple of errors in the repo/config |
| 2021-08-18 08:22:07 +0000 | ub | (~Thunderbi@91.141.56.213.wireless.dyn.drei.com) (Ping timeout: 245 seconds) |
| 2021-08-18 08:22:36 +0000 | oldsk00l | (~znc@ec2-3-69-166-47.eu-central-1.compute.amazonaws.com) (Remote host closed the connection) |
| 2021-08-18 08:23:07 +0000 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 2021-08-18 08:27:55 +0000 | Pickchea | (~private@user/pickchea) |
| 2021-08-18 08:30:04 +0000 | timCF | (~timCF@200-149-20-81.sta.estpak.ee) (Quit: leaving) |
| 2021-08-18 08:31:13 +0000 | rovert | (uid389732@id-389732.tooting.irccloud.com) (Quit: Connection closed for inactivity) |
| 2021-08-18 08:35:41 +0000 | dyeplexer | (~dyeplexer@user/dyeplexer) |
| 2021-08-18 08:36:22 +0000 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
| 2021-08-18 08:36:49 +0000 | micro | (~micro@user/micro) (Quit: Lost terminal) |
| 2021-08-18 08:37:35 +0000 | micro | (~micro@user/micro) |
| 2021-08-18 08:38:25 +0000 | Guest48 | (~Guest48@2001:8003:33f0:c100:90f4:2120:7bc8:55aa) (Quit: Client closed) |
| 2021-08-18 08:38:29 +0000 | fendor | (~fendor@77.119.161.62.wireless.dyn.drei.com) |
| 2021-08-18 08:40:44 +0000 | defanor | (~defanor@tart.uberspace.net) |
| 2021-08-18 08:43:55 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) () |
| 2021-08-18 08:46:54 +0000 | <defanor> | Hello. I've just updated to Cabal 3 (cabal-install from Debian 11 repositories), and failing to find how to install custom libraries (the ones I'm writing) properly: `cabal install --lib` appears to work fine (no errors), but then `cabal install` says "unknown package" when I'm trying to build projects dependent on such a library. Is it the intended behaviour, and how does one build projects like that with Cabal 3 ( |
| 2021-08-18 08:46:54 +0000 | <defanor> | except for v2- commands)? |
| 2021-08-18 08:47:09 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 08:48:07 +0000 | <merijn> | defanor: tbh, you really shouldn't be using "install --lib" |
| 2021-08-18 08:48:37 +0000 | <merijn> | defanor: Also, in cabal 3 the X and "v2-X" are identical |
| 2021-08-18 08:49:11 +0000 | <defanor> | merijn: Oh, perhaps I had in mind v1- ones then; meant the old behaviour. What should I use instead of install, then? |
| 2021-08-18 08:49:25 +0000 | <merijn> | It depends *why* you want to install |
| 2021-08-18 08:49:45 +0000 | <merijn> | If it is "so I can use this in another library/project I work on" the answer is: you shouldn't use install at all |
| 2021-08-18 08:50:20 +0000 | <defanor> | Indeed, to use those libraries from other projects. What should I use instead, then? |
| 2021-08-18 08:51:45 +0000 | <merijn> | defanor: If the libraries are on hackage, then nothing, they will be installed automatically when you use "build" if you want to depend on local (modified?) versions of libraries or unreleased libraries, then you want to use a cabal.project file with either 1) a remote-repo entry or 2) a filled in "local-packages:" pointing at the relevant local paths |
| 2021-08-18 08:51:51 +0000 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) |
| 2021-08-18 08:52:42 +0000 | <defanor> | It's the latter in this case (some of those are work-related), will look into those options. Thanks! |
| 2021-08-18 08:52:46 +0000 | <merijn> | defanor: See https://cabal.readthedocs.io/en/latest/cabal-project.html#specifying-the-local-packages which has examples of both |
| 2021-08-18 08:52:49 +0000 | Pickchea | (~private@user/pickchea) (Ping timeout: 248 seconds) |
| 2021-08-18 08:52:49 +0000 | favonia | (~favonia@user/favonia) (Ping timeout: 248 seconds) |
| 2021-08-18 08:53:04 +0000 | <merijn> | defanor: And https://cabal.readthedocs.io/en/latest/cabal-project.html#specifying-packages-from-remote-version-… |
| 2021-08-18 08:54:38 +0000 | <merijn> | defanor: For work situations where everyone is consistently using the same "internal" packages, you should probably just commit the cabal.project file to the repo for everyone to use |
| 2021-08-18 08:56:12 +0000 | <merijn> | also, in the category more complicated (but thorough) solutions: It's perfectly possible to run your own private hackage server and point cabal-install at that so it will consult both the internal hackage server and public hackage |
| 2021-08-18 09:00:02 +0000 | polyphem | (~polyphem@2a02:810d:640:776c:f4c0:a27a:540e:c15e) (Ping timeout: 245 seconds) |
| 2021-08-18 09:00:27 +0000 | <defanor> | I keep thinking of packaging everything into .deb and running an apt repository that way, to reuse a single package manager for everything (reducing the possibility of version mismatches, setting external dependencies from system repositories, etc). But will probably look into that later, just manual building for now. |
| 2021-08-18 09:08:45 +0000 | fabfianda | (~fabfianda@37.183.255.57) |
| 2021-08-18 09:20:27 +0000 | <defanor> | Tried to build with a cabal.project, seems to work for me. The packages live in a single repository (subdirectories), so have put cabal.project into its root. |
| 2021-08-18 09:21:17 +0000 | <merijn> | defanor: That's pretty much the intended use of cabal.project, yes :) |
| 2021-08-18 09:22:03 +0000 | <merijn> | defanor: Note that you can specify local overrides for it in cabal.project.local (the idea being you can commit cabal.project to the repo for everyone working on it and .local has whatever tweaks specific to what you're doing) |
| 2021-08-18 09:23:08 +0000 | Axma70428 | (~Axman6@user/axman6) |
| 2021-08-18 09:24:41 +0000 | Axman6 | (~Axman6@user/axman6) (Ping timeout: 256 seconds) |
| 2021-08-18 09:25:07 +0000 | jespada | (~jespada@90.254.247.46) (Ping timeout: 245 seconds) |
| 2021-08-18 09:27:10 +0000 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 240 seconds) |
| 2021-08-18 09:27:41 +0000 | jespada | (~jespada@90.254.247.46) |
| 2021-08-18 09:29:28 +0000 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) |
| 2021-08-18 09:39:06 +0000 | lavaman | (~lavaman@98.38.249.169) |
| 2021-08-18 09:39:08 +0000 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 268 seconds) |
| 2021-08-18 09:43:38 +0000 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 258 seconds) |
| 2021-08-18 09:50:10 +0000 | Pickchea | (~private@user/pickchea) |
| 2021-08-18 09:53:01 +0000 | PinealGlandOptic | (~PinealGla@37.115.210.35) |
| 2021-08-18 09:54:42 +0000 | __monty__ | (~toonn@user/toonn) |
| 2021-08-18 09:56:29 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-08-18 09:56:42 +0000 | ikex1 | (~ash@user/ikex) |
| 2021-08-18 09:56:55 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Remote host closed the connection) |
| 2021-08-18 09:58:15 +0000 | ikex | (~ash@user/ikex) (Ping timeout: 268 seconds) |
| 2021-08-18 09:58:16 +0000 | ikex1 | ikex |
| 2021-08-18 10:01:39 +0000 | dschrempf | (~dominik@2a01-036d-0118-a2d1-3c86-9363-4322-fee7.pool6.digikabel.hu) (Ping timeout: 258 seconds) |
| 2021-08-18 10:01:47 +0000 | tinwood | (~tinwood@canonical/tinwood) (Remote host closed the connection) |
| 2021-08-18 10:02:32 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 2021-08-18 10:03:56 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 10:04:49 +0000 | tinwood | (~tinwood@general.default.akavanagh.uk0.bigv.io) |
| 2021-08-18 10:04:49 +0000 | tinwood | (~tinwood@general.default.akavanagh.uk0.bigv.io) (Changing host) |
| 2021-08-18 10:04:49 +0000 | tinwood | (~tinwood@canonical/tinwood) |
| 2021-08-18 10:05:14 +0000 | lortabac | (~lortabac@151.73.97.57) (Quit: WeeChat 2.8) |
| 2021-08-18 10:09:10 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2021-08-18 10:09:41 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 10:11:45 +0000 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 248 seconds) |
| 2021-08-18 10:13:03 +0000 | jonathanx_ | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
| 2021-08-18 10:13:20 +0000 | jonathanx_ | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 2021-08-18 10:14:37 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 2021-08-18 10:15:43 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 10:16:59 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 10:20:13 +0000 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 2021-08-18 10:20:52 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 2021-08-18 10:21:17 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 245 seconds) |
| 2021-08-18 10:21:19 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 10:21:58 +0000 | <albet70> | dibblego, is there a limit days for banned user or permanent? |
| 2021-08-18 10:22:27 +0000 | <[exa]> | albet70: there's another channel for that, see topic |
| 2021-08-18 10:22:51 +0000 | <albet70> | oh, I see, sorry |
| 2021-08-18 10:25:55 +0000 | PinealGlandOptic | (~PinealGla@37.115.210.35) (Quit: leaving) |
| 2021-08-18 10:26:17 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 2021-08-18 10:27:01 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 10:28:20 +0000 | polyphem | (~polyphem@2a02:810d:640:776c:f4c0:a27a:540e:c15e) |
| 2021-08-18 10:29:10 +0000 | kilolympus | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
| 2021-08-18 10:30:14 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 10:33:16 +0000 | ChanServ | +o dibblego |
| 2021-08-18 10:33:30 +0000 | dibblego | -b *!*@47.245.54.240 |
| 2021-08-18 10:33:31 +0000 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) (Remote host closed the connection) |
| 2021-08-18 10:33:44 +0000 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) |
| 2021-08-18 10:33:46 +0000 | ChanServ | -o dibblego |
| 2021-08-18 10:34:49 +0000 | Guest372 | (~xxx@47.245.54.240) |
| 2021-08-18 10:36:17 +0000 | chomwitt | (~chomwitt@2a02:587:dc0c:e200:12c3:7bff:fe6d:d374) (Ping timeout: 245 seconds) |
| 2021-08-18 10:37:44 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 2021-08-18 10:38:29 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 10:43:40 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2021-08-18 10:43:57 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 10:44:28 +0000 | fendor | (~fendor@77.119.161.62.wireless.dyn.drei.com) (Remote host closed the connection) |
| 2021-08-18 10:44:40 +0000 | acidjnk_new | (~acidjnk@p200300d0c72b952850c7a959aba8feb6.dip0.t-ipconnect.de) |
| 2021-08-18 10:47:32 +0000 | acidjnk_new3 | (~acidjnk@p200300d0c72b955250c7a959aba8feb6.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 2021-08-18 10:57:49 +0000 | fvr | (uid503686@id-503686.highgate.irccloud.com) |
| 2021-08-18 11:01:04 +0000 | alx741 | (~alx741@181.196.68.125) |
| 2021-08-18 11:01:04 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Remote host closed the connection) |
| 2021-08-18 11:03:29 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 11:04:33 +0000 | ubert | (~Thunderbi@91.141.56.213.wireless.dyn.drei.com) (Ping timeout: 248 seconds) |
| 2021-08-18 11:05:25 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Remote host closed the connection) |
| 2021-08-18 11:06:26 +0000 | dsrt^ | (~dsrt@209.65.131.194) (Ping timeout: 258 seconds) |
| 2021-08-18 11:08:24 +0000 | chomwitt | (~chomwitt@ppp-94-67-193-240.home.otenet.gr) |
| 2021-08-18 11:08:54 +0000 | AlexNoo_ | (~AlexNoo@94.233.241.41) |
| 2021-08-18 11:12:52 +0000 | AlexZenon | (~alzenon@94.233.240.231) (Ping timeout: 268 seconds) |
| 2021-08-18 11:12:52 +0000 | Alex_test | (~al_test@94.233.240.231) (Ping timeout: 268 seconds) |
| 2021-08-18 11:12:52 +0000 | AlexNoo | (~AlexNoo@94.233.240.231) (Ping timeout: 268 seconds) |
| 2021-08-18 11:16:24 +0000 | Alex_test | (~al_test@94.233.241.41) |
| 2021-08-18 11:16:49 +0000 | AlexZenon | (~alzenon@94.233.241.41) |
| 2021-08-18 11:22:22 +0000 | lortabac | (~lortabac@151.73.97.57) |
| 2021-08-18 11:22:41 +0000 | benin036932 | (~benin@183.82.178.142) (Ping timeout: 248 seconds) |
| 2021-08-18 11:25:18 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 2021-08-18 11:27:23 +0000 | jumper149 | (~jumper149@80.240.31.34) |
| 2021-08-18 11:29:59 +0000 | Gurkenglas | (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) |
| 2021-08-18 11:35:21 +0000 | Matthias1 | (~Matthias1@cpe-76-170-236-166.socal.res.rr.com) (Remote host closed the connection) |
| 2021-08-18 11:36:21 +0000 | Matthias1 | (~Matthias1@cpe-76-170-236-166.socal.res.rr.com) |
| 2021-08-18 11:37:59 +0000 | Matthias1 | (~Matthias1@cpe-76-170-236-166.socal.res.rr.com) (Read error: Connection reset by peer) |
| 2021-08-18 11:42:11 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 11:43:33 +0000 | favonia | (~favonia@user/favonia) |
| 2021-08-18 11:43:51 +0000 | _\_ | (~o@user/ding) (Quit: ___) |
| 2021-08-18 11:44:04 +0000 | _\_ | (~o@user/ding) |
| 2021-08-18 11:44:06 +0000 | dschrempf | (~dominik@92-249-159-252.pool.digikabel.hu) |
| 2021-08-18 11:46:17 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Ping timeout: 245 seconds) |
| 2021-08-18 11:47:59 +0000 | <Hecate> | am sad |
| 2021-08-18 11:48:04 +0000 | <Hecate> | I had a very nice usecase for Comonads |
| 2021-08-18 11:48:11 +0000 | <Hecate> | and turns out `getField` does the job |
| 2021-08-18 11:48:18 +0000 | <Hecate> | (with probably less overhead lol) |
| 2021-08-18 11:48:26 +0000 | aguapesada | (~aguapesad@2804:14c:8793:8e2f:a406:863b:f810:2d4c) |
| 2021-08-18 11:49:23 +0000 | <hpc> | ah yes, truly your life is full of hardships :D |
| 2021-08-18 11:50:38 +0000 | <hpc> | i had something similar with Cont, until i realized something entirely different instead |
| 2021-08-18 11:55:10 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 11:56:47 +0000 | lortabac_ | (~lortabac@151.73.3.232) |
| 2021-08-18 11:58:22 +0000 | lortabac | (~lortabac@151.73.97.57) (Ping timeout: 245 seconds) |
| 2021-08-18 12:00:09 +0000 | benin036932 | (~benin@183.82.178.142) |
| 2021-08-18 12:01:58 +0000 | ubert | (~Thunderbi@178.115.35.155.wireless.dyn.drei.com) |
| 2021-08-18 12:03:02 +0000 | shriekingnoise | (~shrieking@186.137.144.80) |
| 2021-08-18 12:04:40 +0000 | keutoi | (~keutoi@157.48.90.57) (Ping timeout: 240 seconds) |
| 2021-08-18 12:05:10 +0000 | lortabac_ | lortabac |
| 2021-08-18 12:12:33 +0000 | lavaman | (~lavaman@98.38.249.169) |
| 2021-08-18 12:15:47 +0000 | <merijn> | hpc: I actually have a use of Cont in my code! |
| 2021-08-18 12:15:55 +0000 | <merijn> | And I even understood it when I wrote it! |
| 2021-08-18 12:16:10 +0000 | <merijn> | Don't understand shit about it anymore, but it still works, so I just don't touch it :p |
| 2021-08-18 12:18:29 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 12:20:49 +0000 | <hpc> | hah |
| 2021-08-18 12:22:32 +0000 | <lechner> | Hi, I have postgresql-simple working via 'text'/Data.Text result types. Can the module hadle more custom conversions, such as from SEMVER from the Pg extension pg-simple to SemVer.Version from 'semver' in Haskell? |
| 2021-08-18 12:22:46 +0000 | <lechner> | pg-semver |
| 2021-08-18 12:22:57 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 248 seconds) |
| 2021-08-18 12:29:22 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-08-18 12:31:25 +0000 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 2021-08-18 12:33:04 +0000 | Pickchea | (~private@user/pickchea) (Ping timeout: 258 seconds) |
| 2021-08-18 12:38:16 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Remote host closed the connection) |
| 2021-08-18 12:38:22 +0000 | acidjnk_new | (~acidjnk@p200300d0c72b952850c7a959aba8feb6.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 2021-08-18 12:39:27 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 12:41:36 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Remote host closed the connection) |
| 2021-08-18 12:47:04 +0000 | pbrisbin | (~patrick@pool-108-16-214-93.phlapa.fios.verizon.net) |
| 2021-08-18 12:49:17 +0000 | norias | (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) |
| 2021-08-18 12:50:01 +0000 | acidjnk_new | (~acidjnk@p200300d0c72b952850c7a959aba8feb6.dip0.t-ipconnect.de) |
| 2021-08-18 12:54:09 +0000 | ubert | (~Thunderbi@178.115.35.155.wireless.dyn.drei.com) (Quit: ubert) |
| 2021-08-18 12:54:27 +0000 | ubert | (~Thunderbi@178.115.35.155.wireless.dyn.drei.com) |
| 2021-08-18 12:59:54 +0000 | chomwitt | (~chomwitt@ppp-94-67-193-240.home.otenet.gr) (Ping timeout: 258 seconds) |
| 2021-08-18 13:07:03 +0000 | <maerwald> | how to convert `[Word8]` to `ByteArray#`? |
| 2021-08-18 13:07:53 +0000 | <Hecate> | < hpc> ah yes, truly your life is full of hardships :D // This is the only hardship in my life that is relevant to this channel :p |
| 2021-08-18 13:08:38 +0000 | <Hecate> | maerwald: 'coerce' ? :p |
| 2021-08-18 13:09:07 +0000 | <Hecate> | no more seriously, maerwald, 'byteArrayFromList :: Prim a => [a] -> ByteArray' |
| 2021-08-18 13:09:15 +0000 | <maerwald> | I'm already doing that |
| 2021-08-18 13:09:21 +0000 | <maerwald> | it doesn't yield an unlifted type |
| 2021-08-18 13:09:34 +0000 | <Hecate> | oh shit yes |
| 2021-08-18 13:09:36 +0000 | <Hecate> | sorry |
| 2021-08-18 13:09:48 +0000 | <maerwald> | unpacking from the constructor, oddly, also doesn't |
| 2021-08-18 13:10:29 +0000 | <maerwald> | so `(\(BA.ByteArray ba) -> ba) . BA.byteArrayFromList $ ws` doesn't work |
| 2021-08-18 13:13:47 +0000 | Guest40 | (~Guest40@2a02:6b64:708f:0:9101:3c1b:1de7:cf00) |
| 2021-08-18 13:13:47 +0000 | acidjnk_new | (~acidjnk@p200300d0c72b952850c7a959aba8feb6.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 2021-08-18 13:14:17 +0000 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
| 2021-08-18 13:17:48 +0000 | <Guest40> | is this the best place to get beginner help for haskell? |
| 2021-08-18 13:18:22 +0000 | <dminuoso> | Whether it's the best that's for you to decide. |
| 2021-08-18 13:18:39 +0000 | <dminuoso> | But we welcome beginners in this channel. |
| 2021-08-18 13:19:10 +0000 | <dminuoso> | We also have #haskell-beginners which is less noisy, but dont feel pressured to go there. Sometimes this channel can be busy. :) |
| 2021-08-18 13:19:28 +0000 | <Guest40> | that's nice, was just wondering because i didn't see anyone sending messages |
| 2021-08-18 13:19:42 +0000 | <Guest40> | and whether people usually help out |
| 2021-08-18 13:19:48 +0000 | <Guest40> | i'll make sure to join , thanks |
| 2021-08-18 13:20:06 +0000 | <dminuoso> | You will usually have better response times in here |
| 2021-08-18 13:20:21 +0000 | slowButPresent | (~slowButPr@user/slowbutpresent) |
| 2021-08-18 13:20:38 +0000 | <Lycurgus> | and it's newbie friendly unlike some other langs/channels |
| 2021-08-18 13:21:16 +0000 | <dminuoso> | Indeed, dont be scared away if people start off with advanced discussions. We dont mind beginner questions at all, even if they are very basic. :) |
| 2021-08-18 13:22:31 +0000 | AlexNoo_ | AlexNoo |
| 2021-08-18 13:22:48 +0000 | <Guest40> | thank you |
| 2021-08-18 13:27:30 +0000 | <merijn> | Guest40: Activity here is spiky :p Also, most US people are asleep and the EU people are (pretending) to work :p |
| 2021-08-18 13:31:14 +0000 | <maerwald> | is dlist good at fusing? |
| 2021-08-18 13:31:55 +0000 | <maerwald> | example: https://paste.tomsmeding.com/GOQCMLgl |
| 2021-08-18 13:32:09 +0000 | <maerwald> | I wonder if it will nicely build the bytestring or keep the list in memory |
| 2021-08-18 13:35:23 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) |
| 2021-08-18 13:35:48 +0000 | <albet70> | could Cont replace Maybe or Either? |
| 2021-08-18 13:35:59 +0000 | Sgeo | (~Sgeo@user/sgeo) |
| 2021-08-18 13:36:46 +0000 | <janus> | how would it? it has only one constructor |
| 2021-08-18 13:37:05 +0000 | wxallowed | (~d4@151.51.133.244) (Ping timeout: 258 seconds) |
| 2021-08-18 13:37:24 +0000 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) |
| 2021-08-18 13:38:27 +0000 | <albet70> | oh I forget that, they all can do early exit in >>=, so I wonder that |
| 2021-08-18 13:39:40 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 2021-08-18 13:40:23 +0000 | <albet70> | Cont can jump back to the beginning in the >>= chain, how would it? |
| 2021-08-18 13:40:23 +0000 | <janus> | but any definition of >>= can do early exit, surely that doesn't make them all replacements for Maybe/Either? |
| 2021-08-18 13:40:34 +0000 | <dminuoso> | albet70: Cont can implement all the other haskell-writable monads. |
| 2021-08-18 13:40:37 +0000 | <dminuoso> | All. |
| 2021-08-18 13:41:46 +0000 | <albet70> | dminuoso how would it? |
| 2021-08-18 13:42:57 +0000 | <albet70> | I wonder who create or discover Cont first? |
| 2021-08-18 13:45:11 +0000 | tengu1 | (~tengu1@cpe-70-121-244-14.neb.res.rr.com) |
| 2021-08-18 13:45:40 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) (Remote host closed the connection) |
| 2021-08-18 13:46:37 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) |
| 2021-08-18 13:46:41 +0000 | <dminuoso> | albet70: https://web.archive.org/web/20150925081214/https://www.fpcomplete.com/user/dpiponi/the-mother-of-a… |
| 2021-08-18 13:50:40 +0000 | chomwitt | (~chomwitt@ppp-94-67-193-240.home.otenet.gr) |
| 2021-08-18 13:52:24 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) (Remote host closed the connection) |
| 2021-08-18 13:54:30 +0000 | <JavierNeira[m]> | the original post, still available was http://blog.sigfpe.com/2008/12/mother-of-all-monads.html |
| 2021-08-18 13:54:48 +0000 | slack1256 | (~slack1256@191.125.227.92) |
| 2021-08-18 13:56:43 +0000 | ec | (~ec@gateway/tor-sasl/ec) |
| 2021-08-18 13:58:14 +0000 | lortabac | (~lortabac@151.73.3.232) (Quit: WeeChat 2.8) |
| 2021-08-18 14:00:36 +0000 | [Kalisto] | (~nico@user/kalisto/x-8968079) |
| 2021-08-18 14:01:16 +0000 | <[Kalisto]> | hi |
| 2021-08-18 14:01:28 +0000 | <[Kalisto]> | i am trying to compile an old project of mine and i get this error |
| 2021-08-18 14:01:30 +0000 | <[Kalisto]> | https://paste.tomsmeding.com/dVLlVsCb |
| 2021-08-18 14:01:37 +0000 | <[Kalisto]> | i don't know what to do |
| 2021-08-18 14:01:39 +0000 | <[Kalisto]> | :( |
| 2021-08-18 14:01:58 +0000 | <[Kalisto]> | in the cabal file i have this |
| 2021-08-18 14:01:59 +0000 | <[Kalisto]> | build-depends: base >=4.11 && <4.12, gd >=3000.7 && <3000.8, mtl >=2.2 && <2.3, parsec >=3.1 && <3.2 |
| 2021-08-18 14:03:08 +0000 | <raehik> | it looks like your installed GHC is too new for your base dependency |
| 2021-08-18 14:03:17 +0000 | <merijn> | That, yeah |
| 2021-08-18 14:03:22 +0000 | <dminuoso> | [__1] rejecting: base-4.14.1.0/installed-4.14.1.0 (conflict: miniLogo => base>=4.11 && <4.12) |
| 2021-08-18 14:03:42 +0000 | <[Kalisto]> | oh |
| 2021-08-18 14:03:46 +0000 | <raehik> | you could loosen the dependency and see if it works, or install an older GHC |
| 2021-08-18 14:03:51 +0000 | <dminuoso> | [Kalisto]: This reads: miniLogo induces a base dependency (you can, more or less, equate this with GHC version) of >=4.11 && <4.12 |
| 2021-08-18 14:04:08 +0000 | <[Kalisto]> | i am compiling it inside a docker container |
| 2021-08-18 14:04:12 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) |
| 2021-08-18 14:04:16 +0000 | <dminuoso> | [Kalisto]: And it rejects the (installed) base package of version 4.14.1.0 because it conflicts with that constraint I just cited. |
| 2021-08-18 14:04:39 +0000 | <[Kalisto]> | i tried to, but I got errors |
| 2021-08-18 14:04:42 +0000 | <[Kalisto]> | No instance for (MonadFail Data.Functor.Identity.Identity) |
| 2021-08-18 14:04:53 +0000 | <[Kalisto]> | i just want to compile it :P |
| 2021-08-18 14:06:37 +0000 | <[Kalisto]> | thanks |
| 2021-08-18 14:08:31 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) (Ping timeout: 252 seconds) |
| 2021-08-18 14:09:12 +0000 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
| 2021-08-18 14:12:21 +0000 | sleblanc | (~sleblanc@user/sleblanc) (Ping timeout: 258 seconds) |
| 2021-08-18 14:12:55 +0000 | <[Kalisto]> | it's alive, alive! :P |
| 2021-08-18 14:13:07 +0000 | <[Kalisto]> | I used the 8.4.4 docker image and it worked |
| 2021-08-18 14:13:10 +0000 | <[Kalisto]> | thank you |
| 2021-08-18 14:13:47 +0000 | Guest40 | (~Guest40@2a02:6b64:708f:0:9101:3c1b:1de7:cf00) (Quit: Client closed) |
| 2021-08-18 14:15:11 +0000 | wxallowed | (~d4@151.51.135.6) |
| 2021-08-18 14:22:30 +0000 | dschrempf | (~dominik@92-249-159-252.pool.digikabel.hu) (Quit: WeeChat 3.2) |
| 2021-08-18 14:23:15 +0000 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 244 seconds) |
| 2021-08-18 14:25:08 +0000 | gambpang | (~ishipman@207.181.230.156) |
| 2021-08-18 14:26:24 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) |
| 2021-08-18 14:28:44 +0000 | gehmehgeh | (~user@user/gehmehgeh) (Remote host closed the connection) |
| 2021-08-18 14:28:49 +0000 | doyougnu | (~user@c-73-25-202-122.hsd1.or.comcast.net) |
| 2021-08-18 14:29:26 +0000 | gehmehgeh | (~user@user/gehmehgeh) |
| 2021-08-18 14:30:31 +0000 | ec | (~ec@gateway/tor-sasl/ec) |
| 2021-08-18 14:31:32 +0000 | pompez | (~martin@user/pompez) |
| 2021-08-18 14:33:13 +0000 | <tomsmeding> | it seems like the major thing impacting compatibility with early-8 series with now is MonadFail |
| 2021-08-18 14:33:57 +0000 | <tomsmeding> | will ghc have one major compatibility-breaking change every major series? :p First FAM, then MonadFail |
| 2021-08-18 14:34:57 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) (Remote host closed the connection) |
| 2021-08-18 14:37:23 +0000 | Cajun | (~Cajun@user/cajun) (Quit: Client closed) |
| 2021-08-18 14:39:15 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) |
| 2021-08-18 14:41:18 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) (Remote host closed the connection) |
| 2021-08-18 14:44:48 +0000 | peterhil_ | (~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) |
| 2021-08-18 14:45:23 +0000 | <albet70> | dminuoso, very good article, Cont can jump back, so [] can? but [] can't early exit in jump back |
| 2021-08-18 14:45:29 +0000 | artem | (uid512590@id-512590.highgate.irccloud.com) (Quit: Connection closed for inactivity) |
| 2021-08-18 14:46:35 +0000 | <gambpang> | Setting aside style considerations, is there any reason to prefer expressions like `f $ g $ h $ x` in a codebase to `f . g . h $ x` (or vice versa)? |
| 2021-08-18 14:47:17 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) |
| 2021-08-18 14:47:28 +0000 | <albet70> | dminuoso, now I feel I can use Cont to do something but I don't understand it |
| 2021-08-18 14:48:05 +0000 | peterhil | (~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) (Ping timeout: 268 seconds) |
| 2021-08-18 14:48:09 +0000 | Guest87 | (~Guest87@2a01:c23:5d93:6500:cd2c:9f7f:eeb2:be5b) |
| 2021-08-18 14:48:23 +0000 | Boomerang | (~Boomerang@xd520f68c.cust.hiper.dk) (Ping timeout: 258 seconds) |
| 2021-08-18 14:50:14 +0000 | jumper149 | (~jumper149@80.240.31.34) (Quit: WeeChat 3.2) |
| 2021-08-18 14:51:40 +0000 | norias | (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 240 seconds) |
| 2021-08-18 14:51:45 +0000 | <albet70> | and in that article, it does not mention the notorious callCC |
| 2021-08-18 14:53:47 +0000 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 245 seconds) |
| 2021-08-18 14:54:43 +0000 | <merijn> | albet70: Not understanding Cont is normal :p |
| 2021-08-18 14:55:02 +0000 | <merijn> | I've written non-trivial code using Cont, but it still melts my brain each time >.> |
| 2021-08-18 14:55:10 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 2021-08-18 14:55:25 +0000 | s-h-i-n-o-b-i | (~quassel@104.244.75.124) |
| 2021-08-18 14:56:15 +0000 | <albet70> | merijn do u have some classic examples for ContT r IO a? |
| 2021-08-18 14:56:38 +0000 | <albet70> | when should I use ContT? |
| 2021-08-18 14:56:46 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 2021-08-18 14:56:53 +0000 | <merijn> | albet70: Did you see the SO example on "ContT as bracket" yet? |
| 2021-08-18 14:56:58 +0000 | <albet70> | which case it should be used? |
| 2021-08-18 14:57:14 +0000 | <merijn> | https://stackoverflow.com/questions/26436095/what-are-good-haskell-conventions-for-managing-deeply… |
| 2021-08-18 14:57:14 +0000 | <albet70> | not yet |
| 2021-08-18 14:57:16 +0000 | skykanin | (~skykanin@115.81-166-221.customer.lyse.net) |
| 2021-08-18 14:57:17 +0000 | <merijn> | That one |
| 2021-08-18 14:57:23 +0000 | <merijn> | Which is what I mostly use it for too |
| 2021-08-18 15:01:45 +0000 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) |
| 2021-08-18 15:02:43 +0000 | Pickchea | (~private@user/pickchea) |
| 2021-08-18 15:02:56 +0000 | dajoer | (~david@user/gvx) (Quit: leaving) |
| 2021-08-18 15:03:01 +0000 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.2) |
| 2021-08-18 15:04:21 +0000 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Quit: WeeChat 2.8) |
| 2021-08-18 15:05:36 +0000 | Guest87 | (~Guest87@2a01:c23:5d93:6500:cd2c:9f7f:eeb2:be5b) (Quit: Client closed) |
| 2021-08-18 15:06:22 +0000 | norias | (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) |
| 2021-08-18 15:06:26 +0000 | norias | (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Remote host closed the connection) |
| 2021-08-18 15:07:22 +0000 | Pickchea | (~private@user/pickchea) (Ping timeout: 252 seconds) |
| 2021-08-18 15:07:41 +0000 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 244 seconds) |
| 2021-08-18 15:08:15 +0000 | <albet70> | some people said Cont can do branch control or jump back |
| 2021-08-18 15:08:38 +0000 | <albet70> | full of magic |
| 2021-08-18 15:09:28 +0000 | <kuribas> | is "fromListWith (++) " quadratic in the combining function? |
| 2021-08-18 15:10:08 +0000 | <albet70> | :t maybe |
| 2021-08-18 15:10:09 +0000 | <lambdabot> | b -> (a -> b) -> Maybe a -> b |
| 2021-08-18 15:10:12 +0000 | <kuribas> | nvm, it is prepending, ... |
| 2021-08-18 15:11:09 +0000 | <albet70> | when b ~ Cont r a, it can be used to something? |
| 2021-08-18 15:13:25 +0000 | tengu1 | (~tengu1@cpe-70-121-244-14.neb.res.rr.com) (Quit: Client closed) |
| 2021-08-18 15:14:05 +0000 | qbt | (~edun@user/edun) |
| 2021-08-18 15:14:57 +0000 | qbt | (~edun@user/edun) (Remote host closed the connection) |
| 2021-08-18 15:15:43 +0000 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
| 2021-08-18 15:17:03 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) (Remote host closed the connection) |
| 2021-08-18 15:17:36 +0000 | <kuribas> | albet70: probably... |
| 2021-08-18 15:18:15 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) |
| 2021-08-18 15:18:51 +0000 | ec | (~ec@gateway/tor-sasl/ec) |
| 2021-08-18 15:19:14 +0000 | nate1 | (~nate@2600:1010:b02a:2679:7ca9:9738:1435:e8d1) |
| 2021-08-18 15:20:26 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) (Remote host closed the connection) |
| 2021-08-18 15:20:48 +0000 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 2021-08-18 15:22:38 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) |
| 2021-08-18 15:22:56 +0000 | hendursa1 | (~weechat@user/hendursaga) (Quit: hendursa1) |
| 2021-08-18 15:23:23 +0000 | hendursaga | (~weechat@user/hendursaga) |
| 2021-08-18 15:24:40 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) (Remote host closed the connection) |
| 2021-08-18 15:27:54 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) |
| 2021-08-18 15:28:14 +0000 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
| 2021-08-18 15:28:45 +0000 | <c_wraith> | kuribas: prepending is the bad case for nested calls to (++). I expect fromListWith (++) would be pretty bad if there were a lot of duplicated keys |
| 2021-08-18 15:28:51 +0000 | ec | (~ec@gateway/tor-sasl/ec) |
| 2021-08-18 15:30:15 +0000 | burnsidesLlama | (~burnsides@client-8-71.eduroam.oxuni.org.uk) (Remote host closed the connection) |
| 2021-08-18 15:30:39 +0000 | skykanin | (~skykanin@115.81-166-221.customer.lyse.net) (Quit: WeeChat 3.2) |
| 2021-08-18 15:31:01 +0000 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
| 2021-08-18 15:31:48 +0000 | <c_wraith> | kuribas: oh, wait. English is ambiguous in fun ways. I see what you meant by "prepending", and you're right about that. I still think fromListWith (++) would be bad in the worst case. |
| 2021-08-18 15:32:35 +0000 | <kuribas> | c_wraith: it's prepending like [el] ++ rest, but that's assuming the input has all singletons. |
| 2021-08-18 15:33:04 +0000 | <kuribas> | c_wraith: or small lists, then it's still fine. |
| 2021-08-18 15:33:06 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds) |
| 2021-08-18 15:33:18 +0000 | <kuribas> | actually it's always linear... |
| 2021-08-18 15:33:40 +0000 | t0zy | (~t0zy@49.207.220.61) |
| 2021-08-18 15:35:11 +0000 | <c_wraith> | kuribas: a quick check of the source says it's using foldl' |
| 2021-08-18 15:35:20 +0000 | <c_wraith> | kuribas: which is the bad case for (++) |
| 2021-08-18 15:36:10 +0000 | <kuribas> | c_wraith: dependends on the direction they apply it? |
| 2021-08-18 15:36:48 +0000 | <kuribas> | fromListWith (++) [(5,"a"), (5,"b"), (3,"b"), (3,"a"), (5,"a")] == fromList [(3, "ab"), (5, "aba")] |
| 2021-08-18 15:36:52 +0000 | <kuribas> | (from the docs) |
| 2021-08-18 15:37:15 +0000 | <kuribas> | that looks like prepending... |
| 2021-08-18 15:38:15 +0000 | <c_wraith> | oh, weird. that isn't the order I would expect the arguments at all |
| 2021-08-18 15:38:21 +0000 | <kuribas> | Ah in insertWith: If the key does exist, the function will insert the pair (key, f new_value old_value). |
| 2021-08-18 15:40:21 +0000 | <c_wraith> | well, I guess that makes fromListWith (++) efficient. But also not at all the operation I'd expect it to be |
| 2021-08-18 15:41:06 +0000 | <kuribas> | what do you expect then? |
| 2021-08-18 15:41:17 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 2021-08-18 15:43:40 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 2021-08-18 15:44:21 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 2021-08-18 15:46:08 +0000 | <dminuoso> | gambpang: the latter is refactorable, the former not. |
| 2021-08-18 15:46:10 +0000 | nate1 | (~nate@2600:1010:b02a:2679:7ca9:9738:1435:e8d1) (Ping timeout: 240 seconds) |
| 2021-08-18 15:46:19 +0000 | <dminuoso> | Or rather "easily refactorable" |
| 2021-08-18 15:47:45 +0000 | favonia | (~favonia@user/favonia) (Ping timeout: 248 seconds) |
| 2021-08-18 15:48:30 +0000 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 244 seconds) |
| 2021-08-18 15:51:15 +0000 | qbt | (~edun@user/edun) |
| 2021-08-18 15:52:10 +0000 | ubert | (~Thunderbi@178.115.35.155.wireless.dyn.drei.com) (Ping timeout: 240 seconds) |
| 2021-08-18 15:52:13 +0000 | <c_wraith> | kuribas: I'd expect it to apply the function to the args in the opposite order such that fromListWith f [(1,a),(1,b),(1,c)] === fromList [(1, (a `f` b) `f' c)] |
| 2021-08-18 15:52:32 +0000 | <c_wraith> | err. `f` the second time, too. |
| 2021-08-18 15:53:10 +0000 | cheater | (~Username@user/cheater) (Ping timeout: 240 seconds) |
| 2021-08-18 15:53:14 +0000 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) (Remote host closed the connection) |
| 2021-08-18 15:53:27 +0000 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) |
| 2021-08-18 15:57:00 +0000 | cheater | (~Username@user/cheater) |
| 2021-08-18 15:57:36 +0000 | slack1256 | (~slack1256@191.125.227.92) (Remote host closed the connection) |
| 2021-08-18 15:57:42 +0000 | pavonia | (~user@user/siracusa) |
| 2021-08-18 15:58:56 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 16:00:36 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-08-18 16:01:34 +0000 | Cajun | (~Cajun@user/cajun) |
| 2021-08-18 16:02:36 +0000 | lbseale | (~lbseale@user/ep1ctetus) |
| 2021-08-18 16:03:10 +0000 | aguapesada | (~aguapesad@2804:14c:8793:8e2f:a406:863b:f810:2d4c) (Quit: CoreIRC for Android - www.coreirc.com) |
| 2021-08-18 16:04:21 +0000 | ec | (~ec@gateway/tor-sasl/ec) |
| 2021-08-18 16:07:35 +0000 | <kuribas> | c_wraith: seems they optimized for (++) then :) |
| 2021-08-18 16:08:43 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 16:09:35 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 16:12:44 +0000 | favonia | (~favonia@user/favonia) |
| 2021-08-18 16:13:22 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
| 2021-08-18 16:15:01 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 2021-08-18 16:16:07 +0000 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 252 seconds) |
| 2021-08-18 16:16:25 +0000 | benin0369321 | (~benin@183.82.178.142) |
| 2021-08-18 16:19:09 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Remote host closed the connection) |
| 2021-08-18 16:19:58 +0000 | benin036932 | (~benin@183.82.178.142) (Ping timeout: 268 seconds) |
| 2021-08-18 16:19:59 +0000 | benin0369321 | benin036932 |
| 2021-08-18 16:20:19 +0000 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 2021-08-18 16:22:58 +0000 | Atum_ | (~IRC@user/atum/x-2392232) |
| 2021-08-18 16:24:44 +0000 | drd | (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) |
| 2021-08-18 16:26:48 +0000 | econo | (uid147250@user/econo) |
| 2021-08-18 16:36:07 +0000 | <dminuoso> | gambpang: To elaborate on what I said earlier, writing `f . g . h $ x` or `(f . g . h) x` allows for mechanical refactoring since you can just take the composition and float it into a binding, e.g. let q = f . g . h in q x. |
| 2021-08-18 16:38:34 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2021-08-18 16:39:09 +0000 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC (IRC client for Emacs 26.3)) |
| 2021-08-18 16:40:21 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 16:44:17 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 16:50:41 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Ping timeout: 248 seconds) |
| 2021-08-18 16:52:00 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 16:52:04 +0000 | ubert | (~Thunderbi@178.115.48.151.wireless.dyn.drei.com) |
| 2021-08-18 17:02:13 +0000 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
| 2021-08-18 17:02:18 +0000 | justsomeguy | (~justsomeg@user/justsomeguy) |
| 2021-08-18 17:04:50 +0000 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) |
| 2021-08-18 17:05:16 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer) |
| 2021-08-18 17:07:57 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
| 2021-08-18 17:08:22 +0000 | justsomeguy | (~justsomeg@user/justsomeguy) (Ping timeout: 245 seconds) |
| 2021-08-18 17:08:27 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer) |
| 2021-08-18 17:10:12 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
| 2021-08-18 17:10:28 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer) |
| 2021-08-18 17:12:54 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
| 2021-08-18 17:13:45 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer) |
| 2021-08-18 17:15:20 +0000 | simon1 | sim590 |
| 2021-08-18 17:15:56 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
| 2021-08-18 17:16:11 +0000 | jakalx | (~jakalx@base.jakalx.net) () |
| 2021-08-18 17:16:18 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2021-08-18 17:16:22 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer) |
| 2021-08-18 17:18:16 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 2021-08-18 17:18:49 +0000 | chomwitt | (~chomwitt@ppp-94-67-193-240.home.otenet.gr) (Ping timeout: 252 seconds) |
| 2021-08-18 17:20:05 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 17:20:13 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
| 2021-08-18 17:24:39 +0000 | jakalx | (~jakalx@base.jakalx.net) |
| 2021-08-18 17:31:12 +0000 | fef | (~thedawn@user/thedawn) |
| 2021-08-18 17:34:22 +0000 | fresheyeball | (~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9) |
| 2021-08-18 17:40:02 +0000 | drd | (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Ping timeout: 245 seconds) |
| 2021-08-18 17:40:07 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2021-08-18 17:41:10 +0000 | <gambpang> | dminuoso: Yeah, that's a point in favor for sure. Is it likely that the two variants wind up producing the ~same core/machine code? |
| 2021-08-18 17:41:46 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 17:42:06 +0000 | <dminuoso> | Im not confident enough to answer this. |
| 2021-08-18 17:43:25 +0000 | <dminuoso> | But honestly, that line of thought smells like premature optimization. |
| 2021-08-18 17:43:37 +0000 | <dminuoso> | I'd worry about writing expressive, readable and maintainable code first. |
| 2021-08-18 17:44:13 +0000 | <Drew[m]1> | I would be shocked if `let q = f . g . h in q x` did not inline to `(f . g . h) x` |
| 2021-08-18 17:44:36 +0000 | <dminuoso> | Drew[m]1: I presume they meant ($) vs (.) |
| 2021-08-18 17:45:03 +0000 | Pickchea | (~private@user/pickchea) |
| 2021-08-18 17:45:04 +0000 | <dminuoso> | I know GHC has some hacks in place for ($), and if memory serves right ($) actually gets completely elided in the intermediate representation to make runST work. |
| 2021-08-18 17:45:27 +0000 | <dminuoso> | But Im not confident to make a claim here. |
| 2021-08-18 17:46:01 +0000 | <Drew[m]1> | {-# INLINE (.) #-} |
| 2021-08-18 17:46:01 +0000 | <Drew[m]1> | (.) f g = \x -> f (g x) |
| 2021-08-18 17:46:21 +0000 | <Drew[m]1> | Oops that was meant to be on seperate lines |
| 2021-08-18 17:46:23 +0000 | chomwitt | (~chomwitt@ppp-94-67-193-240.home.otenet.gr) |
| 2021-08-18 17:46:47 +0000 | <dminuoso> | And then we begin to have discussions about how the inliner works.. |
| 2021-08-18 17:46:55 +0000 | <dminuoso> | Or rather the simplifier |
| 2021-08-18 17:46:58 +0000 | <monochrom> | I cite premature optimization too. If this is in a hotspot, read core and asm code, and/or benchmark. If this is not in a hotspot, why are you worrying. |
| 2021-08-18 17:47:00 +0000 | <Drew[m]1> | Yeah |
| 2021-08-18 17:49:19 +0000 | <monochrom> | And even if it's in a hotspot and the more humane code is under-optimized, the GHC people will love to know your use case, then go think about how to optimize it. There is still a possible future in which the humane version is optimized. |
| 2021-08-18 17:51:10 +0000 | <dminuoso> | I mean granted, there's certain behaviors that generally lead to more performant code. |
| 2021-08-18 17:52:13 +0000 | <dminuoso> | But that's something you generally develop with experience, and are often still wrong. |
| 2021-08-18 17:52:37 +0000 | <monochrom> | Drew[m]1, it did come out as seperate lines, no worries, your IRC client split it for you :) |
| 2021-08-18 17:52:49 +0000 | <dminuoso> | `String`, despite having a horribly inefficient cache-hostile representation, seems to perform generally good enough to not be a hot spot in any of my programs.. |
| 2021-08-18 17:52:57 +0000 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
| 2021-08-18 17:53:11 +0000 | <dminuoso> | At least not a measurable/relevant hotspot |
| 2021-08-18 17:53:54 +0000 | <davean> | tring HIGHLY depends on wher in the code it is, also when it is a problem its generally a very spread out problem |
| 2021-08-18 17:53:59 +0000 | <monochrom> | Idiomatic Haskell tends not to do heavy string processing in the first place anyway. This is not Perl or Tcl or shell script. |
| 2021-08-18 17:54:04 +0000 | <davean> | But it can be the best option in some cases |
| 2021-08-18 17:57:29 +0000 | <monochrom> | HTML scrappers would need optimized strings. But HTML scrappers are no longer hip this year. (Yes, 5 or 10 years ago it was hip, every other day someone would come here saying "I'm writing an HTML scrapper, this is taking 1GB for a 100MB file...") |
| 2021-08-18 17:59:03 +0000 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
| 2021-08-18 18:01:23 +0000 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
| 2021-08-18 18:02:04 +0000 | <maerwald> | ppl are doing that with haskell |
| 2021-08-18 18:02:06 +0000 | <maerwald> | see xeno |
| 2021-08-18 18:02:48 +0000 | <maerwald> | Here's a maintained fork https://gitlab.com/migamake/xeno |
| 2021-08-18 18:03:22 +0000 | <maerwald> | oddly, it's faster than some C parsers |
| 2021-08-18 18:03:34 +0000 | <maerwald> | but it's not idiomatic haskell in any sense |
| 2021-08-18 18:03:49 +0000 | <maerwald> | just bytestring trickery optimizing to pointer tricks |
| 2021-08-18 18:04:45 +0000 | Erutuon | (~Erutuon@user/erutuon) |
| 2021-08-18 18:04:48 +0000 | polyphem | (~polyphem@2a02:810d:640:776c:f4c0:a27a:540e:c15e) (Read error: Connection reset by peer) |
| 2021-08-18 18:05:13 +0000 | <davean> | maerwald: I don't know what Haskell you're reading, pointer tricks on bytestrings is what most of the Haskell I've read lately is all about! :) |
| 2021-08-18 18:05:42 +0000 | <maerwald> | I'll be impressed if we have a fast streamly based XML parser |
| 2021-08-18 18:05:44 +0000 | <maerwald> | not before |
| 2021-08-18 18:06:11 +0000 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) |
| 2021-08-18 18:06:37 +0000 | <monochrom> | Well yeah, ever since bytestring, HTML scrapper performance became a solved problem. |
| 2021-08-18 18:07:22 +0000 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
| 2021-08-18 18:08:54 +0000 | gehmehgeh | (~user@user/gehmehgeh) |
| 2021-08-18 18:10:59 +0000 | keutoi | (~keutoi@223.238.95.231) |
| 2021-08-18 18:16:39 +0000 | aegon | (~mike@174.127.249.180) |
| 2021-08-18 18:22:18 +0000 | <dminuoso> | code optimizing to memory tricks is a fairly legit and common thing to do to make code fast.. |
| 2021-08-18 18:22:25 +0000 | <dminuoso> | just saying.. |
| 2021-08-18 18:27:03 +0000 | fef | (~thedawn@user/thedawn) (Remote host closed the connection) |
| 2021-08-18 18:27:22 +0000 | <monochrom> | :) |
| 2021-08-18 18:27:55 +0000 | <aegon> | huh, how do you go about testing somethign that requires a postgresql connection trying to reason about testing functions that interact with postgresql simple, should i create a dummy db and test against that :? |
| 2021-08-18 18:28:19 +0000 | <dminuoso> | aegon: That's probably the most common way, yes. |
| 2021-08-18 18:28:58 +0000 | <dminuoso> | Depending on what you want to test, possibly mocking or some tagless final encoding could also help. Also, if you can write code that is portable with sqlite as well, you can use sqlite for testing. |
| 2021-08-18 18:29:41 +0000 | <dminuoso> | Or you can use unit tests if you can decouple the logic from the database |
| 2021-08-18 18:29:51 +0000 | <dminuoso> | And bypass the need for a database entirely |
| 2021-08-18 18:30:06 +0000 | <maerwald> | dminuoso: I dunno, in haskell it feels particularly fragile (and often is), because how things optimize/inline may change drastically from GHC to GHC and library version |
| 2021-08-18 18:31:29 +0000 | keutoi | (~keutoi@223.238.95.231) (Ping timeout: 248 seconds) |
| 2021-08-18 18:33:07 +0000 | keutoi | (~keutoi@157.47.26.152) |
| 2021-08-18 18:34:25 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds) |
| 2021-08-18 18:36:24 +0000 | dyeplexer | (~dyeplexer@user/dyeplexer) (Remote host closed the connection) |
| 2021-08-18 18:48:24 +0000 | keutoi | (~keutoi@157.47.26.152) (Quit: leaving) |
| 2021-08-18 18:48:25 +0000 | t0zy | (~t0zy@49.207.220.61) (Remote host closed the connection) |
| 2021-08-18 18:48:40 +0000 | t0zy | (~t0zy@49.207.220.61) |
| 2021-08-18 18:51:15 +0000 | <dsal> | aegon: I've done something like this by modeling my effects separately in a class and then having different effect providers. This also helped me when I suspected I had a performance issue in my DB layer which ended up being unaffected by a memory-only provider. |
| 2021-08-18 18:54:32 +0000 | <gambpang> | In case ppl care, the context is that we prefer `f . g . h $ x` (or `(f . g . h) x`) at work exactly because of that "obvious factorization" and nobody knew what if any costs there were over using chaining ($) |
| 2021-08-18 18:55:28 +0000 | <Cale> | gambpang: The compiled code will typically be identical |
| 2021-08-18 18:56:18 +0000 | d0ku | (~d0ku@178.43.198.70.ipv4.supernova.orange.pl) |
| 2021-08-18 18:58:43 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 18:59:10 +0000 | d0ku | (~d0ku@178.43.198.70.ipv4.supernova.orange.pl) (Client Quit) |
| 2021-08-18 18:59:21 +0000 | d0ku | (~d0ku@178.43.198.70.ipv4.supernova.orange.pl) |
| 2021-08-18 19:04:26 +0000 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2021-08-18 19:04:42 +0000 | tput | (~tim@S0106a84e3fe54613.ed.shawcable.net) |
| 2021-08-18 19:08:24 +0000 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 2021-08-18 19:14:51 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Remote host closed the connection) |
| 2021-08-18 19:14:56 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 19:17:46 +0000 | gehmehgeh | (~user@user/gehmehgeh) (Remote host closed the connection) |
| 2021-08-18 19:18:28 +0000 | gehmehgeh | (~user@user/gehmehgeh) |
| 2021-08-18 19:18:41 +0000 | Cajun | (~Cajun@user/cajun) (Quit: Client closed) |
| 2021-08-18 19:18:54 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 19:21:24 +0000 | Cajun | (~Cajun@user/cajun) |
| 2021-08-18 19:22:44 +0000 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 2021-08-18 19:40:10 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds) |
| 2021-08-18 19:42:06 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
| 2021-08-18 19:42:18 +0000 | ystael | (~ystael@user/ystael) (Read error: Connection reset by peer) |
| 2021-08-18 19:43:50 +0000 | gethuen | (uid502979@id-502979.stonehaven.irccloud.com) |
| 2021-08-18 19:45:25 +0000 | burnside_ | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 19:45:26 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Read error: Connection reset by peer) |
| 2021-08-18 19:46:09 +0000 | alx741 | (~alx741@181.196.68.125) (Ping timeout: 248 seconds) |
| 2021-08-18 19:48:58 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 2021-08-18 19:49:08 +0000 | <aegon> | dsal: dminuoso: roger that I'll try each and see how things vary maybe i should have used persistant vs postgresql-simple |
| 2021-08-18 19:52:40 +0000 | fabfianda | (~fabfianda@37.183.255.57) (Ping timeout: 240 seconds) |
| 2021-08-18 19:57:55 +0000 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 2021-08-18 19:59:39 +0000 | alx741 | (~alx741@181.196.69.234) |
| 2021-08-18 20:01:58 +0000 | jgeerds | (~jgeerds@55d45555.access.ecotel.net) |
| 2021-08-18 20:03:37 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-08-18 20:05:40 +0000 | juhp | (~juhp@128.106.188.220) (Ping timeout: 268 seconds) |
| 2021-08-18 20:11:47 +0000 | hendursaga | (~weechat@user/hendursaga) (Remote host closed the connection) |
| 2021-08-18 20:12:23 +0000 | hendursaga | (~weechat@user/hendursaga) |
| 2021-08-18 20:12:34 +0000 | chisui | (~chisui@200116b8681e48004d4a4305e410a0e6.dip.versatel-1u1.de) |
| 2021-08-18 20:13:39 +0000 | burnside_ | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Remote host closed the connection) |
| 2021-08-18 20:13:44 +0000 | <chisui> | Hey, does anyone have a clue why the sound is skipping in this application? https://github.com/chisui/fsynth/blob/master/src/Main.hs I fear that the reason is that it's the context switch from the generating thread to the writing one. |
| 2021-08-18 20:14:08 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 20:16:11 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Read error: Connection reset by peer) |
| 2021-08-18 20:16:22 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 20:16:32 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Remote host closed the connection) |
| 2021-08-18 20:16:50 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 20:17:04 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 20:17:24 +0000 | gehmehgeh | (~user@user/gehmehgeh) (Remote host closed the connection) |
| 2021-08-18 20:18:08 +0000 | gehmehgeh | (~user@user/gehmehgeh) |
| 2021-08-18 20:18:41 +0000 | <shapr> | chisui: does it help any to spawn off play as a separate thread? |
| 2021-08-18 20:19:12 +0000 | <shapr> | you have -threaded, so I'd guess garbage collection is already on a separate thread? |
| 2021-08-18 20:19:25 +0000 | <dsal> | I'm suspicious of `threadDelay 50` |
| 2021-08-18 20:19:53 +0000 | <davean> | shapr: uh? Is it using hte pauseless GC? |
| 2021-08-18 20:19:59 +0000 | <davean> | Otherwise thats not how threads and GC work |
| 2021-08-18 20:20:14 +0000 | <chisui> | shapr: spawning a new thread doesn't help :( |
| 2021-08-18 20:20:54 +0000 | <chisui> | dsal: the delay is just so that the buffer doesn't overflow. I checked and the buffer is always full enough when popped. |
| 2021-08-18 20:20:55 +0000 | <dsal> | Is it using too much CPU, or too little? |
| 2021-08-18 20:21:10 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2021-08-18 20:21:42 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Ping timeout: 268 seconds) |
| 2021-08-18 20:21:48 +0000 | <chisui> | dsal: Oh, it uses 100% on both threads it got. |
| 2021-08-18 20:22:07 +0000 | <dsal> | `threadDelay` is often used as an approximation for a solution to a different problem. |
| 2021-08-18 20:23:30 +0000 | <davean> | Yah, you usually want to wait until a specific time has happened, or something |
| 2021-08-18 20:23:44 +0000 | <chisui> | dsal: Yeah, I should probably use something like a `TBQueue`. Unfortunately sdl2 requires the callback to be in `IO` |
| 2021-08-18 20:24:03 +0000 | <dsal> | Sounds like too much CPU. :) I'd think this wouldn't be particularly expensive. Profiling might help you understand where all the CPU is going, but in general, I don't think any work should be done if there's nothing that needs computation. |
| 2021-08-18 20:24:04 +0000 | <dsal> | :t atomically |
| 2021-08-18 20:24:05 +0000 | <lambdabot> | error: Variable not in scope: atomically |
| 2021-08-18 20:24:09 +0000 | <dsal> | boo |
| 2021-08-18 20:24:17 +0000 | <dsal> | % :t atomically |
| 2021-08-18 20:24:17 +0000 | <yahb> | dsal: STM a -> IO a |
| 2021-08-18 20:24:57 +0000 | <chisui> | is that safe to use in a multythreaded environment? |
| 2021-08-18 20:25:07 +0000 | <davean> | of course |
| 2021-08-18 20:25:09 +0000 | <davean> | thats the point |
| 2021-08-18 20:25:48 +0000 | <dsal> | Most other languages with multithreading support wish they could do this. :) |
| 2021-08-18 20:25:59 +0000 | <tomsmeding> | chisui: the thing about STM is that all the STM actions within a single 'atomically' block should happen, well, atomically; how it does that in practice is try running it, and if it detects another thread has done something simultaneously, it rolls back and tries again |
| 2021-08-18 20:26:40 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 2021-08-18 20:27:04 +0000 | <tomsmeding> | where a mutex is "pessimistic concurrency", i.e. always paying the cost of locking expecting that races are going to happen often, STM is "optimistic concurrency", i.e. just going for it and paying when there actually ended up being a race |
| 2021-08-18 20:27:32 +0000 | <davean> | tomsmeding: Uh, thats an implimentaiton detail that can vary |
| 2021-08-18 20:27:37 +0000 | <tomsmeding> | I know |
| 2021-08-18 20:27:56 +0000 | <tomsmeding> | but I think it's helpful in getting an intuitive understanding about what's even going on here, and how it _can_ even be implemented |
| 2021-08-18 20:28:01 +0000 | favonia | (~favonia@user/favonia) (Ping timeout: 252 seconds) |
| 2021-08-18 20:28:13 +0000 | <davean> | I mean it can be implimented as a mutex too |
| 2021-08-18 20:28:14 +0000 | <tomsmeding> | I often find that when I have no idea how something could even be implemented, I have no feeling for how to work with it |
| 2021-08-18 20:28:21 +0000 | <tomsmeding> | okay fair |
| 2021-08-18 20:28:35 +0000 | <tomsmeding> | then read it as a bit of evangelising about why STM is cool :) |
| 2021-08-18 20:28:38 +0000 | <stevenxl> | Can someone point out to me what is wrong with ths stack.yaml file: |
| 2021-08-18 20:28:40 +0000 | <davean> | Ok :) |
| 2021-08-18 20:28:45 +0000 | <tomsmeding> | or, why ghc's implementation of it is cool |
| 2021-08-18 20:28:48 +0000 | <stevenxl> | https://www.irccloud.com/pastebin/nUoRzgeh/ |
| 2021-08-18 20:28:58 +0000 | <davean> | tomsmeding: Its no the the coolest! |
| 2021-08-18 20:29:10 +0000 | stevenxl | Gives me a warning "Unrecognized field in Snapshot: extra-deps". |
| 2021-08-18 20:29:12 +0000 | <davean> | tomsmeding: people have played with ones that use HTM, ones that have guarrenteed progress and fairness ... |
| 2021-08-18 20:29:28 +0000 | <davean> | well, I don't know that the HTM ever happened |
| 2021-08-18 20:30:41 +0000 | <stevenxl> | https://www.irccloud.com/pastebin/066TZS1X/ |
| 2021-08-18 20:30:51 +0000 | stevenxl | Even that simple file gives me an error, and that is supposedly the default. |
| 2021-08-18 20:30:58 +0000 | <chisui> | Ok, I'll will change to stm. Somehow I'm still not convinced that this will fix the issue |
| 2021-08-18 20:31:53 +0000 | <tomsmeding> | stevenxl: can you give the full command you're invoking, and the full error? |
| 2021-08-18 20:32:19 +0000 | stevenxl | Hi tomsmeding - thank you for the offer to help. Apparently, A custom snapshot doesn't use extra-deps, they go under packages. |
| 2021-08-18 20:33:02 +0000 | <tomsmeding> | oh this is not a stack.yaml of a project? |
| 2021-08-18 20:33:47 +0000 | <dsal> | chisui: My guess is that the issue is that you're burning all the cores and putting in time delays to try to artificially slow stuff down. Just organize information exchanges with queues and have a thread keeping it populated and let the other one read from it when it needs it. Shouldn't be using much CPU. |
| 2021-08-18 20:34:08 +0000 | stevenxl | tomsmeding: I completely missed the fact that we have a `stack.yaml` which points to a resolver. |
| 2021-08-18 20:34:24 +0000 | ystael | (~ystael@user/ystael) |
| 2021-08-18 20:35:05 +0000 | <chisui> | dsal: It' would be great if there was a streaming library that supports this. |
| 2021-08-18 20:36:04 +0000 | <dsal> | Asking for data from IO is just `atomically . readTBQueue` |
| 2021-08-18 20:36:16 +0000 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 252 seconds) |
| 2021-08-18 20:36:23 +0000 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
| 2021-08-18 20:36:35 +0000 | <adamCS> | chisui: Maybe streamly? (https://hackage.haskell.org/package/streamly) |
| 2021-08-18 20:37:05 +0000 | <chisui> | should I use a bare TBQueue or chunk the data further? |
| 2021-08-18 20:37:06 +0000 | jolly | (~jolly@208.180.97.158) |
| 2021-08-18 20:37:21 +0000 | <chisui> | adamCS: thanks, I'll take a look |
| 2021-08-18 20:37:39 +0000 | <davean> | chisui: lots of streaming libraries can do this sort of thing |
| 2021-08-18 20:38:07 +0000 | hexfive | (~eric@50.35.83.177) |
| 2021-08-18 20:38:22 +0000 | <dsal> | chisui: What you decide `a` should be there is up to you. Easy enough to change. |
| 2021-08-18 20:40:07 +0000 | cheater | (~Username@user/cheater) (Ping timeout: 252 seconds) |
| 2021-08-18 20:40:16 +0000 | <tomsmeding> | chisui: how many things are you planning on pushing on that queue per second |
| 2021-08-18 20:40:33 +0000 | <tomsmeding> | if that's 44100 things, then probably chunk that a bit :) |
| 2021-08-18 20:40:44 +0000 | cheater | (~Username@user/cheater) |
| 2021-08-18 20:41:05 +0000 | <chisui> | tomsmeding: It's currently running on a sample rate of 48k ;) |
| 2021-08-18 20:41:23 +0000 | <davean> | chisui: haha, whats your latency requirement? |
| 2021-08-18 20:41:31 +0000 | <davean> | chisui: use that to calculate chunk size |
| 2021-08-18 20:41:37 +0000 | <davean> | but 48kps is nothing |
| 2021-08-18 20:41:53 +0000 | <davean> | I do that many web requests in a thread |
| 2021-08-18 20:43:05 +0000 | <tomsmeding> | TBQueue is the classic two-lists implementation of a queue, so it will do a list reversal of roughly the whole queue every once in a while |
| 2021-08-18 20:43:27 +0000 | <tomsmeding> | while throughput is fine, that's probably not great for latency, depending on exactly how large the queue will be |
| 2021-08-18 20:43:28 +0000 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) |
| 2021-08-18 20:43:36 +0000 | <davean> | chisui: I'd probably make the chunks half the size of your latency requirement |
| 2021-08-18 20:44:10 +0000 | <davean> | as a first default |
| 2021-08-18 20:44:22 +0000 | <chisui> | I think that sdl always requests a fixed size chunk. I'll just use that |
| 2021-08-18 20:45:01 +0000 | <davean> | chisui: last I knew it was configurable |
| 2021-08-18 20:45:17 +0000 | pompez | (~martin@user/pompez) (Quit: WeeChat 3.2) |
| 2021-08-18 20:45:23 +0000 | <chisui> | yeah, but once it's configured it doesn't change randomly right? |
| 2021-08-18 20:45:41 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-08-18 20:46:35 +0000 | <davean> | chisui: right, but you need to pick the size of that based on your latency requirement, so its just moving the problem |
| 2021-08-18 20:55:37 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds) |
| 2021-08-18 20:57:00 +0000 | fvr | (uid503686@id-503686.highgate.irccloud.com) (Quit: Connection closed for inactivity) |
| 2021-08-18 21:01:25 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-18 21:01:42 +0000 | nschoe | (~quassel@2a01:e0a:8e:a190:f185:3872:6a89:c741) (Ping timeout: 245 seconds) |
| 2021-08-18 21:01:56 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2021-08-18 21:03:39 +0000 | acidjnk_new | (~acidjnk@p200300d0c72b952850c7a959aba8feb6.dip0.t-ipconnect.de) |
| 2021-08-18 21:03:52 +0000 | wrengr_away | wrengr |
| 2021-08-18 21:05:40 +0000 | burnsidesLlama | (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Ping timeout: 240 seconds) |
| 2021-08-18 21:08:19 +0000 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
| 2021-08-18 21:08:50 +0000 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 244 seconds) |
| 2021-08-18 21:09:31 +0000 | favonia | (~favonia@user/favonia) |
| 2021-08-18 21:10:22 +0000 | <chisui> | Thank's everyone. Using TBQueue together with sensibly sized chunks worked wonders. |
| 2021-08-18 21:11:56 +0000 | <tomsmeding> | 🎉 |
| 2021-08-18 21:14:31 +0000 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
| 2021-08-18 21:15:30 +0000 | <monochrom> | :) |
| 2021-08-18 21:15:58 +0000 | hexfive | (~eric@50.35.83.177) (Quit: WeeChat 3.0) |
| 2021-08-18 21:17:35 +0000 | chisui | (~chisui@200116b8681e48004d4a4305e410a0e6.dip.versatel-1u1.de) (Quit: Client closed) |
| 2021-08-18 21:17:46 +0000 | <monochrom> | Yeah in your case you just go "atomically (enqueue this)" and "atomically (dequeue that)" and that's your IO level. |
| 2021-08-18 21:18:00 +0000 | chisui | (~chisui@200116b8681e48004d4a4305e410a0e6.dip.versatel-1u1.de) |
| 2021-08-18 21:18:54 +0000 | <monochrom> | The STM level needs to be more fine-grained because "enqueue this" for example is multiple lines of STM code. |
| 2021-08-18 21:19:10 +0000 | <monochrom> | or more precisely, multiple operations. |
| 2021-08-18 21:20:10 +0000 | <chisui> | monochrom: are you talking about the current version I pushed? |
| 2021-08-18 21:20:11 +0000 | <monochrom> | And other people will also have use cases requiring "atomically (enqueue this and dequeue something else)". |
| 2021-08-18 21:20:24 +0000 | <monochrom> | I think yes. I haven't checked. |
| 2021-08-18 21:21:10 +0000 | ubert | (~Thunderbi@178.115.48.151.wireless.dyn.drei.com) (Ping timeout: 240 seconds) |
| 2021-08-18 21:21:21 +0000 | <tomsmeding> | chisui: you just missed one message https://ircbrowse.tomsmeding.com/browse/lchaskell?id=145828#trid145828 |
| 2021-08-18 21:22:05 +0000 | <chisui> | Ah, that makes sense |
| 2021-08-18 21:22:18 +0000 | <monochrom> | Oh, that. I missed that too haha. |
| 2021-08-18 21:30:49 +0000 | machinedgod | (~machinedg@24.105.81.50) |
| 2021-08-18 21:33:07 +0000 | pgib | (~textual@173.38.117.86) |
| 2021-08-18 21:34:40 +0000 | qbt | (~edun@user/edun) (Ping timeout: 240 seconds) |
| 2021-08-18 21:38:11 +0000 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) (Read error: Connection reset by peer) |
| 2021-08-18 21:44:23 +0000 | <dsal> | chisui: do you still need that IORef? |
| 2021-08-18 21:45:08 +0000 | <chisui> | dsal: I use it to fill a single chunk. |
| 2021-08-18 21:45:09 +0000 | <dsal> | I guess I don't quite understand that part. |
| 2021-08-18 21:50:08 +0000 | doyougnu | (~user@c-73-25-202-122.hsd1.or.comcast.net) (Remote host closed the connection) |
| 2021-08-18 21:53:55 +0000 | polyphem | (~polyphem@2a02:810d:640:776c:f4c0:a27a:540e:c15e) |
| 2021-08-18 21:56:37 +0000 | zebrag | (~chris@user/zebrag) |
| 2021-08-18 21:58:47 +0000 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-18 22:00:55 +0000 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) |
| 2021-08-18 22:04:21 +0000 | doyougnu | (~user@c-73-25-202-122.hsd1.or.comcast.net) |
| 2021-08-18 22:04:35 +0000 | gambpang | (~ishipman@207.181.230.156) (Remote host closed the connection) |
| 2021-08-18 22:07:21 +0000 | <aegon> | does ghc automatically use the newtype strategy for deriving newtypes or should I be explicit about that to make sure |
| 2021-08-18 22:07:46 +0000 | d0ku | (~d0ku@178.43.198.70.ipv4.supernova.orange.pl) (Ping timeout: 268 seconds) |
| 2021-08-18 22:10:15 +0000 | Cajun | (~Cajun@user/cajun) (Quit: Client closed) |
| 2021-08-18 22:11:05 +0000 | Cajun | (~Cajun@user/cajun) |
| 2021-08-18 22:11:44 +0000 | ell | ellie |
| 2021-08-18 22:12:57 +0000 | abhixec | (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
| 2021-08-18 22:15:31 +0000 | p0lyph3m | (~polyphem@2a02:810d:640:776c:bd0c:a594:ef4e:c3f3) |
| 2021-08-18 22:16:01 +0000 | p0lyph3m | (~polyphem@2a02:810d:640:776c:bd0c:a594:ef4e:c3f3) (Client Quit) |
| 2021-08-18 22:16:13 +0000 | chisui | (~chisui@200116b8681e48004d4a4305e410a0e6.dip.versatel-1u1.de) (Ping timeout: 246 seconds) |
| 2021-08-18 22:16:24 +0000 | p0lyph3m | (~polyphem@2a02:810d:640:776c:bd0c:a594:ef4e:c3f3) |
| 2021-08-18 22:16:42 +0000 | polyphem | (~polyphem@2a02:810d:640:776c:f4c0:a27a:540e:c15e) (Ping timeout: 245 seconds) |
| 2021-08-18 22:17:11 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-18 22:18:03 +0000 | <aegon> | bah, a page down in this post it talks about that and the accompanying compile warn line |
| 2021-08-18 22:18:10 +0000 | vysn | (~vysn@user/vysn) (Ping timeout: 240 seconds) |
| 2021-08-18 22:20:45 +0000 | p0lyph3m | polyphem |
| 2021-08-18 22:21:00 +0000 | michalz | (~michalz@185.246.204.62) (Remote host closed the connection) |
| 2021-08-18 22:21:26 +0000 | polyphem | (~polyphem@2a02:810d:640:776c:bd0c:a594:ef4e:c3f3) (Quit: CoreIRC for Android - www.coreirc.com) |
| 2021-08-18 22:21:37 +0000 | polyphem | (~polyphem@2a02:810d:640:776c:bd0c:a594:ef4e:c3f3) |
| 2021-08-18 22:22:13 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-08-18 22:26:25 +0000 | mousey | (~skymouse@gateway/tor-sasl/mousey) (Remote host closed the connection) |
| 2021-08-18 22:26:52 +0000 | mousey | (~skymouse@gateway/tor-sasl/mousey) |
| 2021-08-18 22:29:37 +0000 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 245 seconds) |
| 2021-08-18 22:32:17 +0000 | Guest56 | (~textual@209.51.86.47) |
| 2021-08-18 22:34:05 +0000 | mousey | (~skymouse@gateway/tor-sasl/mousey) (Ping timeout: 244 seconds) |
| 2021-08-18 22:36:03 +0000 | acidjnk_new | (~acidjnk@p200300d0c72b952850c7a959aba8feb6.dip0.t-ipconnect.de) (Ping timeout: 258 seconds) |
| 2021-08-18 22:36:55 +0000 | andjjj23_ | (~irc@107.170.228.47) |
| 2021-08-18 22:38:27 +0000 | jgeerds | (~jgeerds@55d45555.access.ecotel.net) (Ping timeout: 245 seconds) |
| 2021-08-18 22:38:30 +0000 | Guest56 | (~textual@209.51.86.47) (Quit: Textual IRC Client: www.textualapp.com) |
| 2021-08-18 22:38:46 +0000 | venue | (~venue@209.51.86.47) |
| 2021-08-18 22:39:40 +0000 | <kilolympus> | I've got a gigantic ~/.stack directory (39 gigs on a 128 gb SSD), and I want to trim it down -- is there a way to use Stack to list projects that use a certain installed GHC version? (so I can safely delete stuff) |
| 2021-08-18 22:40:18 +0000 | <kilolympus> | Or at least some form of safe purge method (I'm fine with recompiling everything again, since there may be older projects I no longer actively work on, which I can save on) |
| 2021-08-18 22:40:45 +0000 | <kilolympus> | I heard I shouldn't just downright remove ~/.stack, since it can error out if project/.stack-work still exists |
| 2021-08-18 22:41:04 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds) |
| 2021-08-18 22:41:18 +0000 | <dsal> | You can rm -rf most of the big stuff in there. |
| 2021-08-18 22:41:42 +0000 | <sm> | kilolympus: stack-clean-old is a good safe way |
| 2021-08-18 22:42:18 +0000 | <sm> | also removing project/.stack-work would be another option |
| 2021-08-18 22:42:45 +0000 | <kilolympus> | Ah, ok dsal, thanks! |
| 2021-08-18 22:42:53 +0000 | <dsal> | sm's being more surgical. :) |
| 2021-08-18 22:42:57 +0000 | <kilolympus> | sm: Didn't know about this, looks like stack-clean-old looks great! |
| 2021-08-18 22:43:14 +0000 | <kilolympus> | Removing project/.stack-work would be fine, but the projects themselves are on a plenty big external HDD |
| 2021-08-18 22:43:15 +0000 | <dsal> | I use nix-integration and don't worry about it anymore. Now it's all in /nix instead |
| 2021-08-18 22:43:23 +0000 | <sm> | yup. Be aware it shows/removes different stuff depending whether you run it inside a project or not |
| 2021-08-18 22:43:35 +0000 | <kilolympus> | Alright |
| 2021-08-18 22:43:39 +0000 | <kilolympus> | Thanks! |
| 2021-08-18 22:43:43 +0000 | venue | (~venue@209.51.86.47) (Quit: Textual IRC Client: www.textualapp.com) |
| 2021-08-18 22:44:02 +0000 | venue | (~venue@209.51.86.47) |
| 2021-08-18 22:45:21 +0000 | chomwitt | (~chomwitt@ppp-94-67-193-240.home.otenet.gr) (Remote host closed the connection) |
| 2021-08-18 22:48:16 +0000 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 252 seconds) |
| 2021-08-18 22:49:10 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-08-18 22:51:06 +0000 | mousey | (~skymouse@gateway/tor-sasl/mousey) |
| 2021-08-18 22:51:20 +0000 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.) |
| 2021-08-18 22:51:34 +0000 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 2021-08-18 22:54:55 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-08-18 22:55:10 +0000 | venue | (~venue@209.51.86.47) (adios) |
| 2021-08-18 22:57:32 +0000 | venue | (~venue@209.51.86.47) |
| 2021-08-18 22:57:32 +0000 | venue | venuex |
| 2021-08-18 22:58:34 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
| 2021-08-18 23:00:15 +0000 | aegon | (~mike@174.127.249.180) (Remote host closed the connection) |
| 2021-08-18 23:03:12 +0000 | venuex | (~venue@209.51.86.47) (Changing host) |
| 2021-08-18 23:03:12 +0000 | venuex | (~venue@user/venue) |
| 2021-08-18 23:05:40 +0000 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 2021-08-18 23:08:12 +0000 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 268 seconds) |
| 2021-08-18 23:09:57 +0000 | Erutuon | (~Erutuon@user/erutuon) |
| 2021-08-18 23:15:51 +0000 | machinedgod | (~machinedg@24.105.81.50) |
| 2021-08-18 23:18:03 +0000 | wroathe | (~wroathe@96-88-30-181-static.hfc.comcastbusiness.net) |
| 2021-08-18 23:25:29 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds) |
| 2021-08-18 23:28:33 +0000 | Jonno_FTW | (~come@user/jonno-ftw/x-0835346) (Ping timeout: 268 seconds) |
| 2021-08-18 23:33:07 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-08-18 23:36:19 +0000 | frosky | (~froskyarr@50.7.59.207) |
| 2021-08-18 23:36:50 +0000 | Jonno_FTW | (~come@api.carswap.me) |
| 2021-08-18 23:36:57 +0000 | dmwit | (~dmwit@pool-108-28-26-143.washdc.fios.verizon.net) (Remote host closed the connection) |
| 2021-08-18 23:38:08 +0000 | dajoer | (~david@user/gvx) |
| 2021-08-18 23:42:34 +0000 | oldsk00l | (~znc@ec2-18-170-87-228.eu-west-2.compute.amazonaws.com) |
| 2021-08-18 23:42:44 +0000 | oldsk00l_ | (~znc@ec2-18-170-87-228.eu-west-2.compute.amazonaws.com) (Ping timeout: 268 seconds) |
| 2021-08-18 23:46:31 +0000 | sajith_ | sajith |
| 2021-08-18 23:50:18 +0000 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 2021-08-18 23:50:42 +0000 | Axma70428 | (~Axman6@user/axman6) (Remote host closed the connection) |
| 2021-08-18 23:50:56 +0000 | Axman6 | (~Axman6@user/axman6) |
| 2021-08-18 23:52:19 +0000 | geekosaur | (~geekosaur@xmonad/geekosaur) |
| 2021-08-18 23:54:10 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 2021-08-18 23:56:26 +0000 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-08-18 23:59:23 +0000 | PinealGlandOptic | (~PinealGla@37.115.210.35) |