Logs: freenode/#haskell
| 2021-03-28 17:03:02 | × | tpefreedom quits (~tsomers@184-157-240-110.dyn.centurytel.net) (Quit: Leaving) |
| 2021-03-28 17:05:32 | × | Lycurgus quits (~niemand@98.4.120.166) (Quit: Exeunt) |
| 2021-03-28 17:05:47 | → | ixlun joins (~matthew@109.249.184.133) |
| 2021-03-28 17:05:48 | → | madjestic joins (~Android@86-88-72-244.fixed.kpn.net) |
| 2021-03-28 17:06:17 | → | AkechiShiro joins (~AkechiShi@2a01:e0a:5f9:9681:1473:3dff:fe42:56a9) |
| 2021-03-28 17:09:18 | × | madjest39 quits (~Android@77-63-117-209.mobile.kpn.net) (Ping timeout: 240 seconds) |
| 2021-03-28 17:09:43 | × | Tene_ quits (~tene@mail.digitalkingdom.org) (Ping timeout: 276 seconds) |
| 2021-03-28 17:09:55 | → | mollberg joins (~mollberg@78-69-80-125-no85.tbcn.telia.com) |
| 2021-03-28 17:10:01 | × | ByronJohnson quits (~bairyn@unaffiliated/bob0) (Ping timeout: 260 seconds) |
| 2021-03-28 17:10:26 | → | Vadrigar_ joins (~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) |
| 2021-03-28 17:14:46 | × | Vadrigar_ quits (~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds) |
| 2021-03-28 17:14:51 | → | ahri joins (~ahri@178.209.40.84) |
| 2021-03-28 17:15:53 | → | Tene joins (~tene@mail.digitalkingdom.org) |
| 2021-03-28 17:15:53 | × | Tene quits (~tene@mail.digitalkingdom.org) (Changing host) |
| 2021-03-28 17:15:53 | → | Tene joins (~tene@poipu/supporter/slacker/tene) |
| 2021-03-28 17:16:21 | → | ByronJohnson joins (~bairyn@unaffiliated/bob0) |
| 2021-03-28 17:16:22 | → | supercoven_ joins (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi) |
| 2021-03-28 17:19:26 | × | supercoven quits (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi) (Ping timeout: 240 seconds) |
| 2021-03-28 17:23:57 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 2021-03-28 17:24:05 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:6df1:6df7:a151:690b) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2021-03-28 17:25:38 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 2021-03-28 17:25:58 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr) |
| 2021-03-28 17:27:55 | × | jacks2 quits (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout)) |
| 2021-03-28 17:28:48 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:6df1:6df7:a151:690b) |
| 2021-03-28 17:32:02 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-03-28 17:32:38 | × | plutoniix quits (~q@node-ugt.pool-125-24.dynamic.totinternet.net) (Ping timeout: 240 seconds) |
| 2021-03-28 17:33:36 | × | Zone77xx quits (Zone77xx@gateway/vpn/privateinternetaccess/zone77xx) (Remote host closed the connection) |
| 2021-03-28 17:33:48 | → | Vadrigar_ joins (~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) |
| 2021-03-28 17:34:06 | × | leonardys quits (~leonard@118.136.35.158) (Quit: WeeChat 3.1) |
| 2021-03-28 17:35:56 | <maerwald> | does anything speak against using getFileSystemEncoding with unsafePerformIO? Specifically while doing: fromByteString :: ByteString -> FilePath |
| 2021-03-28 17:37:26 | × | coot quits (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 2021-03-28 17:38:45 | <maerwald> | I'm starting to think that system calls on files should not just return the ByteString, but also the locale at the time of the call |
| 2021-03-28 17:39:20 | <maerwald> | well, not system calls, but where haskell runs them |
| 2021-03-28 17:39:47 | <hpc> | funny enough, getFileSystemEncoding is already defined in terms of unsafePerformIO |
| 2021-03-28 17:40:04 | <ski> | @hoogle getFileSystemEncoding |
| 2021-03-28 17:40:05 | <lambdabot> | GHC.IO.Encoding getFileSystemEncoding :: IO TextEncoding |
| 2021-03-28 17:40:05 | <lambdabot> | System.Directory.Internal.Prelude getFileSystemEncoding :: IO TextEncoding |
| 2021-03-28 17:40:32 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-03-28 17:40:36 | <hpc> | it looks like if you never call setFileSystemEncoding, it's completely safe to unsafePerformIO |
| 2021-03-28 17:41:02 | <[exa]> | it's just setting/getting a global variable right? |
| 2021-03-28 17:41:13 | <[exa]> | "global" "variable" in haskell sense |
| 2021-03-28 17:41:33 | <hpc> | internally it uses a mutable global variable |
| 2021-03-28 17:41:34 | <hpc> | yeah |
| 2021-03-28 17:41:34 | × | rajivr quits (uid269651@gateway/web/irccloud.com/x-xwsvhleeocbenfhu) (Quit: Connection closed for inactivity) |
| 2021-03-28 17:41:39 | <hpc> | an IORef |
| 2021-03-28 17:41:42 | <ski> | oh, it's a process-extent `IORef', inside ? |
| 2021-03-28 17:41:46 | <ski> | ok |
| 2021-03-28 17:43:00 | <maerwald> | hpc: which basically means "the locale at the time the process was started" |
| 2021-03-28 17:43:08 | <ski> | Mercury has a notion of pure,semipure, and impure predicates (and functions) (in addition to the "standard" way of doing I/O, which is threading around `io.world' uniquely through the program, similar to how Clean does it) |
| 2021-03-28 17:43:11 | <maerwald> | is that good enough? |
| 2021-03-28 17:43:16 | ← | jakalx parts (~jakalx@base.jakalx.net) ("Error from remote client") |
| 2021-03-28 17:43:38 | <hpc> | worse, the locale at the time of the first time you evaluate something that executes that initialization |
| 2021-03-28 17:43:51 | <ski> | impure ones need to be performed in the order written. semipure ones can be permuted amongst each other, but not commuted past an impure one |
| 2021-03-28 17:43:54 | → | Mrbuck joins (~Mrbuck@gateway/tor-sasl/mrbuck) |
| 2021-03-28 17:44:08 | <geekosaur> | which misses that the filesystem may have its own encoding… |
| 2021-03-28 17:44:12 | → | dexter joins (dexter@2a01:7e00::f03c:91ff:fe86:59ec) |
| 2021-03-28 17:44:23 | <geekosaur> | (or none, on POSIX) |
| 2021-03-28 17:44:25 | <maerwald> | geekosaur: there's no such thing |
| 2021-03-28 17:44:28 | <maerwald> | right |
| 2021-03-28 17:44:37 | <maerwald> | so you can encode whatever, regardless of locale |
| 2021-03-28 17:44:47 | <maerwald> | then you can bruteforce your way through it |
| 2021-03-28 17:45:01 | <ski> | @wiki Top level mutable state |
| 2021-03-28 17:45:01 | → | ezrakilty joins (~ezrakilty@97-113-58-224.tukw.qwest.net) |
| 2021-03-28 17:45:02 | <lambdabot> | https://wiki.haskell.org/Top_level_mutable_state |
| 2021-03-28 17:45:02 | → | DTZUZU joins (~DTZUZO@205.ip-149-56-132.net) |
| 2021-03-28 17:46:08 | dexter | is now known as dexterfoo |
| 2021-03-28 17:46:20 | <maerwald> | hpc: well... when using getFileSystemEncoding at the "call site" of the syscalls kinda makes more sense then |
| 2021-03-28 17:47:04 | <maerwald> | but it returns the same thing regardless of environment unless setFileSystemEncoding is used? |
| 2021-03-28 17:47:12 | × | Mrbuck quits (~Mrbuck@gateway/tor-sasl/mrbuck) (Client Quit) |
| 2021-03-28 17:47:54 | × | DTZUZU_ quits (~DTZUZO@207.81.119.43) (Ping timeout: 268 seconds) |
| 2021-03-28 17:48:42 | <hpc> | GHC.IO.Encoding.Iconv.localeEncodingName seems to be the initial value, whatever that is |
| 2021-03-28 17:50:13 | <hpc> | looks like a foreign import, so no clue what it does |
| 2021-03-28 17:50:22 | <hpc> | presumably whatever iconv does |
| 2021-03-28 17:51:03 | × | Vadrigar_ quits (~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) (Ping timeout: 246 seconds) |
| 2021-03-28 17:54:24 | <maerwald> | I only see these choices: 1. assume UTF8, 2. utilize getFileSystemEncoding, 3. brute-force through encodings? |
| 2021-03-28 17:55:43 | <maerwald> | or 4: foo :: ByteString -> Encoding -> String -- only that makes no sense on windows |
| 2021-03-28 17:56:11 | × | hiroaki quits (~hiroaki@2a02:8108:8c40:2bb8:48b8:55e3:ebc5:16b6) (Remote host closed the connection) |
| 2021-03-28 17:56:46 | × | ixlun quits (~matthew@109.249.184.133) (Ping timeout: 240 seconds) |
| 2021-03-28 17:56:52 | → | hiroaki joins (~hiroaki@2a02:8108:8c40:2bb8:35c5:fb8d:f07:96c1) |
| 2021-03-28 17:57:07 | × | dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection) |
| 2021-03-28 17:58:44 | <edwardk> | mniip: i wonder if i could get access to ~# with template haskell reify shenanigans |
| 2021-03-28 17:58:45 | → | plutoniix joins (~q@ppp-49-237-18-51.revip6.asianet.co.th) |
| 2021-03-28 18:00:04 | → | galapagos joins (~galapagos@117.222.71.68) |
| 2021-03-28 18:00:14 | → | borne joins (~fritjof@200116b8644f3500f7ed9fd86a2491f0.dip.versatel-1u1.de) |
| 2021-03-28 18:00:41 | <edwardk> | Then Y a b c = (# a ~# c | b ~# c #) -- with a _slightly_ evil way to bring the proof into scope, etc. |
| 2021-03-28 18:04:46 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 2021-03-28 18:05:31 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Quit: Lost terminal) |
| 2021-03-28 18:05:58 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2021-03-28 18:06:03 | <mniip> | huh |
| 2021-03-28 18:06:12 | <mniip> | ~# is actually a type and not a constraint |
| 2021-03-28 18:07:16 | × | ddellaco_ quits (~ddellacos@86.106.143.144) (Remote host closed the connection) |
| 2021-03-28 18:08:21 | × | jophish quits (~jophish@li1766-207.members.linode.com) (Quit: WeeChat 3.1) |
| 2021-03-28 18:08:43 | → | ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta) |
| 2021-03-28 18:08:52 | <mniip> | % $(pure <$> tySynD (mkName "E") [] (conT $ mkNameG_tc "ghc-prim" "GHC.Prim" "~#")); |
| 2021-03-28 18:08:52 | <yahb> | mniip: |
| 2021-03-28 18:08:56 | <mniip> | % :k E |
| 2021-03-28 18:08:56 | <yahb> | mniip: k0 -> k1 -> TYPE ('TupleRep '[]) |
| 2021-03-28 18:09:05 | <mniip> | looks like you can |
| 2021-03-28 18:10:34 | <ski> | bah, anyone happen to have a link handy to the "monad tunneling problem" post ? |
| 2021-03-28 18:11:32 | <ski> | mniip : well, that's what i was asking about, before .. |
All times are in UTC.