Logs: freenode/#haskell
| 2020-11-15 19:20:56 | → | berberman[T] joins (berberma4@gateway/shell/matrix.org/x-jhiqdhcukfrwwucl) |
| 2020-11-15 19:21:42 | → | whataday joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 2020-11-15 19:21:44 | → | sm[m] joins (simonmicma@gateway/shell/matrix.org/x-vlvwwxdsuamzwmii) |
| 2020-11-15 19:21:54 | → | debugloop joins (~danieln@unaffiliated/debugloop) |
| 2020-11-15 19:21:57 | → | grol joins (~quassel@2620:11e:1000:2:250:56ff:fea4:7) |
| 2020-11-15 19:22:08 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 2020-11-15 19:22:24 | → | domenkozar[m] joins (domenkozar@NixOS/user/domenkozar) |
| 2020-11-15 19:22:43 | → | ttc joins (tomtauma1@gateway/shell/matrix.org/x-ipfwgcjvwwdcokds) |
| 2020-11-15 19:23:22 | → | mikr[m] joins (mikrdavral@gateway/shell/matrix.org/x-xaesttypbsiulkoz) |
| 2020-11-15 19:23:42 | × | kuribas quits (~user@ptr-25vy0i7amf8n4ydxgty.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
| 2020-11-15 19:24:44 | → | alp joins (~alp@2a01:e0a:58b:4920:55e:a204:938c:c050) |
| 2020-11-15 19:25:42 | × | knupfer quits (~Thunderbi@200116b82c37cc00b0f3d3733bf89b01.dip.versatel-1u1.de) (Ping timeout: 260 seconds) |
| 2020-11-15 19:26:13 | × | Jeanne-Kamikaze quits (~Jeanne-Ka@66.115.189.189) (Ping timeout: 246 seconds) |
| 2020-11-15 19:27:19 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2020-11-15 19:27:32 | → | NikolaiToryzin joins (~NikolaiTo@178.162.212.214) |
| 2020-11-15 19:28:02 | × | cantstanya quits (~chatting@gateway/tor-sasl/cantstanya) (Remote host closed the connection) |
| 2020-11-15 19:29:37 | × | avdb quits (~avdb@ip-83-134-109-106.dsl.scarlet.be) (Ping timeout: 264 seconds) |
| 2020-11-15 19:29:42 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:c56c:6f1e:9a5c:a8b9) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-11-15 19:30:22 | → | conal joins (~conal@107.181.166.202) |
| 2020-11-15 19:30:41 | → | cantstanya joins (~chatting@gateway/tor-sasl/cantstanya) |
| 2020-11-15 19:31:11 | → | Dykam joins (Dykam@dykam.nl) |
| 2020-11-15 19:37:00 | × | AlterEgo- quits (~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving) |
| 2020-11-15 19:38:45 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2020-11-15 19:39:08 | → | Sgeo joins (~Sgeo@ool-18b982ad.dyn.optonline.net) |
| 2020-11-15 19:39:19 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:c56c:6f1e:9a5c:a8b9) |
| 2020-11-15 19:39:33 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 2020-11-15 19:43:01 | hackage | hlint 3.2.2 - Source code suggestions https://hackage.haskell.org/package/hlint-3.2.2 (NeilMitchell) |
| 2020-11-15 19:43:12 | × | ericsagn1 quits (~ericsagne@2405:6580:0:5100:dcdb:fdc1:bfe:ca10) (Ping timeout: 260 seconds) |
| 2020-11-15 19:45:39 | × | conal quits (~conal@107.181.166.202) (Quit: Computer has gone to sleep.) |
| 2020-11-15 19:47:11 | → | geekosaur joins (ac3a3b9a@172.58.59.154) |
| 2020-11-15 19:49:33 | → | acidjnk_new joins (~acidjnk@p200300d0c718f605045012e87868ed0b.dip0.t-ipconnect.de) |
| 2020-11-15 19:52:53 | → | conal joins (~conal@64.71.133.70) |
| 2020-11-15 19:53:37 | × | conal quits (~conal@64.71.133.70) (Client Quit) |
| 2020-11-15 19:53:48 | → | o1lo01ol1o joins (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) |
| 2020-11-15 19:54:08 | → | conal joins (~conal@64.71.133.70) |
| 2020-11-15 19:54:17 | × | justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) () |
| 2020-11-15 19:54:45 | × | conal quits (~conal@64.71.133.70) (Client Quit) |
| 2020-11-15 19:55:25 | → | ericsagn1 joins (~ericsagne@2405:6580:0:5100:4a3c:ad37:e0cc:3345) |
| 2020-11-15 19:57:01 | hackage | ormolu 0.1.4.1 - A formatter for Haskell source code https://hackage.haskell.org/package/ormolu-0.1.4.1 (mrkkrp) |
| 2020-11-15 19:58:42 | × | o1lo01ol1o quits (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Ping timeout: 260 seconds) |
| 2020-11-15 19:59:15 | <monochrom> | I don't simply say never use lazy I/O. But I say under very strict conditions, therefore you end up rarely using it. |
| 2020-11-15 19:59:16 | → | conal joins (~conal@64.71.133.70) |
| 2020-11-15 19:59:52 | × | revprez_anzio quits (~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2020-11-15 20:00:15 | <monochrom> | My condition goes like: You understand lazy evaluation thoroughly, and based on that you see that your use case is dead simple to reason about. |
| 2020-11-15 20:00:29 | → | bitmagie joins (~Thunderbi@200116b8060a110035b58d6790a13a82.dip.versatel-1u1.de) |
| 2020-11-15 20:00:43 | → | revprez_anzio joins (~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) |
| 2020-11-15 20:01:05 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2020-11-15 20:03:55 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:c56c:6f1e:9a5c:a8b9) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-11-15 20:04:55 | → | Jeanne-Kamikaze joins (~Jeanne-Ka@66.115.189.209) |
| 2020-11-15 20:06:21 | <dolio> | Hex dump of a file doesn't seem like it is a hard thing to reason about, if that was the actual problem. |
| 2020-11-15 20:06:31 | <monochrom> | An example is main = interact (unlines . map solve_one . lines). This is particularly idomatic for test-based programming contests. |
| 2020-11-15 20:07:34 | × | bitmagie quits (~Thunderbi@200116b8060a110035b58d6790a13a82.dip.versatel-1u1.de) (Quit: bitmagie) |
| 2020-11-15 20:08:03 | <monochrom> | Another one I use is lazy bytestring's hGetContents and giving it to cassava's decodeEither, and in case of cassava declaring parse error, the program quits very quickly. |
| 2020-11-15 20:08:58 | <monochrom> | Therefore, if there is no parse error, the whole stream will have to be exhausted for cassava to confirm there is no parse error, therefore the handle is closed before my program can proceed. |
| 2020-11-15 20:09:15 | <monochrom> | And if there is a parse error, my program quits without much further ado anyway. |
| 2020-11-15 20:09:48 | <monochrom> | Therefore, either way, the handle is closed deterministically. |
| 2020-11-15 20:09:50 | → | britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch) |
| 2020-11-15 20:10:50 | → | sQVe joins (~sQVe@unaffiliated/sqve) |
| 2020-11-15 20:10:55 | × | fendor quits (~fendor@178.165.131.163.wireless.dyn.drei.com) (Remote host closed the connection) |
| 2020-11-15 20:11:07 | → | pavonia joins (~user@unaffiliated/siracusa) |
| 2020-11-15 20:12:00 | → | fendor joins (~fendor@178.165.131.163.wireless.dyn.drei.com) |
| 2020-11-15 20:12:01 | × | Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
| 2020-11-15 20:14:54 | → | Tario joins (~Tario@201.192.165.173) |
| 2020-11-15 20:15:49 | → | justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311) |
| 2020-11-15 20:16:46 | × | Iceland_jack quits (~user@31.124.48.169) (Read error: No route to host) |
| 2020-11-15 20:17:07 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 2020-11-15 20:21:42 | → | moet joins (~moet@mobile-166-137-178-183.mycingular.net) |
| 2020-11-15 20:21:57 | → | servo joins (~servo@41.92.97.254) |
| 2020-11-15 20:21:57 | <moet> | is there some way to find the bit-width of Int and Word and Float and Double at compile time? |
| 2020-11-15 20:22:32 | <moet> | i don's see anything about it in the section on CPP macros https://downloads.haskell.org/ghc/latest/docs/html/users_guide/phases.html#standard-cpp-macros |
| 2020-11-15 20:23:19 | <moet> | i could do it at runtime, i guess, using Data.Bits.bitSize i suppose |
| 2020-11-15 20:23:43 | <moet> | i'm trying to select a representation for a type though, so it would be better done at compile time |
| 2020-11-15 20:23:59 | × | alp quits (~alp@2a01:e0a:58b:4920:55e:a204:938c:c050) (Ping timeout: 272 seconds) |
| 2020-11-15 20:24:18 | <geekosaur> | there are sized versions of most of those, e.g. Int32 vs. Int64 vs. Int |
| 2020-11-15 20:25:35 | <geekosaur> | and similarly for Word, but not Float or Double |
| 2020-11-15 20:26:02 | <moet> | Yes, there are sized versions (and i know there size at compile time!) |
| 2020-11-15 20:26:15 | <geekosaur> | but also be aware that usually they'll be stored as 64 bit values anyway |
| 2020-11-15 20:26:17 | <moet> | but if i want to create a sized representation of Int, i don't know it's size .. |
| 2020-11-15 20:26:22 | <geekosaur> | unless you're using packed vectors |
| 2020-11-15 20:26:34 | <moet> | hmm.. |
| 2020-11-15 20:26:39 | <moet> | no packed vectors involved |
| 2020-11-15 20:27:01 | <moet> | but i need to know whether Int is 32 or 64 bit to select an appropriate representation for it in my work |
| 2020-11-15 20:27:01 | <dolio> | How static are you talking about? Like, are you generating code based on the static size? |
| 2020-11-15 20:27:23 | <moet> | i'm not generating code. i'm using a closed type family to map haskell types to information about their representation |
| 2020-11-15 20:27:39 | <moet> | then i'm using instances on the representation type to implement my dsl thing |
| 2020-11-15 20:28:15 | <moet> | so in all my instance methods for Int's representation type, i could use bitSize to do the right thing at runtime i guess |
| 2020-11-15 20:28:51 | <dolio> | Well, primitive has sizes for everything, and I think it gets them from a header file. |
| 2020-11-15 20:29:01 | <dolio> | For the non-obvious ones. |
| 2020-11-15 20:29:04 | <moet> | oh! that's interesting.. i'll take a look there |
| 2020-11-15 20:30:45 | <moet> | https://github.com/haskell/primitive/blob/0e9141ca103c847e8ebe932a8663c5b8849f564a/Data/Primitive/MachDeps.hs |
| 2020-11-15 20:31:00 | <moet> | looks like they're importing the header and that just makes the defines available in haskell |
| 2020-11-15 20:31:04 | <moet> | i hand no idea that i could do that |
| 2020-11-15 20:31:13 | <dolio> | Well, it's using CPP. |
| 2020-11-15 20:32:31 | <moet> | well, when you put it that way :) |
| 2020-11-15 20:33:03 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 2020-11-15 20:33:19 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2020-11-15 20:34:11 | → | conal joins (~conal@64.71.133.70) |
| 2020-11-15 20:34:25 | × | ggole quits (~ggole@2001:8003:8119:7200:1dd1:a770:c2ab:8a5e) (Quit: Leaving) |
| 2020-11-15 20:35:31 | hackage | postgresql-simple 0.6.3 - Mid-Level PostgreSQL client library https://hackage.haskell.org/package/postgresql-simple-0.6.3 (phadej) |
| 2020-11-15 20:36:03 | <moet> | dolio: geekosaur: thanks! |
All times are in UTC.