Logs: freenode/#haskell
| 2020-11-15 16:57:37 | ski | . o O ( "Null References: The Billion Dollar Mistake" by Tony Hoare in 2009-08-25 at <https://www.infoq.com/presentations/Null-References-The-Billion-Dollar-Mistake-Tony-Hoare/> ) |
| 2020-11-15 16:58:01 | <int-e> | . o O ( small fries ) |
| 2020-11-15 16:58:11 | <davean> | goldcell: mmm, ok, so I do think you're confused about values and types then. |
| 2020-11-15 16:58:39 | <goldcell> | go on ... |
| 2020-11-15 16:58:53 | <davean> | null values are the representation of absence inside a type, a type is a specification |
| 2020-11-15 16:59:24 | <davean> | you can trivially lift/extend any type to also include the concept of emptiness with "Maybe" |
| 2020-11-15 16:59:47 | <davean> | The TYPE just says what can be there though |
| 2020-11-15 16:59:58 | <ski> | (and you can do it again, adding another element that was not in the original domain. this is different from "nullable types") |
| 2020-11-15 17:00:38 | <goldcell> | ok, thanks :] |
| 2020-11-15 17:01:26 | <davean> | In Haskell the types represent if the value can be "null". This is true in go and C also, just there its implicitely required an entire set must have null values allowed. |
| 2020-11-15 17:01:35 | ski | . o O ( "Option types, optional parameters" ) |
| 2020-11-15 17:03:09 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2020-11-15 17:03:32 | → | hjdk09p joins (8ec52d01@gateway/web/cgi-irc/kiwiirc.com/ip.142.197.45.1) |
| 2020-11-15 17:03:38 | <hjdk09p> | ;l |
| 2020-11-15 17:04:13 | ski | . o O ( "Option types, optional parameters" by Riastradh in 2006-02-03 at their blag at <https://mumble.net/~campbell/blag.txt>,RSS <http://vrici.lojban.org/~cowan/blag.xml> ) |
| 2020-11-15 17:05:10 | × | hjdk09p quits (8ec52d01@gateway/web/cgi-irc/kiwiirc.com/ip.142.197.45.1) (Client Quit) |
| 2020-11-15 17:05:52 | × | acarrico quits (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 246 seconds) |
| 2020-11-15 17:06:38 | → | Jeanne-Kamikaze joins (~Jeanne-Ka@66.115.189.189) |
| 2020-11-15 17:08:21 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 2020-11-15 17:08:58 | × | goldcell quits (~goldcell@2607:fea8:2c40:307::50de) (Quit: Leaving) |
| 2020-11-15 17:09:05 | × | bgamari quits (~bgamari@72.65.102.116) (Ping timeout: 240 seconds) |
| 2020-11-15 17:10:38 | → | o1lo01ol1o joins (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) |
| 2020-11-15 17:10:49 | × | alp quits (~alp@2a01:e0a:58b:4920:a992:8ca9:416:3a9e) (Ping timeout: 272 seconds) |
| 2020-11-15 17:13:04 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 2020-11-15 17:13:18 | → | solonarv joins (~solonarv@astrasbourg-653-1-156-155.w90-6.abo.wanadoo.fr) |
| 2020-11-15 17:15:20 | × | o1lo01ol1o quits (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Ping timeout: 256 seconds) |
| 2020-11-15 17:20:59 | → | Deide joins (~Deide@217.155.19.23) |
| 2020-11-15 17:26:17 | → | elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) |
| 2020-11-15 17:27:25 | × | Audentity_ quits (~Audentity@4e69b241.skybroadband.com) (Ping timeout: 240 seconds) |
| 2020-11-15 17:28:28 | → | conal joins (~conal@64.71.133.70) |
| 2020-11-15 17:29:45 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Remote host closed the connection) |
| 2020-11-15 17:30:40 | × | boxscape quits (54a35f37@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.95.55) (Ping timeout: 265 seconds) |
| 2020-11-15 17:31:07 | → | gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh) |
| 2020-11-15 17:31:09 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:c56c:6f1e:9a5c:a8b9) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-11-15 17:32:25 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2020-11-15 17:32:37 | × | britva quits (~britva@2a02:aa13:7240:2980:bc4b:509a:98e6:5bb0) (Quit: This computer has gone to sleep) |
| 2020-11-15 17:33:49 | × | elliott__ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 264 seconds) |
| 2020-11-15 17:33:54 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 2020-11-15 17:35:35 | → | elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) |
| 2020-11-15 17:38:04 | × | jakalx quits (~jakalx@base.jakalx.net) (Ping timeout: 246 seconds) |
| 2020-11-15 17:38:56 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-15 17:39:18 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2020-11-15 17:43:10 | × | hidedagger quits (~nate@125.161.129.195) (Changing host) |
| 2020-11-15 17:43:10 | → | hidedagger joins (~nate@unaffiliated/hidedagger) |
| 2020-11-15 17:45:46 | × | Unhammerd quits (~Unhammer@gateway/tor-sasl/unhammer) (Remote host closed the connection) |
| 2020-11-15 17:46:28 | → | Audentity joins (~Audentity@4e69b241.skybroadband.com) |
| 2020-11-15 17:47:00 | hackage | brittany 0.12.2.0 - Haskell source code formatter https://hackage.haskell.org/package/brittany-0.12.2.0 (fozworth) |
| 2020-11-15 17:48:38 | → | Unhammerd joins (~Unhammer@gateway/tor-sasl/unhammer) |
| 2020-11-15 17:50:53 | × | Unhammerd quits (~Unhammer@gateway/tor-sasl/unhammer) (Remote host closed the connection) |
| 2020-11-15 17:50:59 | <kuribas> | devalot: well, the core is hard to read, but it looks fine. |
| 2020-11-15 17:51:01 | → | kritzefitz_ joins (~kritzefit@212.86.56.80) |
| 2020-11-15 17:51:09 | <kuribas> | erm davean |
| 2020-11-15 17:51:29 | → | Unhammerd joins (~Unhammer@gateway/tor-sasl/unhammer) |
| 2020-11-15 17:52:04 | <kuribas> | davean: my stack isn't complicated though: newtype EventParser l e m a = EventParser { getEventParser :: ExceptT (EventParseError e) (StateT (ParserState l) m) |
| 2020-11-15 17:52:23 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-15 17:52:23 | → | todda7 joins (~torstein@ppp-2-84-17-169.home.otenet.gr) |
| 2020-11-15 17:53:10 | → | acarrico joins (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) |
| 2020-11-15 17:53:12 | × | kritzefitz_ quits (~kritzefit@212.86.56.80) (Remote host closed the connection) |
| 2020-11-15 17:53:57 | <kuribas> | davean: And I just had to replace ExceptT with my new CPSExceptT |
| 2020-11-15 17:55:00 | → | chaosmasttter joins (~chaosmast@p200300c4a73c5201c1de5602741d98a2.dip0.t-ipconnect.de) |
| 2020-11-15 17:55:13 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-15 17:56:01 | → | boxscape joins (54a35f37@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.95.55) |
| 2020-11-15 17:56:42 | × | Zetagon quits (~leo@c151-177-52-233.bredband.comhem.se) (Ping timeout: 256 seconds) |
| 2020-11-15 17:57:10 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2020-11-15 17:57:19 | × | conal quits (~conal@64.71.133.70) (Ping timeout: 246 seconds) |
| 2020-11-15 17:58:44 | → | britva joins (~britva@2a02:aa13:7240:2980:bc4b:509a:98e6:5bb0) |
| 2020-11-15 18:00:01 | × | paolo|out quits (~paolo|out@185.163.110.116) () |
| 2020-11-15 18:01:00 | <kuribas> | davean: for example the "someTag" function now takes the failure continuation, success continuation and state. |
| 2020-11-15 18:01:24 | → | elfets_ joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 2020-11-15 18:03:03 | × | elfets_ quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Read error: Connection reset by peer) |
| 2020-11-15 18:04:46 | → | o1lo01ol1o joins (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) |
| 2020-11-15 18:05:17 | × | asheshambasta quits (~user@ptr-e1lysawl9rr13i61o92.18120a2.ip6.access.telenet.be) (Ping timeout: 272 seconds) |
| 2020-11-15 18:05:21 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 256 seconds) |
| 2020-11-15 18:08:21 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 2020-11-15 18:09:40 | × | o1lo01ol1o quits (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Ping timeout: 256 seconds) |
| 2020-11-15 18:10:32 | → | hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-eerkvmaqmqbakgpb) |
| 2020-11-15 18:10:55 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-15 18:12:01 | × | hidedagger quits (~nate@unaffiliated/hidedagger) (Quit: WeeChat 2.9) |
| 2020-11-15 18:12:32 | → | hidedagger joins (~hidedagge@unaffiliated/hidedagger) |
| 2020-11-15 18:13:41 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 2020-11-15 18:17:26 | <p0a> | nshepperd2: "with Lazy IO you get a big ByteString containing the entire input" -> how do I get it? |
| 2020-11-15 18:17:30 | → | robert___ joins (uid452915@gateway/web/irccloud.com/x-lmflebnllvyjwmec) |
| 2020-11-15 18:17:48 | <p0a> | ohhhh sorry I just realized. There's function in ByteString.Lazy that work on handles |
| 2020-11-15 18:17:50 | <p0a> | my bad, ignore it :P |
| 2020-11-15 18:18:12 | → | nexii joins (~user@38-73-246-124.starry-inc.net) |
| 2020-11-15 18:19:37 | <kuribas> | p0a: you should be careful when reading lazy bytestrings from handles. |
| 2020-11-15 18:20:06 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 2020-11-15 18:21:33 | <kuribas> | p0a: make sure you consume the bytestring before closing the handle |
| 2020-11-15 18:21:52 | × | hidedagger quits (~hidedagge@unaffiliated/hidedagger) (Quit: WeeChat 2.9) |
| 2020-11-15 18:22:27 | <nexii> | hello. I'm trying to run through learn you a haskell and trying to implement a fizzbuzz-like function like boomBangs http://learnyouahaskell.com/starting-out found that if x `mod` 5 == 0 and x `mod` 3 == 0 then "FIZZBUZZ" issues an error. I was wondering how I can refactor this to make it not be bad and without pattern matching |
| 2020-11-15 18:24:15 | <p0a> | kuribas: it's possible to naively close the handle before the string is consumed? |
| 2020-11-15 18:24:24 | <kuribas> | p0a: yes |
| 2020-11-15 18:24:35 | <p0a> | so then when the string is attempted to be consumed it results to an io error right? |
| 2020-11-15 18:24:42 | <kuribas> | yes |
| 2020-11-15 18:24:44 | <dolio> | Just don't close the handle manually. |
| 2020-11-15 18:24:56 | <p0a> | that's a good point, thanks |
| 2020-11-15 18:25:37 | × | chaosmasttter quits (~chaosmast@p200300c4a73c5201c1de5602741d98a2.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 2020-11-15 18:26:08 | → | elosant joins (~elosant@gateway/tor-sasl/elosant) |
| 2020-11-15 18:26:35 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Remote host closed the connection) |
| 2020-11-15 18:26:52 | × | elosant quits (~elosant@gateway/tor-sasl/elosant) (Client Quit) |
All times are in UTC.