Home freenode/#haskell: Logs Calendar

Logs: freenode/#haskell

←Prev  Next→ 502,152 events total
2021-05-13 11:47:22 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-05-13 11:47:48 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 252 seconds)
2021-05-13 11:48:53 gzj joins (~gzj@unaffiliated/gzj)
2021-05-13 11:49:37 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:dd6b:deda:26b:d21e) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-05-13 11:50:46 × stree quits (~stree@68.36.8.116) (Ping timeout: 260 seconds)
2021-05-13 11:53:41 × gzj quits (~gzj@unaffiliated/gzj) (Ping timeout: 260 seconds)
2021-05-13 11:58:06 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-05-13 11:59:24 Qwerky joins (~qwerky@178.197.228.14)
2021-05-13 12:00:02 Alleria joins (~textual@2603-7000-3040-0000-c4a1-9300-65ca-16c5.res6.spectrum.com)
2021-05-13 12:00:26 Alleria is now known as Guest82178
2021-05-13 12:01:06 × rond_ quits (531cdf3e@bmd62.neoplus.adsl.tpnet.pl) (Quit: Connection closed)
2021-05-13 12:03:02 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
2021-05-13 12:03:03 × yaroot quits (~yaroot@138.102.13.160.dy.iij4u.or.jp) (Quit: The Lounge - https://thelounge.chat)
2021-05-13 12:03:04 slacko64_7930 joins (~puppy@142.182.30.228)
2021-05-13 12:03:43 yaroot joins (~yaroot@138.102.13.160.dy.iij4u.or.jp)
2021-05-13 12:03:49 stree joins (~stree@68.36.8.116)
2021-05-13 12:04:08 × Qwerky quits (~qwerky@178.197.228.14) (Remote host closed the connection)
2021-05-13 12:04:47 × Guest82178 quits (~textual@2603-7000-3040-0000-c4a1-9300-65ca-16c5.res6.spectrum.com) (Ping timeout: 260 seconds)
2021-05-13 12:05:34 × slacko64_7930 quits (~puppy@142.182.30.228) (Quit: Leaving)
2021-05-13 12:12:03 yaroot4 joins (~yaroot@193.3.30.125.dy.iij4u.or.jp)
2021-05-13 12:14:25 yaroot2 joins (~yaroot@6.3.30.125.dy.iij4u.or.jp)
2021-05-13 12:14:46 × yaroot quits (~yaroot@138.102.13.160.dy.iij4u.or.jp) (Ping timeout: 240 seconds)
2021-05-13 12:14:46 yaroot2 is now known as yaroot
2021-05-13 12:16:18 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-05-13 12:17:06 × yaroot4 quits (~yaroot@193.3.30.125.dy.iij4u.or.jp) (Ping timeout: 240 seconds)
2021-05-13 12:18:47 × lawid quits (~quassel@2a02:8109:b5c0:5334:265e:beff:fe2a:dde8) (Ping timeout: 260 seconds)
2021-05-13 12:18:52 × stree quits (~stree@68.36.8.116) (Quit: Caught exception)
2021-05-13 12:18:53 × ukari quits (~ukari@unaffiliated/ukari) (Remote host closed the connection)
2021-05-13 12:18:57 × star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Remote host closed the connection)
2021-05-13 12:19:08 lawid joins (~quassel@2a02:8109:b5c0:5334:265e:beff:fe2a:dde8)
2021-05-13 12:19:15 star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
2021-05-13 12:19:16 stree joins (~stree@68.36.8.116)
2021-05-13 12:19:57 ukari joins (~ukari@unaffiliated/ukari)
2021-05-13 12:20:38 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 246 seconds)
2021-05-13 12:23:53 Iceland_jack joins (~user@95.147.45.92)
2021-05-13 12:24:50 MrMobius joins (~MrMobius@208.58.206.154)
2021-05-13 12:28:41 <xenon-> should I be using {-# Language Safe #-} in every module that can get away with it?
2021-05-13 12:29:03 × star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Excess Flood)
2021-05-13 12:29:34 × Iceland_jack quits (~user@95.147.45.92) (Ping timeout: 265 seconds)
2021-05-13 12:30:02 star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
2021-05-13 12:32:41 × elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 240 seconds)
2021-05-13 12:33:13 × garFF quits (~garff@0x3e2c86d9.mobile.telia.dk) (Remote host closed the connection)
2021-05-13 12:33:40 <deejaytee> If you're making a package for others to consume, or an executable that needs to be safe, I don't see why not.
2021-05-13 12:34:27 <xenon-> what exactly does this do, besides not allowing unsafePerformIO, or importing modules that are not flagged as Safe?
2021-05-13 12:35:00 acarrico joins (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
2021-05-13 12:35:27 <deejaytee> https://downloads.haskell.org/ghc/8.10.2/docs/html/users_guide/safe_haskell.html
2021-05-13 12:36:03 <int-e> xenon-: Note that the former is one of the goals, not a feature. The latter (restricting imports) is the main mechanisms through which it is accomplished.
2021-05-13 12:37:45 romesrf joins (~romesrf@44.190.189.46.rev.vodafone.pt)
2021-05-13 12:39:10 × Lycurgus quits (~niemand@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-05-13 12:39:49 × star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Excess Flood)
2021-05-13 12:39:57 × zaquest quits (~notzaques@5.128.210.178) (Quit: Leaving)
2021-05-13 12:41:14 zaquest joins (~notzaques@5.128.210.178)
2021-05-13 12:41:50 star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
2021-05-13 12:42:55 × gemmaro quits (~Thunderbi@240f:74:d1f0:1:1bf:3730:3a54:b192) (Ping timeout: 250 seconds)
2021-05-13 12:42:58 deejaetee joins (~deejaytee@cpc91196-cmbg18-2-0-cust215.5-4.cable.virginm.net)
2021-05-13 12:45:14 Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362)
2021-05-13 12:45:29 × deejaytee quits (~deejaytee@193.46-255-62.static.virginmediabusiness.co.uk) (Ping timeout: 246 seconds)
2021-05-13 12:46:21 poljar1 joins (~poljar@93-139-21-8.adsl.net.t-com.hr)
2021-05-13 12:46:23 Alleria joins (~textual@zrcout.mskcc.org)
2021-05-13 12:46:48 Alleria is now known as Guest1217
2021-05-13 12:47:13 × poljar quits (~poljar@78-3-21-158.adsl.net.t-com.hr) (Ping timeout: 240 seconds)
2021-05-13 12:47:56 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 252 seconds)
2021-05-13 12:47:58 × Axman6 quits (~Axman6@pdpc/supporter/student/Axman6) (Remote host closed the connection)
2021-05-13 12:48:17 Lord_of_Life_ is now known as Lord_of_Life
2021-05-13 12:49:23 <xenon-> my question basically is, do you go out of your way to use Safe in every module possible?
2021-05-13 12:49:47 <xenon-> or rather, is it a good style to do this?
2021-05-13 12:51:28 <int-e> Well... hmm. What does it accomplish. Basically it means that the module can be inferred to be safe (so it's kind of redundant), so the benefit you as a developer get is that you'll be alerted when that changes, either because of a new import or because a dependency's "safety" property changed.
2021-05-13 12:51:50 urodna joins (~urodna@unaffiliated/urodna)
2021-05-13 12:52:39 ddellacosta joins (~ddellacos@86.106.143.111)
2021-05-13 12:53:29 deejoytee joins (~deejaytee@193.46-255-62.static.virginmediabusiness.co.uk)
2021-05-13 12:53:53 × deejoytee quits (~deejaytee@193.46-255-62.static.virginmediabusiness.co.uk) (Client Quit)
2021-05-13 12:55:07 × mrchampion quits (~mrchampio@38.18.109.23) (Ping timeout: 252 seconds)
2021-05-13 12:55:46 × deejaetee quits (~deejaytee@cpc91196-cmbg18-2-0-cust215.5-4.cable.virginm.net) (Ping timeout: 240 seconds)
2021-05-13 12:57:02 × ddellacosta quits (~ddellacos@86.106.143.111) (Ping timeout: 246 seconds)
2021-05-13 12:57:12 <int-e> It's sad. I'm a user of SafeHaskell (because of lambdabot), but I find it hard to wholeheartedly recommend the practice. One big part of it is that there really isn't much support for it.
2021-05-13 12:57:22 <int-e> For example, consider http://hackage.haskell.org/package/dlist-0.8.0.8/docs/src/Data.DList.html
2021-05-13 12:57:54 × ram19890 quits (~ram@49.205.82.36) (Quit: Konversation terminated!)
2021-05-13 12:58:16 <int-e> That's a module that should be Safe; there's nothing in it to ring any alarm bells. But it provides an IsList instance, and IsList comes from GHC.Exts (and only from there), and GHC.Exts is Unsafe for very good reasons.
2021-05-13 12:58:24 ram19890 joins (~ram@49.205.82.36)
2021-05-13 13:00:05 × berberman_ quits (~berberman@unaffiliated/berberman) (Quit: ZNC 1.8.2 - https://znc.in)
2021-05-13 13:00:29 berberman joins (~berberman@unaffiliated/berberman)
2021-05-13 13:00:51 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
2021-05-13 13:01:36 <xenon-> int-e.. I see. still seems like a good idea to try to use it whenever we can, instead of giving up. IsList issue may be fixed in the future
2021-05-13 13:02:02 gemmaro joins (~Thunderbi@240f:74:d1f0:1:1bf:3730:3a54:b192)
2021-05-13 13:05:21 <romesrf> can someone tell me how this syntax is called so i can search for it ? https://paste.tomsmeding.com/Zekc0aFr ty
2021-05-13 13:05:37 <romesrf> the " | " and function declaration without the " = "
2021-05-13 13:06:14 <romesrf> definition*
2021-05-13 13:06:14 carlomagno joins (~cararell@148.87.23.8)
2021-05-13 13:06:24 <xenon-> | are guards, but I've never seen <- being used with them
2021-05-13 13:06:36 <romesrf> i got it from http://okmij.org/ftp/papers/LogicT.pdf
2021-05-13 13:07:24 <romesrf> (section 7. A Larger Example: Tic Tac Toe)
2021-05-13 13:07:31 <int-e> > let f x xs | Just i <- elemIndex x xs = i | otherwise = -1 in f 3 [1..3]
2021-05-13 13:07:33 <lambdabot> 2
2021-05-13 13:07:52 mrchampion joins (~mrchampio@206.186.171.254)
2021-05-13 13:08:06 <int-e> romesrf: it's a "pattern guard", it does pattern matching
2021-05-13 13:08:49 <ndn76kxuwwy2848s> ^ https://wiki.haskell.org/Pattern_guard
2021-05-13 13:08:53 <int-e> > let twice x | x <- 2*x = x in map twice [0..3] -- it can be abused in funny ways
2021-05-13 13:08:55 <lambdabot> [0,2,4,6]
2021-05-13 13:09:02 <romesrf> thank you int-e ndn76kxuwwy2848s :)
2021-05-13 13:10:14 <romesrf> wow nice

All times are in UTC.