Logs on 2020-10-18 (freenode/#haskell)
| 00:00:02 | × | Guest11473 quits (~andrea@185.244.214.216) () |
| 00:00:05 | × | DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Ping timeout: 240 seconds) |
| 00:00:57 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 00:04:33 | <Guest36918> | hello |
| 00:05:13 | <ski> | ehlo |
| 00:05:22 | <Guest36918> | i need to change my name |
| 00:05:22 | <Guest36918> | but |
| 00:05:33 | <Guest36918> | was wondering if someone could help me fix a snipper of haskell code |
| 00:05:39 | <Guest36918> | snippet |
| 00:05:40 | <Guest36918> | * |
| 00:05:53 | × | kish quits (~oracle@unaffiliated/oracle) (Ping timeout: 246 seconds) |
| 00:06:24 | <ski> | hard to tell, without seeing it |
| 00:06:37 | <ski> | /nick myNewNickName |
| 00:06:42 | → | kish joins (~oracle@unaffiliated/oracle) |
| 00:06:43 | <ski> | to change your nickname |
| 00:06:46 | Guest36918 | is now known as christo |
| 00:06:51 | <christo> | thx |
| 00:07:03 | <Squarism> | i see here OverlappingInstances and IncoherantInstances are both deprecated here https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html#overlapping-instances |
| 00:07:03 | <christo> | what's the best way to link haskell code? |
| 00:07:08 | <Squarism> | what should one use instead? |
| 00:07:16 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 00:07:27 | <ski> | @where paste |
| 00:07:28 | <lambdabot> | Help us help you: please paste full code, input and/or output at eg https://paste.tomsmeding.com |
| 00:07:40 | <ski> | you could use that ^, christo |
| 00:07:46 | <christo> | thx |
| 00:07:54 | <christo> | basically, i'm writing an infix operator function |
| 00:08:02 | <Squarism> | oh its the pragmas |
| 00:08:02 | <christo> | < i'm a newbie to haskell and experimenting |
| 00:08:20 | <christo> | and i'm getting a type error with floor (n1 / n2) |
| 00:08:25 | <christo> | i'll paste full code now |
| 00:08:33 | <christo> | it's for a custom modulo operator |
| 00:09:15 | <koz_> | ski: Didn't know we had this as a pastebin, nice. |
| 00:09:32 | × | djellemah quits (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54) (Ping timeout: 260 seconds) |
| 00:09:46 | <christo> | https://paste.tomsmeding.com/QutEatIe#file-1 |
| 00:10:26 | <christo> | • No instance for (RealFrac Integer) arising from a use of ‘floor’ |
| 00:10:39 | <christo> | haskell language server error i get in vs-code |
| 00:11:12 | <koz_> | :t (/) |
| 00:11:14 | <lambdabot> | Fractional a => a -> a -> a |
| 00:11:17 | <koz_> | There's your issue. |
| 00:11:21 | <koz_> | I assume you wanted this? |
| 00:11:22 | <koz_> | :t div |
| 00:11:24 | <lambdabot> | Integral a => a -> a -> a |
| 00:12:43 | <Squarism> | gah.. im on ghc865 but it still tells me to use deprecated IncoherentInstances |
| 00:12:49 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 00:12:58 | <koz_> | Squarism: What're you trying to write? |
| 00:12:58 | <christo> | so i do. round (n1 (div) n2) ? |
| 00:13:19 | <Squarism> | koz instances that "overlap" =D |
| 00:13:21 | <koz_> | christo: If you wanna use div infix, you wanna write it as n1 `div` n2 |
| 00:13:32 | <koz_> | Squarism: Yes. In other news, cream puffs are puffs which are creamy. |
| 00:13:39 | <koz_> | And regular expressions are expressions which are regular. |
| 00:14:10 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 00:14:15 | <christo> | @koz_ still not working it seems |
| 00:14:15 | <lambdabot> | Unknown command, try @list |
| 00:14:18 | <Squarism> | im just confused i got the error message instructing me to use a deprecated extension |
| 00:14:26 | <ski> | Squarism : `/' doesn't work on `Integer's. `/' is for fractional division. either convert your `Integer's to some fractional number type, or else use integral division (`div') |
| 00:14:29 | <koz_> | christo: Paste the code again? |
| 00:14:36 | <ski> | er, sorry |
| 00:14:39 | <ski> | christo ^ |
| 00:14:47 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
| 00:14:52 | <christo> | • No instance for (RealFrac Integer) arising from a use of ‘floor’ |
| 00:14:55 | <christo> | ooops sorry |
| 00:15:15 | <koz_> | christo: You don't need floor in this case then. |
| 00:15:18 | <koz_> | :t floor |
| 00:15:20 | <lambdabot> | (RealFrac a, Integral b) => a -> b |
| 00:15:28 | <Axman6> | floor also doesn['t wokr on Integers |
| 00:15:30 | → | conal joins (~conal@64.71.133.70) |
| 00:15:32 | <christo> | https://paste.tomsmeding.com/QutEatIe#file-1 |
| 00:15:40 | <koz_> | You don't have a RealFrac anything, since if you use div, you don't get a fractional thing back. |
| 00:15:42 | <ski> | christo : `fromInteger' can be used to convert from `Integer' to another numeric type |
| 00:15:51 | <Axman6> | > 13 `div` 3 |
| 00:15:53 | <lambdabot> | 4 |
| 00:15:55 | × | elliott_ quits (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Read error: Connection reset by peer) |
| 00:16:02 | <christo> | :t fromInteger |
| 00:16:04 | <lambdabot> | Num a => Integer -> a |
| 00:16:07 | × | ephemera_ quits (~E@122.34.1.187) (Remote host closed the connection) |
| 00:16:28 | → | elliott_ joins (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) |
| 00:16:35 | <ski> | (e.g., you could convert to `Rational' ..) |
| 00:16:36 | <christo> | > fromInteger 2 |
| 00:16:38 | <lambdabot> | 2 |
| 00:16:42 | <christo> | > fromInteger 2.0 |
| 00:16:44 | <lambdabot> | error: |
| 00:16:44 | <lambdabot> | • Could not deduce (Fractional Integer) |
| 00:16:44 | <lambdabot> | arising from the literal ‘2.0’ |
| 00:16:59 | × | untseac quits (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Remote host closed the connection) |
| 00:17:01 | <ski> | > floor (fromInteger 18 / fromInteger 7) |
| 00:17:04 | <lambdabot> | 2 |
| 00:17:23 | → | ephemera_ joins (~E@122.34.1.187) |
| 00:17:24 | <ski> | > 18 - 7 * floor (fromInteger 18 / fromInteger 7) |
| 00:17:26 | <lambdabot> | 4 |
| 00:17:28 | → | untseac joins (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) |
| 00:17:41 | <ski> | > 18 - 7 * floor (fromInteger 18 / fromInteger 7 :: Rational) |
| 00:17:43 | <lambdabot> | 4 |
| 00:18:17 | <christo> | :t (/) |
| 00:18:17 | <ski> | (without the type ascription, it'll default to `Double', iirc) |
| 00:18:18 | <lambdabot> | Fractional a => a -> a -> a |
| 00:18:50 | <christo> | what does :: Rational do? some sort of type Cast or ? |
| 00:19:54 | <Axman6> | :t \x -> fromInteger x |
| 00:19:56 | <lambdabot> | Num a => Integer -> a |
| 00:20:12 | <Axman6> | :t \x -> (fromInteger x :: Rational) |
| 00:20:13 | <lambdabot> | Integer -> Rational |
| 00:20:34 | <Axman6> | it's picking the type to use, there is no casting in Haskell* |
| 00:22:03 | <christo> | ahh ok |
| 00:22:12 | <christo> | so is Num like a generic or something? |
| 00:22:23 | <koz_> | christo: Num is kind of like an interface. |
| 00:22:35 | <koz_> | Something that is an instance of Num is 'kinda sorta number-like' in some sense. |
| 00:22:56 | → | olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber) |
| 00:22:59 | <Axman6> | @src Num |
| 00:22:59 | <lambdabot> | class Num a where |
| 00:22:59 | <lambdabot> | (+), (-), (*) :: a -> a -> a |
| 00:22:59 | <lambdabot> | negate, abs, signum :: a -> a |
| 00:22:59 | <lambdabot> | fromInteger :: Integer -> a |
| 00:23:02 | <christo> | Hmm, as a haskell beginner may be a bit beyond my head |
| 00:23:17 | <koz_> | christo: Type classes are a fairly important concept, even at beginner level. |
| 00:23:59 | <koz_> | (in terms of how to use their instances, at least) |
| 00:24:04 | <Axman6> | Num is the class of types which can do some number like things, such as addition, subtradction, multiplication this allows you to use the usual 1 + 2 * 3 syntax for your own types |
| 00:24:45 | <Axman6> | @let data MyNum = Val Integer | Add MyNum My |
| 00:24:46 | <lambdabot> | .L.hs:159:24: error: |
| 00:24:47 | <lambdabot> | Not in scope: type constructor or class ‘My’ |
| 00:24:47 | <lambdabot> | Perhaps you meant ‘Mu’ (imported from Lambdabot.Plugin.Haskell.Eval.Trus... |
| 00:24:57 | <Axman6> | @let data MyNum = Val Integer | Add MyNum MyNum | |
| 00:24:58 | <lambdabot> | Parse failed: Parse error: EOF |
| 00:25:04 | <Axman6> | omg, typing on a couch is ahrd |
| 00:25:15 | <koz_> | Axman6: It's those axe hands. |
| 00:25:18 | <christo> | lol |
| 00:25:27 | <koz_> | Too much couch stuffing everywhere. |
| 00:25:32 | <Axman6> | @let data MyNum = Val Integer | Add MyNum MyNum | Mul MyNum MyNum |
| 00:25:33 | <christo> | btw, my (%) infix operator works now |
| 00:25:34 | <lambdabot> | Defined. |
| 00:25:47 | <christo> | but need |
| 00:25:55 | <christo> | maybe look into type classes then |
| 00:25:55 | × | CodeWeaver quits (49eff865@c-73-239-248-101.hsd1.wa.comcast.net) (Remote host closed the connection) |
| 00:25:56 | <Axman6> | koz_: congrats on your sane election btw |
| 00:26:10 | <koz_> | Axman6: Thanks! I gotta say I wasn't too surprised by the outcome. |
| 00:26:54 | <Axman6> | @let instance Num MyNum where a + b = Add a b; a * b = Mul a b; fromInteger i = Val i |
| 00:26:55 | <lambdabot> | .L.hs:162:10: error: [-Wmissing-methods, -Werror=missing-methods] |
| 00:26:55 | <lambdabot> | • No explicit implementation for |
| 00:26:55 | <lambdabot> | ‘abs’, ‘signum’, and (either ‘negate’ or ‘-’) |
| 00:27:17 | <Axman6> | @let instance Show MyNum |
| 00:27:19 | <lambdabot> | .L.hs:162:10: error: [-Wmissing-methods, -Werror=missing-methods] |
| 00:27:19 | <lambdabot> | • No explicit implementation for |
| 00:27:19 | <lambdabot> | either ‘showsPrec’ or ‘show’ |
| 00:27:30 | <Axman6> | @let deriving instance Show MyNum |
| 00:27:31 | <lambdabot> | Defined. |
| 00:27:46 | <Axman6> | % 1 + 2 * 3 :: MyNum |
| 00:27:46 | <yahb> | Axman6: ; <interactive>:62:14: error: Not in scope: type constructor or class `MyNum' |
| 00:28:04 | <ski> | > 1 + 2 * 3 :: MyNum |
| 00:28:05 | <Axman6> | you're the worst yahb |
| 00:28:07 | <lambdabot> | error: |
| 00:28:07 | <lambdabot> | • No instance for (Num MyNum) arising from a use of ‘+’ |
| 00:28:07 | <lambdabot> | • In the expression: 1 + 2 * 3 :: MyNum |
| 00:29:02 | <Axman6> | koz_: we had a similar result over the pond in our territory election, so it was as good night |
| 00:29:18 | <koz_> | Axman6: In that case, congratulations! |
| 00:30:09 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 00:31:19 | <koz_> | Would someone be able to guide me in creating Nix environments wherein I can build _static_ Haskell applications for 32-bit x86? |
| 00:31:40 | <koz_> | So like, a chonky binary I can copy over to another machine and just run. |
| 00:33:09 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 00:35:01 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 244 seconds) |
| 00:37:56 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds) |
| 00:38:35 | × | Guy quits (4c68d95d@c-76-104-217-93.hsd1.wa.comcast.net) (Remote host closed the connection) |
| 00:39:29 | → | proofofme joins (~proofofme@184-96-74-65.hlrn.qwest.net) |
| 00:39:53 | <jared-w> | nix-shell -p cabal-install ghc && cabal build `--enable-executable-static --ghc-options=-split-sections`? |
| 00:40:03 | <jared-w> | (if you're on nixos the answer changes substantially) |
| 00:40:22 | <koz_> | jared-w: I am not on NixOS. So do I not need like, a configuration file for Nix or anything? |
| 00:40:31 | <koz_> | And won't this build a 64-bit binary? |
| 00:40:53 | <jared-w> | Not that I'm aware of. Ah, true. If you're *on* a x64 system and wanting to cross compile to x86 that throws a wrench into the works |
| 00:41:08 | <koz_> | jared-w: That was my primary question really. |
| 00:41:51 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 00:42:10 | <jared-w> | Yeah, makes sense. If you're not on nixos, cabal build --enable-executable-static more or less "just works" now. Cross compiling onto x32 can be a bit painful depending on what and where. I haven't done it, personally, so I can't immediately point you to any solution with experience |
| 00:42:35 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 00:42:49 | <koz_> | OK, thanks. |
| 00:44:08 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:fce4:f626:e7a:99f3) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 00:44:10 | <jared-w> | https://nixos.wiki/wiki/Packaging/32bit_Applications this is really the first thing that I can find. So it seems "possible" and maybe even "sorta easy", but given that you're not on nixos, some of the cross compiling stuff doesn't always apply, which complicates things |
| 00:45:34 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 00:45:36 | <koz_> | I figured it _should_ be possible, but I dunno much about Nix. Oh well, thanks anyway. |
| 00:46:06 | × | daenth quits (~daenth@136.36.157.210) (Quit: ZNC 1.7.5 - https://znc.in) |
| 00:47:09 | → | conal joins (~conal@64.71.133.70) |
| 00:47:30 | × | conal quits (~conal@64.71.133.70) (Client Quit) |
| 00:47:54 | → | daenth joins (~daenth@136.36.157.210) |
| 00:47:55 | → | conal joins (~conal@64.71.133.70) |
| 00:48:17 | × | conal quits (~conal@64.71.133.70) (Client Quit) |
| 00:49:04 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:fce4:f626:e7a:99f3) |
| 00:49:45 | → | Tops2 joins (~Tobias@dyndsl-095-033-019-139.ewe-ip-backbone.de) |
| 00:52:25 | → | mirrorbird joins (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) |
| 00:52:25 | × | fragamus quits (~michaelgo@73.93.155.52) (Ping timeout: 264 seconds) |
| 00:52:32 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds) |
| 00:53:50 | × | elliott_ quits (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Read error: Connection reset by peer) |
| 00:57:04 | → | bvalek2 joins (~bvalek2@217.146.82.202) |
| 00:58:52 | × | elliott__ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 258 seconds) |
| 00:58:52 | → | fragamus joins (~michaelgo@73.93.152.144) |
| 00:59:14 | → | elliott_ joins (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) |
| 01:02:39 | → | Jonkimi727406120 joins (~Jonkimi@223.213.79.20) |
| 01:04:25 | × | Gurkenglas_ quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 264 seconds) |
| 01:07:43 | × | perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 2.9) |
| 01:07:44 | × | Jonkimi727406120 quits (~Jonkimi@223.213.79.20) (Ping timeout: 272 seconds) |
| 01:08:22 | → | ensyde joins (~ensyde@2600:1702:2e30:1a40:e1f9:6cbb:4eca:3c84) |
| 01:10:25 | × | abhixec quits (~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 01:11:50 | → | ryjm_matrix joins (~matrixirc@2600:4040:a009:6100:3adc:615b:70b5:b0c) |
| 01:14:33 | × | mirrorbird quits (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) (Quit: Leaving) |
| 01:15:16 | <koz_> | jared-w: I'm trying to follow this: https://github.com/Gabriel439/haskell-nix/tree/master/project0 , but I keep getting 'error: cannot auto-call a function that has an argument without a default value ('mkDerivation')' for (something near enough a carbon copy of) project0.nix when I run 'nix-build': error: cannot auto-call a function that has an argument without a default value ('mkDerivation') |
| 01:15:25 | <koz_> | Whoops, two pastes of error message. |
| 01:15:52 | <koz_> | default.nix: http://ix.io/2B5a |
| 01:16:07 | <koz_> | What am I missing? |
| 01:17:05 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 01:19:36 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 01:20:19 | × | karanlikmadde quits (~karanlikm@2a01:c23:641c:2200:c88d:7d7e:c962:437f) (Quit: karanlikmadde) |
| 01:20:58 | × | jumper149 quits (~jumper149@ip185225.wh.uni-hannover.de) (Quit: WeeChat 2.9) |
| 01:21:28 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 01:23:47 | → | elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) |
| 01:24:12 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds) |
| 01:25:10 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:fce4:f626:e7a:99f3) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:25:20 | <koz_> | OK, never mind, see it now. |
| 01:26:26 | × | untseac quits (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Remote host closed the connection) |
| 01:29:38 | <Squarism> | im playing with Generics here. I tried : from ([1,2,3,4] :: [Int]). I was a bit surprised the expression resulted in this : https://paste.ofcode.org/AXUFkv4hcGLmHQQbMvmUgb |
| 01:32:04 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 246 seconds) |
| 01:32:24 | <Squarism> | why isnt [2,3,4] expanded with a product type? is it lazy evaluation at play? |
| 01:32:58 | × | m0rphism quits (~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de) (Ping timeout: 260 seconds) |
| 01:35:33 | <proofofme> | name :: Word8 -> Parser Name This type declaration is in Cassava Parse docs: https://hackage.haskell.org/package/cassava-0.5.2.0/docs/Data-Csv-Parser.html Is the `Parser` a monad? |
| 01:35:53 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 01:35:53 | × | minne quits (~minne@4e69b241.skybroadband.com) (Ping timeout: 260 seconds) |
| 01:35:58 | <ghoulguy> | Squarism: Generics affects a single instance of a datatype |
| 01:36:01 | <koz_> | proofofme: Yes. |
| 01:36:05 | <koz_> | https://hackage.haskell.org/package/attoparsec-0.13.2.3/docs/Data-Attoparsec-Internal-Types.html#t:Parser |
| 01:36:11 | <ghoulguy> | Squarism: It doesn't recursively convert between the generic and normal representation |
| 01:36:57 | hackage | Z-IO 0.1.6.1 - Simple and high performance IO toolkit for Haskell https://hackage.haskell.org/package/Z-IO-0.1.6.1 (winterland) |
| 01:41:11 | × | ensyde quits (~ensyde@2600:1702:2e30:1a40:e1f9:6cbb:4eca:3c84) (Ping timeout: 272 seconds) |
| 01:41:57 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 01:42:20 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 01:42:45 | <koz_> | OK, I think I have nix-build firing, finally. |
| 01:42:46 | → | rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) |
| 01:43:34 | × | dirediresalt quits (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection) |
| 01:43:58 | → | dirediresalt joins (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) |
| 01:44:32 | <Squarism> | ghoulguy, okok. |
| 01:45:03 | <Squarism> | ghoulguy, i had a question for you regarding our latest talk about addressing a datastructure using string like paths. |
| 01:45:51 | → | djellemah joins (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54) |
| 01:46:36 | → | ystael joins (~ystael@209.6.50.55) |
| 01:46:46 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 01:47:30 | <Squarism> | ghoulguy, could you see how the approach you elaborated, on using generics, could be extended to "multi level" addressing? |
| 01:48:26 | <proofofme> | is it possible to use cassava to parse just a String and not from a file? |
| 01:48:44 | <koz_> | proofofme: Yes. You need a ByteString, but you can use the 'decode' function. |
| 01:49:49 | <proofofme> | ok I will start there |
| 01:51:55 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 01:55:05 | → | Guy joins (4c68d95d@c-76-104-217-93.hsd1.wa.comcast.net) |
| 01:56:03 | <proofofme> | Prelude Data.Text> decode("a,b,c") |
| 01:56:20 | <proofofme> | Variable not in scope: decode :: [Char] -> t |
| 01:56:44 | <koz_> | proofofme: Cassava's decode. |
| 01:56:53 | <koz_> | And you don't call functions that way in Haskell. |
| 01:57:36 | <Guy> | yeah you call em like this |
| 01:57:53 | <Guy> | Function: (CALL) => [args] |
| 01:58:17 | <koz_> | Guy: ? |
| 01:58:22 | <koz_> | I don't follow. |
| 01:58:30 | <Guy> | a real mans way of calling functions |
| 01:58:52 | <koz_> | Guy: What has this got to do with Haskell? |
| 01:59:16 | <Guy> | its how functions will be called in the new Haskell update |
| 02:00:30 | → | da39a3ee5e6b4b0d joins (~textual@n11211935170.netvigator.com) |
| 02:00:57 | × | xff0x quits (~fox@2001:1a81:53c5:c200:3161:a29a:3186:4358) (Ping timeout: 260 seconds) |
| 02:01:21 | → | texasmynsted joins (688c344b@104.140.52.75) |
| 02:01:38 | <texasmynsted> | Hello. |
| 02:01:43 | <texasmynsted> | What do you think would be a nice clean way to deal with some configuration data that would be a list of thousands of tuple/pairs? Considering: Dhall, Data.ini, CSV, other. . . |
| 02:02:17 | <texasmynsted> | maybe just a giant List in its own module? . . . |
| 02:02:23 | <infinisil> | texasmynsted: What kind of configuration has thousands of tuples? |
| 02:02:37 | <texasmynsted> | URL redirects |
| 02:02:50 | <texasmynsted> | Like thousands of pairs |
| 02:02:52 | → | xff0x joins (~fox@2001:1a81:53f8:9f00:188d:8bae:4800:ec7f) |
| 02:02:53 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 258 seconds) |
| 02:03:16 | <texasmynsted> | (badUrl, goodUrl) |
| 02:03:38 | <infinisil> | Hm I see |
| 02:03:44 | <texasmynsted> | [(badUrl, goodUrl), (badUrl, goodUrl)...] |
| 02:04:06 | <infinisil> | A list in a submodule wouldn't be configurable though |
| 02:04:11 | <infinisil> | s/submodule/module |
| 02:04:37 | <infinisil> | Or should it just be non-configurable static data? |
| 02:04:58 | <texasmynsted> | You can imagine that the person doing the configuration is a haskell programmer and would re-compile anyway |
| 02:05:10 | <texasmynsted> | non-configurable static data. |
| 02:05:23 | × | Guy quits (4c68d95d@c-76-104-217-93.hsd1.wa.comcast.net) (Remote host closed the connection) |
| 02:06:29 | <texasmynsted> | I am thinking maybe Dhall, but maybe simply because it is interesting. It might be way overkill. |
| 02:07:11 | <infinisil> | That does sound overkill |
| 02:07:18 | <texasmynsted> | It is so easy to make things too complicated. |
| 02:08:53 | <infinisil> | I'd probably go for a simple "<badurl> <goodurl>"-per-line format |
| 02:09:14 | <infinisil> | And either access it with data-files |
| 02:09:20 | <infinisil> | Or read it in at compile time with TH |
| 02:10:44 | <texasmynsted> | TH? |
| 02:11:29 | <dsal> | texasmynsted: sqlite |
| 02:11:55 | <infinisil> | texasmynsted: template haskell |
| 02:12:05 | <infinisil> | E.g. https://hackage.haskell.org/package/include-file |
| 02:12:23 | <texasmynsted> | hm. yes this is sounding better. |
| 02:13:03 | <texasmynsted> | If I do tsv (tab delimited file) that should be super easy to read it, easy to read from text editor, and I could load it as a spreadsheet for maintenance |
| 02:14:51 | <texasmynsted> | thank you dsal but I think sqlite is more than I need yet also |
| 02:15:47 | → | Stanley00 joins (~stanley00@unaffiliated/stanley00) |
| 02:16:08 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 260 seconds) |
| 02:16:39 | <dsal> | heh, sqlite is a bit less than a spreadsheet. It's easy and pretty good for thousands of pairs of things which might turn into millions of triples of things. I use it when I have tens of things. :) |
| 02:18:00 | <texasmynsted> | okay. |
| 02:20:16 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 02:21:19 | × | theDon quits (~td@muedsl-82-207-238-039.citykom.de) (Ping timeout: 260 seconds) |
| 02:22:52 | → | theDon joins (~td@muedsl-82-207-238-112.citykom.de) |
| 02:25:46 | × | proofofme quits (~proofofme@184-96-74-65.hlrn.qwest.net) (Remote host closed the connection) |
| 02:26:05 | → | proofofme joins (~proofofme@184-96-74-65.hlrn.qwest.net) |
| 02:28:43 | → | abhixec joins (~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) |
| 02:30:19 | lagothrix | is now known as Guest49750 |
| 02:30:19 | × | Guest49750 quits (~lagothrix@unaffiliated/lagothrix) (Killed (rothfuss.freenode.net (Nickname regained by services))) |
| 02:30:25 | × | justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 240 seconds) |
| 02:30:32 | → | lagothrix joins (~lagothrix@unaffiliated/lagothrix) |
| 02:33:28 | × | ryjm_matrix quits (~matrixirc@2600:4040:a009:6100:3adc:615b:70b5:b0c) (Quit: killed) |
| 02:34:40 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 02:35:24 | → | justanotheruser joins (~justanoth@unaffiliated/justanotheruser) |
| 02:35:28 | oats | is now known as wheats |
| 02:39:16 | → | z0 joins (~z0@bl15-33-197.dsl.telepac.pt) |
| 02:39:33 | z0 | is now known as Guest30638 |
| 02:40:58 | × | jkachmar quits (uid226591@gateway/web/irccloud.com/x-sjqizjclmhyizvlx) (Quit: Connection closed for inactivity) |
| 02:42:15 | → | dmc00 joins (~dmc@unaffiliated/dmc00) |
| 02:43:15 | × | Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
| 02:43:33 | → | Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) |
| 02:44:00 | → | albertus1 joins (~seb@x4db9b903.dyn.telefonica.de) |
| 02:44:37 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 264 seconds) |
| 02:45:26 | × | albertus11 quits (~seb@x4db49541.dyn.telefonica.de) (Ping timeout: 258 seconds) |
| 02:46:02 | × | tabaqui quits (~tabaqui@46.39.45.136) (Ping timeout: 256 seconds) |
| 02:46:46 | × | proofofme quits (~proofofme@184-96-74-65.hlrn.qwest.net) (Remote host closed the connection) |
| 02:47:42 | → | geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) |
| 02:48:27 | hackage | regex-pcre-builtin 0.95.1.3.8.43 - PCRE Backend for "Text.Regex" (regex-base) https://hackage.haskell.org/package/regex-pcre-builtin-0.95.1.3.8.43 (AudreyTang) |
| 02:52:45 | × | Amras quits (~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds) |
| 02:52:51 | wheats | is now known as oats |
| 02:54:39 | × | xff0x quits (~fox@2001:1a81:53f8:9f00:188d:8bae:4800:ec7f) (Ping timeout: 272 seconds) |
| 02:55:06 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 02:55:09 | → | xff0x joins (~fox@2001:1a81:53f8:9f00:5588:893c:8299:71d2) |
| 02:55:43 | × | solonarv quits (~solonarv@anancy-651-1-202-101.w109-217.abo.wanadoo.fr) (Ping timeout: 246 seconds) |
| 03:00:01 | × | bvalek2 quits (~bvalek2@217.146.82.202) () |
| 03:00:10 | → | tabaqui joins (~tabaqui@2604:a880:800:c1::21b:3001) |
| 03:00:53 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 03:04:52 | → | christo joins (~chris@81.96.113.213) |
| 03:05:42 | × | djellemah quits (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54) (Ping timeout: 260 seconds) |
| 03:08:40 | <ibloom> | Is there a standard lens such that "use lens" just returns the whole state? |
| 03:10:31 | → | wei2912 joins (~wei2912@unaffiliated/wei2912) |
| 03:10:35 | <koz_> | ibloom: You can just use 'get' then, right? |
| 03:11:21 | <ibloom> | I just want to reuse the same set of functions that use "use" |
| 03:11:52 | <ibloom> | It's a small thing. |
| 03:11:52 | <koz_> | @hoogle use |
| 03:11:53 | <lambdabot> | Control.Lens.Combinators use :: MonadState s m => Getting a s a -> m a |
| 03:11:53 | <lambdabot> | Control.Lens.Getter use :: MonadState s m => Getting a s a -> m a |
| 03:11:53 | <lambdabot> | Distribution.Compat.Lens use :: MonadState s m => Getting a s a -> m a |
| 03:12:24 | → | Licious joins (~Licious@4e69b241.skybroadband.com) |
| 03:12:30 | <koz_> | I think you can use something that turns a function into a Getter, then just pass id to that? |
| 03:13:29 | <ibloom> | Hmmm... |
| 03:13:32 | <koz_> | to. |
| 03:13:36 | <koz_> | So you would do like |
| 03:13:41 | <koz_> | use (to id) |
| 03:14:00 | <ibloom> | Let me see if that typechecks |
| 03:15:28 | × | Sgeo quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer) |
| 03:16:39 | <ibloom> | Not quite |
| 03:16:51 | <koz_> | ibloom: What seems to be the problem? |
| 03:17:01 | <ibloom> | "Could not deduce (Contravariant f) arising from a use of ‘to’" |
| 03:17:32 | <ibloom> | @hoogle to |
| 03:17:33 | <lambdabot> | GHC.Generics to :: Generic a => Rep a x -> a |
| 03:17:33 | <lambdabot> | Control.Lens.Combinators to :: (Profunctor p, Contravariant f) => (s -> a) -> Optic' p f s a |
| 03:17:33 | <lambdabot> | Control.Lens.Getter to :: (Profunctor p, Contravariant f) => (s -> a) -> Optic' p f s a |
| 03:18:09 | <koz_> | Yeah, since I think 'use' can grab a variety of things. |
| 03:18:17 | <koz_> | That's what 'Getting' means in its type. |
| 03:18:24 | <koz_> | So on its own, it doesn't know what you want. |
| 03:18:32 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:c46f:cebb:a37a:3cd) (Ping timeout: 260 seconds) |
| 03:18:34 | <edwardk> | koz: id is usable as the identity lens |
| 03:18:43 | <koz_> | edwardk: Ah, OK. |
| 03:18:45 | <edwardk> | to id = id |
| 03:18:47 | <koz_> | So just 'use id' would work? |
| 03:19:02 | <edwardk> | yeah, or 'get' |
| 03:19:19 | <ibloom> | Aha |
| 03:19:29 | <edwardk> | lens deliberately didn't use 'get/set' and went with 'view/set' to avoid trampling the State 'get' operation's name |
| 03:19:34 | <koz_> | edwardk: I already suggested 'get', but ibloom said that they need something reusable (lol) with 'use'. |
| 03:19:43 | → | Sgeo joins (~Sgeo@ool-18b982ad.dyn.optonline.net) |
| 03:19:44 | <edwardk> | then use id |
| 03:20:16 | <ibloom> | I feel dumb for not trying that. |
| 03:20:29 | <ibloom> | Works perfectly. |
| 03:20:57 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 03:21:22 | <ibloom> | Thank you. |
| 03:21:31 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
| 03:23:45 | × | elliott__ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 240 seconds) |
| 03:26:01 | × | Jesin quits (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Ping timeout: 264 seconds) |
| 03:26:09 | × | alp_ quits (~alp@2a01:e0a:58b:4920:8ddf:af03:d4f2:1b4c) (Remote host closed the connection) |
| 03:26:26 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 03:29:23 | → | conal joins (~conal@64.71.133.70) |
| 03:30:42 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:555b:b346:7063:867) |
| 03:31:41 | ← | no-n parts (sid257727@gateway/web/irccloud.com/x-tblqoxnndlzcotma) () |
| 03:33:07 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 03:37:48 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
| 03:39:06 | × | geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 272 seconds) |
| 03:39:27 | × | tabaqui quits (~tabaqui@2604:a880:800:c1::21b:3001) (Quit: WeeChat 2.9) |
| 03:45:02 | <texasmynsted> | I have not used Template Haskell. What do you recommend I read to quickly get a feel for how I could use it to consume a TSV file? |
| 03:45:49 | <koz_> | texasmynsted: Why TH? |
| 03:46:11 | <koz_> | Are you trying to mimic C's #include or something? |
| 03:46:23 | <texasmynsted> | Somebody recommended it earlier as a nice way to include the TSV file content in my project. |
| 03:47:00 | <texasmynsted> | The file is static content. It would be used to load many lines of URL pairs |
| 03:47:16 | × | Sheilong quits (uid293653@gateway/web/irccloud.com/x-uldwzywipdbtosxt) () |
| 03:47:42 | <texasmynsted> | for a URL re-direction process. Adding new redirects requires a re-compile. |
| 03:48:11 | × | urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna) |
| 03:48:42 | <texasmynsted> | Though it seems like it should be super easy to just read all the lines of the TSV to a list then split the text of each line to pairs |
| 03:48:53 | texasmynsted | shrug |
| 03:49:08 | <texasmynsted> | It also seems like this is a "solved problem" |
| 03:49:10 | <koz_> | You probably need an intro to TH. https://wiki.haskell.org/Template_Haskell |
| 03:49:35 | → | drbean joins (~drbean@TC210-63-209-65.static.apol.com.tw) |
| 03:51:34 | → | mirrorbird joins (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) |
| 03:54:27 | <texasmynsted> | thank you. I will go through the tutorials |
| 03:54:59 | <texasmynsted> | Is it worth it? Like what does TH bring to this simple problem? |
| 03:56:39 | → | Rcsprinter joins (~Rcsprinte@192.30.89.67) |
| 03:59:44 | <Cale> | texasmynsted: Literally only the ability to read the file at compile time and splice in a string literal with its contents. |
| 04:00:20 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 04:01:05 | <Cale> | texasmynsted: You can do something like $(fmap TH.lift (readFile "foo.txt")) and that will behave like a string literal with the contents of foo.txt |
| 04:01:10 | × | Tops2 quits (~Tobias@dyndsl-095-033-019-139.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
| 04:01:22 | × | dirediresalt quits (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection) |
| 04:01:34 | <Cale> | Where TH.lift is the one from Language.Haskell.TH.Syntax |
| 04:01:55 | → | dirediresalt joins (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) |
| 04:02:20 | <Cale> | Oh, that readFile might need to be runIO'ed |
| 04:02:25 | <Cale> | yeah |
| 04:02:38 | <Cale> | Forgot that lift produced something in the Q monad |
| 04:03:00 | <Cale> | So, it'd be more like $(runIO (readFile "foo.txt") >>= TH.lift) |
| 04:04:10 | × | texasmynsted quits (688c344b@104.140.52.75) (Remote host closed the connection) |
| 04:05:49 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 04:10:36 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds) |
| 04:14:25 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Remote host closed the connection) |
| 04:14:37 | × | jchia quits (~jchia@58.32.34.43) (Ping timeout: 264 seconds) |
| 04:14:53 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 04:15:09 | × | da39a3ee5e6b4b0d quits (~textual@n11211935170.netvigator.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 04:19:21 | → | ryjm_matrix joins (~matrixirc@pool-74-105-197-68.nwrknj.fios.verizon.net) |
| 04:19:22 | × | Stanley00 quits (~stanley00@unaffiliated/stanley00) (Ping timeout: 246 seconds) |
| 04:19:26 | × | ryjm_matrix quits (~matrixirc@pool-74-105-197-68.nwrknj.fios.verizon.net) (Remote host closed the connection) |
| 04:19:37 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 04:20:57 | hackage | churros 0.1.4.0 - Channel/Arrow based streaming computation library. https://hackage.haskell.org/package/churros-0.1.4.0 (LyndonMaydwell) |
| 04:21:33 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 04:21:35 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 04:26:31 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 04:26:42 | → | Stanley00 joins (~stanley00@unaffiliated/stanley00) |
| 04:29:08 | × | fragamus quits (~michaelgo@73.93.152.144) (Ping timeout: 260 seconds) |
| 04:30:52 | → | fragamus joins (~michaelgo@73.93.153.72) |
| 04:31:19 | → | bitmagie joins (~Thunderbi@200116b806076b00ec17a962c4a08e9f.dip.versatel-1u1.de) |
| 04:31:28 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 260 seconds) |
| 04:31:37 | × | Stanley00 quits (~stanley00@unaffiliated/stanley00) (Ping timeout: 258 seconds) |
| 04:32:17 | × | bitmagie quits (~Thunderbi@200116b806076b00ec17a962c4a08e9f.dip.versatel-1u1.de) (Client Quit) |
| 04:33:57 | × | lucasb quits (uid333435@gateway/web/irccloud.com/x-tkhwugfitzdjoeco) (Quit: Connection closed for inactivity) |
| 04:34:50 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 04:35:28 | × | acarrico quits (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 272 seconds) |
| 04:39:02 | × | HarveyPwca quits (~HarveyPwc@c-98-220-98-201.hsd1.il.comcast.net) (Quit: Leaving) |
| 04:39:31 | → | ss joins (4baca9aa@75.172.169.170) |
| 04:39:40 | → | falafel joins (~falafel@65.155.184.35) |
| 04:41:48 | → | cdepillabout joins (~cdepillab@pl35600.ag1001.nttpc.ne.jp) |
| 04:42:03 | × | irc_user quits (uid423822@gateway/web/irccloud.com/x-jycoetfjhrvokwjj) (Quit: Connection closed for inactivity) |
| 04:43:02 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 04:43:59 | → | Saukk joins (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) |
| 04:46:03 | → | day_ joins (~Unknown@unaffiliated/day) |
| 04:46:57 | × | ss quits (4baca9aa@75.172.169.170) (Remote host closed the connection) |
| 04:47:45 | → | bitmagie joins (~Thunderbi@200116b806076b00ec17a962c4a08e9f.dip.versatel-1u1.de) |
| 04:48:16 | × | bitmagie quits (~Thunderbi@200116b806076b00ec17a962c4a08e9f.dip.versatel-1u1.de) (Client Quit) |
| 04:49:01 | → | bitmagie joins (~Thunderbi@200116b806076b00ec17a962c4a08e9f.dip.versatel-1u1.de) |
| 04:49:17 | × | bitmagie quits (~Thunderbi@200116b806076b00ec17a962c4a08e9f.dip.versatel-1u1.de) (Client Quit) |
| 04:49:24 | × | day quits (~Unknown@unaffiliated/day) (Ping timeout: 272 seconds) |
| 04:49:24 | day_ | is now known as day |
| 04:51:09 | × | abhixec quits (~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) (Quit: leaving) |
| 04:52:10 | → | da39a3ee5e6b4b0d joins (~textual@n11211935170.netvigator.com) |
| 04:53:22 | → | conal_ joins (~conal@66.115.157.118) |
| 04:54:09 | × | conal_ quits (~conal@66.115.157.118) (Client Quit) |
| 04:54:42 | → | jchia joins (~jchia@45.32.62.73) |
| 04:55:43 | × | jchia quits (~jchia@45.32.62.73) (Remote host closed the connection) |
| 04:56:46 | → | jchia joins (~jchia@45.32.62.73) |
| 04:57:47 | × | jchia quits (~jchia@45.32.62.73) (Remote host closed the connection) |
| 04:58:25 | → | jchia joins (~jchia@45.32.62.73) |
| 04:59:27 | × | jchia quits (~jchia@45.32.62.73) (Remote host closed the connection) |
| 05:00:30 | → | jchia joins (~jchia@58.32.66.236) |
| 05:02:47 | × | falafel quits (~falafel@65.155.184.35) (Remote host closed the connection) |
| 05:03:38 | → | falafel joins (~falafel@65.155.184.35) |
| 05:04:47 | × | falafel quits (~falafel@65.155.184.35) (Remote host closed the connection) |
| 05:05:17 | → | falafel joins (~falafel@65.155.184.35) |
| 05:06:03 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 05:07:16 | → | falafel_ joins (~falafel@2600:100e:b102:b424:c9d2:9986:8bf7:dec8) |
| 05:07:16 | → | slack1256 joins (~slack1256@181.203.36.51) |
| 05:07:52 | <slack1256> | On yesod, the hamlet/lucius templates should be declared as data on the data-field or somewhere else? |
| 05:07:55 | × | Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
| 05:08:08 | → | Tario joins (~Tario@201.192.165.173) |
| 05:09:25 | × | falafel quits (~falafel@65.155.184.35) (Ping timeout: 240 seconds) |
| 05:10:43 | → | polyrain joins (~polyrain@130.102.13.188) |
| 05:11:05 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 05:11:10 | × | fragamus quits (~michaelgo@73.93.153.72) (Ping timeout: 246 seconds) |
| 05:12:14 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: leaving) |
| 05:14:02 | → | jsynacek joins (~jsynacek@ip-185-149-130-112.kmenet.cz) |
| 05:21:16 | × | slack1256 quits (~slack1256@181.203.36.51) (Remote host closed the connection) |
| 05:21:29 | × | wei2912 quits (~wei2912@unaffiliated/wei2912) (Remote host closed the connection) |
| 05:22:24 | → | nyd joins (~lpy@unaffiliated/elysian) |
| 05:23:35 | × | cdepillabout quits (~cdepillab@pl35600.ag1001.nttpc.ne.jp) (Ping timeout: 265 seconds) |
| 05:24:40 | → | Jesin joins (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) |
| 05:26:52 | → | Stanley00 joins (~stanley00@unaffiliated/stanley00) |
| 05:35:11 | × | polyrain quits (~polyrain@130.102.13.188) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 05:37:07 | × | Tene quits (~tene@poipu/supporter/slacker/tene) (Remote host closed the connection) |
| 05:37:07 | × | ByronJohnson quits (~bairyn@unaffiliated/bob0) (Remote host closed the connection) |
| 05:37:29 | → | ensyde joins (~ensyde@2600:1702:2e30:1a40:e1f9:6cbb:4eca:3c84) |
| 05:39:37 | → | polyrain joins (~polyrain@130.102.13.188) |
| 05:40:12 | × | polyrain quits (~polyrain@130.102.13.188) (Client Quit) |
| 05:41:25 | mirrorbird | is now known as psut |
| 05:42:02 | × | ensyde quits (~ensyde@2600:1702:2e30:1a40:e1f9:6cbb:4eca:3c84) (Ping timeout: 260 seconds) |
| 05:42:22 | → | polyrain joins (~polyrain@130.102.13.188) |
| 05:42:26 | × | polyrain quits (~polyrain@130.102.13.188) (Client Quit) |
| 05:43:21 | psut | is now known as mirrorbird |
| 05:44:06 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 05:54:03 | × | drbean quits (~drbean@TC210-63-209-65.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin1 - https://znc.in) |
| 05:55:15 | → | polyrain joins (~polyrain@130.102.13.188) |
| 06:00:08 | × | addcninblue quits (~addison@c-73-158-198-149.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
| 06:00:43 | × | Saukk quits (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) (Remote host closed the connection) |
| 06:01:31 | → | drbean joins (~drbean@TC210-63-209-207.static.apol.com.tw) |
| 06:01:34 | × | polyrain quits (~polyrain@130.102.13.188) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 06:02:16 | → | polyrain joins (~polyrain@130.102.13.188) |
| 06:02:27 | × | acidjnk_new2 quits (~acidjnk@p200300d0c72378290964073eddc5c406.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 06:02:44 | × | Rcsprinter quits (~Rcsprinte@192.30.89.67) (Ping timeout: 265 seconds) |
| 06:03:05 | × | polyrain quits (~polyrain@130.102.13.188) (Client Quit) |
| 06:08:17 | × | ephemera_ quits (~E@122.34.1.187) (Remote host closed the connection) |
| 06:09:35 | → | ephemera_ joins (~E@122.34.1.187) |
| 06:11:11 | → | proofofme joins (~proofofme@184-96-74-65.hlrn.qwest.net) |
| 06:12:25 | × | justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 240 seconds) |
| 06:15:06 | <avp> | https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=004c05badb7b60c82c2a112906ceec46 - i have a structure like this and I want to be able to create a Foo. My solutions so far are: store Bar in an Option temporarily (bad because I don't want to force an Option check on Foo) or don't store `shared` in Bar at all (bad because I then have to pass shared to `bar` every time I want |
| 06:15:08 | <avp> | to make a call) |
| 06:16:13 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 06:16:49 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 06:16:50 | <avp> | ...wrong channel, sorry |
| 06:17:58 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 06:19:57 | × | JordiGH quits (jordi@octave/developer/JordiGH) (Ping timeout: 260 seconds) |
| 06:21:18 | → | Deide joins (~Deide@217.155.19.23) |
| 06:24:14 | × | xff0x quits (~fox@2001:1a81:53f8:9f00:5588:893c:8299:71d2) (Ping timeout: 246 seconds) |
| 06:25:20 | → | xff0x joins (~fox@2001:1a81:53f8:9f00:c4e:1637:517e:b477) |
| 06:30:44 | × | ephemera_ quits (~E@122.34.1.187) (Ping timeout: 272 seconds) |
| 06:30:53 | → | ephemera__ joins (~E@122.34.1.187) |
| 06:31:41 | → | cdepillabout joins (~cdepillab@pl35600.ag1001.nttpc.ne.jp) |
| 06:32:51 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 06:36:06 | → | polyrain joins (~polyrain@130.102.13.188) |
| 06:37:33 | × | polyphem quits (~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Quit: WeeChat 2.9) |
| 06:38:42 | → | toorevitimirp joins (~tooreviti@117.182.180.0) |
| 06:39:47 | × | xff0x quits (~fox@2001:1a81:53f8:9f00:c4e:1637:517e:b477) (Ping timeout: 244 seconds) |
| 06:40:31 | → | xff0x joins (~fox@2001:1a81:53f8:9f00:1de1:3046:a1d5:380a) |
| 06:42:19 | × | polyrain quits (~polyrain@130.102.13.188) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 06:44:35 | → | Sanchayan joins (~Sanchayan@136.185.169.16) |
| 06:45:29 | → | polyrain joins (~polyrain@130.102.13.108) |
| 06:47:51 | × | polyrain quits (~polyrain@130.102.13.108) (Client Quit) |
| 06:48:31 | <proofofme> | Still having problems with Cassava for CSV Parsing. I posted the issue in this pastebin: https://pastebin.com/raw/rhQ83Tch Anyone know what I need to do to get this working? |
| 06:52:19 | × | Nikotiini quits (~ubuntu@ec2-52-213-118-142.eu-west-1.compute.amazonaws.com) (Ping timeout: 246 seconds) |
| 06:53:27 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 06:55:41 | → | AmberJ_ joins (~AmberJ_@89.47.234.28) |
| 06:56:37 | × | taurux quits (~taurux@net-188-216-43-120.cust.vodafonedsl.it) (Ping timeout: 264 seconds) |
| 06:57:49 | × | ephemera__ quits (~E@122.34.1.187) (Ping timeout: 264 seconds) |
| 06:58:03 | × | drbean quits (~drbean@TC210-63-209-207.static.apol.com.tw) (Ping timeout: 260 seconds) |
| 06:58:25 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 06:58:34 | → | taurux joins (~taurux@net-93-144-13-195.cust.dsl.teletu.it) |
| 06:59:02 | → | ephemera_ joins (~E@122.34.1.187) |
| 07:05:24 | <koz_> | proofofme: You need to actually import the module where decode is defined. |
| 07:05:31 | <koz_> | Also, put a type signature on main please. |
| 07:05:38 | <proofofme> | I did: import Data.CSV |
| 07:06:04 | <koz_> | I am not seeing that in the thing you linked. |
| 07:07:04 | <proofofme> | you mean this in the cabal file: cassava ^>= 0.5.2.0 ? |
| 07:07:29 | <proofofme> | https://hackage.haskell.org/package/cassava-0.5.2.0/docs/Data-Csv.html |
| 07:07:30 | <koz_> | proofofme: No. In your 'code' section, there is no import line. |
| 07:07:50 | <koz_> | Like 'import Data.CSV' as you described. |
| 07:07:51 | <proofofme> | ah, I excluded the portion above ... |
| 07:08:04 | <proofofme> | I excluded from the snippet. It is there though |
| 07:08:04 | <koz_> | proofofme: Yeah, we kinda need you not to do that. |
| 07:08:19 | <koz_> | Please pastebin _the_ _exact_ source file. |
| 07:08:22 | <koz_> | Omitting nothing. |
| 07:08:25 | → | Nikotiini joins (~ubuntu@ec2-52-213-118-142.eu-west-1.compute.amazonaws.com) |
| 07:08:30 | <proofofme> | ok one second |
| 07:08:36 | <koz_> | Since in this case, it is actually fairly critical. |
| 07:08:58 | hackage | multipart 0.2.1 - Parsers for the HTTP multipart format https://hackage.haskell.org/package/multipart-0.2.1 (ErikHesselink) |
| 07:09:39 | <proofofme> | https://pastebin.com/XqtKh9Ac |
| 07:10:30 | <koz_> | "import Data.CSV" <-- contrast with the module's actual name as per https://hackage.haskell.org/package/cassava-0.5.2.0/docs/Data-Csv.html |
| 07:11:16 | × | Rudd0 quits (~Rudd0@185.189.115.98) (Ping timeout: 272 seconds) |
| 07:11:23 | <proofofme> | ah ... |
| 07:11:25 | × | ephemera_ quits (~E@122.34.1.187) (Remote host closed the connection) |
| 07:11:37 | <proofofme> | wow ... spent so long on this tonight ... |
| 07:11:48 | <koz_> | proofofme: Happens. |
| 07:12:43 | → | ephemera_ joins (~E@122.34.1.187) |
| 07:13:40 | → | geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) |
| 07:15:46 | lep-delete | is now known as Guest88073 |
| 07:15:47 | Guest88073 | is now known as lep-delete |
| 07:17:44 | → | polyrain joins (~polyrain@130.102.13.108) |
| 07:18:52 | <proofofme> | what's the standard way of handling an `either`? |
| 07:19:11 | <koz_> | proofofme: What do you mean by 'handling'? |
| 07:19:14 | × | polyrain quits (~polyrain@130.102.13.108) (Client Quit) |
| 07:20:26 | <proofofme> | so I have an assignment to `x` which is of type Either String (Vector(Text, Int)). how do I process `x` and do the same functions as fromRight and fromLeft, but the right way |
| 07:20:56 | <koz_> | Well, you'd normally case-match. |
| 07:21:17 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:555b:b346:7063:867) (Ping timeout: 272 seconds) |
| 07:21:40 | <koz_> | https://gist.github.com/kozross/b3e00bd68bb1ddd91c09be215182f1bc |
| 07:21:41 | <proofofme> | is there a function analogous to the `maybe` for handling Maybes? |
| 07:21:45 | <koz_> | :t either |
| 07:21:47 | <lambdabot> | (a -> c) -> (b -> c) -> Either a b -> c |
| 07:21:57 | × | toorevitimirp quits (~tooreviti@117.182.180.0) (Remote host closed the connection) |
| 07:22:13 | <koz_> | I don't recommend it here, though, mostly because your Either represents an error condition versus a successful parse. |
| 07:22:22 | <koz_> | So jamming it all into either is probably not the best idea. |
| 07:22:25 | → | toorevitimirp joins (~tooreviti@117.182.180.0) |
| 07:22:42 | <proofofme> | case matching it is then. Thanks koz! |
| 07:24:41 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 07:25:32 | → | polyrain joins (~polyrain@130.102.13.108) |
| 07:25:33 | → | coot joins (~coot@37.30.52.68.nat.umts.dynamic.t-mobile.pl) |
| 07:28:33 | × | polyrain quits (~polyrain@130.102.13.108) (Client Quit) |
| 07:29:01 | → | christo joins (~chris@81.96.113.213) |
| 07:30:31 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 07:31:40 | → | polyrain joins (~polyrain@130.102.13.108) |
| 07:31:43 | × | polyrain quits (~polyrain@130.102.13.108) (Client Quit) |
| 07:32:38 | → | danvet_ joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) |
| 07:33:02 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:99c7:29a6:2c7f:b89d) |
| 07:33:13 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 07:33:21 | × | proofofme quits (~proofofme@184-96-74-65.hlrn.qwest.net) (Remote host closed the connection) |
| 07:33:38 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: leaving) |
| 07:34:07 | → | fxg joins (~fxg@unaffiliated/fxg) |
| 07:35:25 | → | christo joins (~chris@81.96.113.213) |
| 07:35:30 | → | polyrain joins (~polyrain@130.102.13.108) |
| 07:35:48 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 260 seconds) |
| 07:36:13 | × | cdepillabout quits (~cdepillab@pl35600.ag1001.nttpc.ne.jp) (Ping timeout: 264 seconds) |
| 07:37:05 | × | fxg quits (~fxg@unaffiliated/fxg) (Client Quit) |
| 07:37:50 | → | drbean joins (~drbean@TC210-63-209-56.static.apol.com.tw) |
| 07:42:01 | → | perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 07:42:06 | × | tzh quits (~tzh@c-73-94-222-143.hsd1.mn.comcast.net) (Quit: zzz) |
| 07:43:11 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 07:43:31 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 07:43:31 | × | polyrain quits (~polyrain@130.102.13.108) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 07:45:25 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 07:46:45 | → | polyrain joins (~polyrain@130.102.13.108) |
| 07:49:15 | × | polyrain quits (~polyrain@130.102.13.108) (Client Quit) |
| 07:51:28 | × | xsperry quits (~as@unaffiliated/xsperry) (Remote host closed the connection) |
| 07:51:54 | → | falafel__ joins (~falafel@65.155.184.35) |
| 07:53:28 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 07:53:33 | × | perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 2.9) |
| 07:54:11 | × | falafel_ quits (~falafel@2600:100e:b102:b424:c9d2:9986:8bf7:dec8) (Ping timeout: 244 seconds) |
| 07:54:21 | → | Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
| 07:54:52 | × | geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 265 seconds) |
| 07:56:10 | → | christo joins (~chris@81.96.113.213) |
| 07:57:18 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 07:57:28 | hackage | arrow-list 0.7.1 - List arrows for Haskell. https://hackage.haskell.org/package/arrow-list-0.7.1 (ErikHesselink) |
| 07:57:45 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 07:59:27 | hackage | pandora 0.3.1 - A box of patterns and paradigms https://hackage.haskell.org/package/pandora-0.3.1 (iokasimovmt) |
| 08:04:03 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 08:06:23 | × | Sgeo quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer) |
| 08:06:52 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
| 08:08:16 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds) |
| 08:11:52 | × | kupi quits (uid212005@gateway/web/irccloud.com/x-vfsmeyjszxcityxd) (Quit: Connection closed for inactivity) |
| 08:14:14 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 08:16:28 | hackage | HDBC-postgresql 2.3.2.8 - PostgreSQL driver for HDBC https://hackage.haskell.org/package/HDBC-postgresql-2.3.2.8 (ErikHesselink) |
| 08:18:26 | → | chaosmasttter joins (~chaosmast@p200300c4a710fa01f8ce4354cf8ba13b.dip0.t-ipconnect.de) |
| 08:18:58 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 08:21:57 | hackage | uri-encode 1.5.0.7 - Unicode aware uri-encoding https://hackage.haskell.org/package/uri-encode-1.5.0.7 (ErikHesselink) |
| 08:22:38 | × | ddellacosta quits (~dd@86.106.121.168) (Ping timeout: 256 seconds) |
| 08:24:17 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 08:28:52 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 08:29:48 | × | ephemera_ quits (~E@122.34.1.187) (Ping timeout: 272 seconds) |
| 08:30:10 | → | ephemera_ joins (~E@122.34.1.187) |
| 08:30:27 | → | Super_Feeling joins (~Super_Fee@103.108.4.170) |
| 08:31:43 | × | Super_Feeling quits (~Super_Fee@103.108.4.170) (Client Quit) |
| 08:32:05 | → | z0 joins (~z0@bl15-163-199.dsl.telepac.pt) |
| 08:32:28 | z0 | is now known as Guest561 |
| 08:33:33 | × | Stanley00 quits (~stanley00@unaffiliated/stanley00) (Ping timeout: 256 seconds) |
| 08:34:24 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 08:35:22 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 08:35:53 | × | Guest30638 quits (~z0@bl15-33-197.dsl.telepac.pt) (Ping timeout: 260 seconds) |
| 08:36:23 | × | drbean quits (~drbean@TC210-63-209-56.static.apol.com.tw) (Ping timeout: 256 seconds) |
| 08:38:45 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 08:40:21 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 08:41:52 | × | nek0 quits (~nek0@mail.nek0.eu) (Remote host closed the connection) |
| 08:42:43 | → | kritzefitz joins (~kritzefit@212.86.56.80) |
| 08:44:00 | × | ephemera_ quits (~E@122.34.1.187) (Remote host closed the connection) |
| 08:45:19 | → | ephemera_ joins (~E@122.34.1.187) |
| 08:45:46 | → | nek0 joins (~nek0@2a01:4f8:222:2b41::12) |
| 08:46:39 | → | bairyn joins (~bairyn@unaffiliated/bob0) |
| 08:54:48 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 08:58:13 | → | Slava_ joins (~textual@2a02:8308:89:8a00:2cbe:ab16:cb7a:e0ed) |
| 08:58:41 | → | Saukk joins (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) |
| 08:59:28 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 09:00:02 | × | AmberJ_ quits (~AmberJ_@89.47.234.28) () |
| 09:00:12 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 09:04:58 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 09:09:05 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 09:09:39 | × | kritzefitz quits (~kritzefit@212.86.56.80) (Ping timeout: 260 seconds) |
| 09:13:53 | → | AlterEgo- joins (~ladew@124-198-158-163.dynamic.caiway.nl) |
| 09:18:09 | → | knupfer joins (~Thunderbi@200116b82c6f4e00e94970f51329056d.dip.versatel-1u1.de) |
| 09:20:38 | → | wei2912 joins (~wei2912@unaffiliated/wei2912) |
| 09:21:44 | × | GyroW_ quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie) |
| 09:22:02 | → | GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 09:22:02 | × | GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 09:22:02 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 09:22:51 | × | hnOsmium0001 quits (uid453710@gateway/web/irccloud.com/x-vyxxbgdzqophhzrj) (Quit: Connection closed for inactivity) |
| 09:23:14 | → | christo joins (~chris@81.96.113.213) |
| 09:23:32 | → | immanuel32 joins (9d617a12@157.97.122.18) |
| 09:24:25 | → | bergsans joins (~bergsans@c80-217-8-29.bredband.comhem.se) |
| 09:24:32 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 09:25:12 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 09:25:41 | × | albertus1 quits (~seb@x4db9b903.dyn.telefonica.de) (Ping timeout: 256 seconds) |
| 09:26:07 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Client Quit) |
| 09:26:19 | → | Wuzzy joins (~Wuzzy@p5790ef06.dip0.t-ipconnect.de) |
| 09:26:26 | → | GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 09:26:27 | × | GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 09:26:27 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 09:27:13 | → | jchia__ joins (~jchia@58.32.37.146) |
| 09:29:28 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds) |
| 09:30:45 | × | justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) (Ping timeout: 240 seconds) |
| 09:31:07 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Client Quit) |
| 09:31:18 | → | GyroW joins (~GyroW@d54C03E98.access.telenet.be) |
| 09:31:18 | × | GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host) |
| 09:31:18 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 09:31:46 | <maerwald> | is there anything special to consider to make a haskell program work correctly with SIGSTOP? I think there's something weird with async going on or so |
| 09:34:05 | × | rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 240 seconds) |
| 09:37:50 | → | ensyde joins (~ensyde@2600:1702:2e30:1a40:e1f9:6cbb:4eca:3c84) |
| 09:42:31 | × | ensyde quits (~ensyde@2600:1702:2e30:1a40:e1f9:6cbb:4eca:3c84) (Ping timeout: 272 seconds) |
| 09:44:05 | × | falafel__ quits (~falafel@65.155.184.35) (Ping timeout: 240 seconds) |
| 14:28:46 | → | ircbrowse_tom joins (~ircbrowse@64.225.78.177) |
| 14:28:46 | Server | sets mode +CLnt |
| 14:29:00 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 14:29:22 | × | knupfer quits (~Thunderbi@200116b82c6f4e00e94970f51329056d.dip.versatel-1u1.de) (Ping timeout: 260 seconds) |
| 14:29:23 | knupfer1 | is now known as knupfer |
| 14:31:07 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie) |
| 14:31:24 | → | GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 14:31:25 | × | GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 14:31:25 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 14:37:05 | → | ircbrowse_tom joins (~ircbrowse@64.225.78.177) |
| 14:37:06 | Server | sets mode +CLnt |
| 14:39:31 | fendor_ | is now known as fendor |
| 14:40:16 | × | Maxdamantus quits (~Maxdamant@unaffiliated/maxdamantus) (Ping timeout: 246 seconds) |
| 14:42:13 | → | Maxdamantus joins (~Maxdamant@unaffiliated/maxdamantus) |
| 14:44:58 | × | da39a3ee5e6b4b0d quits (~textual@n11211935170.netvigator.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 14:45:31 | → | xerox__ joins (~xerox@unaffiliated/xerox) |
| 14:47:26 | → | frdg joins (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) |
| 14:48:27 | × | xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 260 seconds) |
| 14:49:38 | → | JordiGH joins (jordi@octave/developer/JordiGH) |
| 14:53:18 | → | invaser joins (~Thunderbi@31.148.23.125) |
| 14:53:31 | → | mmkarakaya joins (b0584711@gateway/web/cgi-irc/kiwiirc.com/ip.176.88.71.17) |
| 14:54:04 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 14:55:50 | × | tv quits (~tv@unaffiliated/tv) (Ping timeout: 256 seconds) |
| 14:56:53 | <AWizzArd> | Search for `left 4`: https://github.com/AJChapman/formatting/blob/master/README.md – why does formatting a 10 via `left 4 ' '` result in " 10" and not " 10" (1 vs 2 spaces)? |
| 14:56:58 | × | ephemera_ quits (~E@122.34.1.187) (Ping timeout: 256 seconds) |
| 14:58:05 | <AWizzArd> | Ah okay, nevermind. I see that this html. In the raw readme source it *does* have two spaces. |
| 14:58:24 | → | ephemera_ joins (~E@122.34.1.187) |
| 14:58:26 | <merijn> | AWizzArd: Because html sucks ;) |
| 14:58:38 | <merijn> | They should've use non-breaking space in the table |
| 14:58:40 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 14:58:49 | <merijn> | breaking space are compacted in html |
| 14:58:49 | <AWizzArd> | merijn: yeah |
| 14:58:49 | → | tv joins (~tv@unaffiliated/tv) |
| 14:59:58 | → | ggole joins (~ggole@2001:8003:8119:7200:a8c8:f35b:bee4:ed57) |
| 15:00:02 | × | Guest24779 quits (~sbc@185.204.1.185) () |
| 15:03:16 | <merijn> | Does anyone know if/how I can pass extra cabal flags for hie-bios to use? |
| 15:03:36 | × | Stanley00 quits (~stanley00@unaffiliated/stanley00) () |
| 15:04:13 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 15:04:37 | × | ephemera_ quits (~E@122.34.1.187) (Remote host closed the connection) |
| 15:05:18 | → | nek0 joins (~nek0@2a01:4f8:222:2b41::12) |
| 15:05:54 | → | ephemera_ joins (~E@122.34.1.187) |
| 15:07:57 | hackage | cabal-install-parsers 0.4 - Utilities to work with cabal-install files https://hackage.haskell.org/package/cabal-install-parsers-0.4 (phadej) |
| 15:08:43 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
| 15:10:20 | × | ephemera_ quits (~E@122.34.1.187) (Remote host closed the connection) |
| 15:11:38 | → | ephemera_ joins (~E@122.34.1.187) |
| 15:11:46 | × | mirrorbird quits (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) (Quit: Leaving) |
| 15:11:53 | <merijn> | ugh, why are github issues so terrible? I know an issue exists that I talked in and I just can't find it >.> |
| 15:12:32 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:2c0d:cfc:8f83:b542) (Ping timeout: 260 seconds) |
| 15:14:23 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 15:15:22 | <phadej> | in Cabal issue tracker? :) |
| 15:15:35 | <merijn> | Yes, although it turns out, I'm in fact, just blind |
| 15:16:04 | <phadej> | there are just too many issues |
| 15:16:28 | × | LKoen quits (~LKoen@81.255.219.130) (Remote host closed the connection) |
| 15:16:47 | <merijn> | Infinite yaks :) |
| 15:17:10 | <AWizzArd> | Ambiguous occurrence ‘putStrLn’ for this use: main = putStrLn ("Hallo" :: Text) |
| 15:17:18 | <merijn> | AWizzArd: Well, yes |
| 15:17:21 | <AWizzArd> | I know that putStrLn is not a method of some type class. |
| 15:17:32 | × | ephemera_ quits (~E@122.34.1.187) (Ping timeout: 258 seconds) |
| 15:17:39 | <merijn> | It's ambiguous because you, presumably imported the text version of putStrLn |
| 15:17:46 | <AWizzArd> | But is there a good reason why only on type class methods some dispatching/inference can occur? |
| 15:17:47 | <merijn> | But the string version is in Prelude |
| 15:18:07 | <merijn> | AWizzArd: Yes. That reason being: We don't want to go insane |
| 15:18:19 | <AWizzArd> | (-: |
| 15:18:32 | <merijn> | AWizzArd: "it's easy, just dispatch on the type!" |
| 15:18:36 | <merijn> | Which seems easy enough |
| 15:18:41 | <AWizzArd> | si |
| 15:18:44 | → | Kipras_ joins (~Kipras@78-56-235-39.static.zebra.lt) |
| 15:18:47 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 15:18:50 | <merijn> | Until you consider polymorphic types, typeclasses and how they all interact |
| 15:18:54 | <phadej> | if you want to dispatch on type, write a typeclass :) |
| 15:19:16 | <phadej> | type-directed-name-resolution doesn't mix well with type-classes |
| 15:19:22 | <AWizzArd> | phadej: yes yes, that would help, agreed. I just wonder why this magic doesn’t work on non-method functions. |
| 15:19:24 | → | Amras joins (~Amras@unaffiliated/amras0000) |
| 15:19:32 | → | elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) |
| 15:19:41 | <phadej> | or rather, "no one really thought about it, whether these can be mixed" |
| 15:19:49 | <AWizzArd> | k |
| 15:19:52 | → | ephemera_ joins (~E@122.34.1.187) |
| 15:19:57 | <AWizzArd> | It just isn’t a trivial thing is what I take away. |
| 15:20:01 | <geekosaur> | there have been multiple discussions of "type directed name resolution" |
| 15:20:13 | <phadej> | AWizzArd: boring answer is that "name resolution" happens before type-checking |
| 15:20:20 | × | Kipras_ quits (~Kipras@78-56-235-39.static.zebra.lt) (Read error: Connection reset by peer) |
| 15:20:33 | <merijn> | AWizzArd: There's two factors: one beyond the trivial case you list it's very hard to figure out how the resolution should happen |
| 15:20:34 | <phadej> | and no sane person want to mix them in GHC :) |
| 15:20:38 | <phadej> | s/mix/combine/ |
| 15:21:05 | <merijn> | AWizzArd: And, much more importantly, if you do figure out the resolution method you now have to *memorise and remember it to read any Haskell ever* |
| 15:21:08 | <AWizzArd> | pjb: compare this with your `title` uses. |
| 15:21:11 | <davean> | if it didn't happen before, what would you be type checking? |
| 15:21:32 | <merijn> | AWizzArd: You end up in Scala implicit territory where reordering imports changes how implicits are resolved and changes the behaviour of code |
| 15:21:47 | <merijn> | AWizzArd: Which seems like the kinda thing sane people would like to avoid :) |
| 15:21:56 | → | matp joins (~matp@185.163.110.116) |
| 15:21:57 | <AWizzArd> | merijn: uh, yess, didn’t know that one (: |
| 15:21:58 | → | avdb joins (~avdb@ip-213-49-61-171.dsl.scarlet.be) |
| 15:22:25 | × | kipras quits (~Kipras@78-56-235-39.static.zebra.lt) (Ping timeout: 264 seconds) |
| 15:24:22 | <merijn> | AWizzArd: C++ does support this via overloading and it's *hell* |
| 15:24:33 | <phadej> | I think you can have sane-ish type-directed name resolution, but in the `putStrLn ("Hallo" :: Text)` it won't work |
| 15:24:41 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:8084:b111:4aaf:f484) |
| 15:24:48 | <merijn> | I need 2 more phds to be able to confidently know what overload gets picked in all scenarios |
| 15:25:15 | <merijn> | So, instead, everyone relies on "it mostly does the right thing, usually, so cross your fingers you don't mess up" |
| 15:25:23 | <phadej> | e.g. it will effectively stop by saying "there are two functions named putStrLn, I cannot proceed" |
| 15:25:45 | <merijn> | Of course C++ has the added "fun" that there's also implicit conversions, so it might do a conversion *and then* decide which overload to take |
| 15:26:20 | <merijn> | I'd rather just add a qualified import and not have to think about ad hoc resolution schemes :) |
| 15:26:24 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 15:26:38 | → | boristheblade joins (~boristheb@37-219-58-2.nat.bb.dnainternet.fi) |
| 15:26:39 | × | xff0x quits (~fox@2001:1a81:53f8:9f00:1de1:3046:a1d5:380a) (Quit: xff0x) |
| 15:26:41 | <merijn> | mpickering: ping? |
| 15:26:42 | <AWizzArd> | merijn: right |
| 15:27:21 | <monochrom> | Oh, C++ overloading. I thought you were talking about Haskell overlapping instances. :) |
| 15:27:37 | <merijn> | AWizzArd: Anyway, if you go to the GHC wiki or google for haskell and "type directed name resolution" you should find a bunch of discussions on the topic. But in the end the consensus has always been "this is probably adding more pain than it removes" |
| 15:28:22 | <monochrom> | IIRC C++'s resolution is very detailedly spelt out but it is lengthy and interwined, it takes lawyers. |
| 15:28:23 | <AWizzArd> | Oki, makes sense! |
| 15:28:25 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie) |
| 15:28:45 | → | GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 15:28:45 | × | GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 15:28:45 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 15:29:03 | <hpc> | the @quote-y way to say it is after a certain point, type directed name resolution always resolves the name to "oh jesus" :D |
| 15:30:03 | <merijn> | It's like "a better Num hierarchy" everyone agrees we should have a better one, but actually making one turns out to be surprisingly hard :p |
| 15:30:16 | <monochrom> | @quote wrexem resolution |
| 15:30:17 | <lambdabot> | wrexem says: "Its not my fault that your resolution is messed up because you are blind" |
| 15:30:37 | <merijn> | monochrom: *everything* takes lawyers in C++ |
| 15:30:58 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds) |
| 15:31:06 | <merijn> | I have some C++ code using an initialiser list that worked fine 3 years ago, but it's refusing to compile now and I'll be damned if I know why not... |
| 15:31:20 | <phadej> | you can stick to core guidelines though, and then life will be easier |
| 15:31:23 | <merijn> | The code hasn't changed in all that time, so must be something in clang *and* g++ |
| 15:31:43 | <monochrom> | This is why my prof said to keep the old compiler and the old OS. |
| 15:32:02 | <monochrom> | You may also need to keep the old hardware. |
| 15:33:32 | × | ephemera_ quits (~E@122.34.1.187) (Quit: No Ping reply in 180 seconds.) |
| 15:34:01 | → | ephemera_ joins (~E@122.34.1.187) |
| 15:34:07 | × | avdb quits (~avdb@ip-213-49-61-171.dsl.scarlet.be) (Quit: WeeChat 2.9) |
| 15:34:45 | → | berberman_ joins (~berberman@unaffiliated/berberman) |
| 15:35:23 | × | berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 244 seconds) |
| 15:35:23 | <merijn> | monochrom: My own damn fold for not having the compile step in my code so I forgot how I ever compiled it 3 years ago... >.> |
| 15:35:30 | → | xff0x joins (~fox@2001:1a81:53f8:9f00:217d:12db:12d5:cd4c) |
| 15:35:38 | <merijn> | Automate all the things! |
| 15:35:52 | <merijn> | s/fold/fault |
| 15:35:57 | <merijn> | clearly to tired to English |
| 15:36:19 | <phadej> | having --std... argument helps :) |
| 15:36:31 | <phadej> | at least C++ has that, so there is a chance to compile old code with new compiler |
| 15:36:32 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 15:36:39 | <merijn> | phadej: oh, I always use -std |
| 15:36:49 | <phadej> | merijn: it helps to write it down too :) |
| 15:37:55 | <merijn> | phadej: This is a leftover from the dark early days where I just migrated my codebase from python to Haskell |
| 15:38:42 | × | stefan-_ quits (~cri@42dots.de) (Read error: Connection reset by peer) |
| 15:39:10 | → | stefan-__ joins (~cri@42dots.de) |
| 15:39:30 | <merijn> | phadej: My happiness is proportional to the percentage of orange in this plot: http://files.inconsistent.nl/sloc-time.png :p |
| 15:40:02 | × | ephemera_ quits (~E@122.34.1.187) (Ping timeout: 256 seconds) |
| 15:40:45 | × | dirediresalt quits (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection) |
| 15:41:01 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds) |
| 15:41:13 | × | frdg quits (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Remote host closed the connection) |
| 15:41:31 | → | ephemera_ joins (~E@122.34.1.187) |
| 15:41:32 | → | dirediresalt joins (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) |
| 15:42:00 | → | contiver joins (~contiver@84-115-64-51.wifi.dynamic.surfer.at) |
| 15:43:03 | <xsperry> | to be fair, breaking changes happen in haskell world a lot more than in the C++ world |
| 15:53:28 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie) |
| 15:53:38 | → | GyroW joins (~GyroW@d54c03e98.access.telenet.be) |
| 15:53:38 | × | GyroW quits (~GyroW@d54c03e98.access.telenet.be) (Changing host) |
| 15:53:38 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 15:54:50 | × | jchia__ quits (~jchia@58.32.37.146) (Read error: Connection reset by peer) |
| 15:55:47 | → | jchia__ joins (~jchia@58.32.37.146) |
| 15:56:47 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 15:57:58 | hackage | hadolint 1.18.1 - Dockerfile Linter JavaScript API https://hackage.haskell.org/package/hadolint-1.18.1 (lorenzo) |
| 15:58:03 | → | theelous3 joins (~theelous3@unaffiliated/theelous3) |
| 15:59:49 | → | GyroW_ joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 15:59:49 | × | GyroW_ quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 15:59:49 | → | GyroW_ joins (~GyroW@unaffiliated/gyrow) |
| 16:00:44 | × | Gerula quits (~Gerula@unaffiliated/gerula) (Quit: Leaving) |
| 16:01:21 | → | isovector1 joins (~isovector@172.103.216.166.cable.tpia.cipherkey.com) |
| 16:01:22 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 272 seconds) |
| 16:01:34 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 16:02:07 | → | ddellacosta joins (~dd@86.106.121.168) |
| 16:03:58 | → | scratchy_beard joins (~doug@cpc110383-king13-2-0-cust408.19-1.cable.virginm.net) |
| 16:04:50 | → | frdg joins (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) |
| 16:06:57 | → | kupi joins (uid212005@gateway/web/irccloud.com/x-gbjfbdizrnfenkgr) |
| 16:07:20 | Gurkenglas_ | is now known as Gurkenglas |
| 16:07:30 | <koz_> | merijn: Yeah, both C and C++ _force_ you to become a lawyer in fairly short order. |
| 16:08:02 | × | fendor quits (~fendor@77.119.130.12.wireless.dyn.drei.com) (Remote host closed the connection) |
| 16:10:28 | hackage | cabal-plan 0.7.2.0 - Library and utility for processing cabal's plan.json file https://hackage.haskell.org/package/cabal-plan-0.7.2.0 (phadej) |
| 16:12:09 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 16:13:35 | → | texasmynsted joins (688c35c3@104.140.53.195) |
| 16:14:14 | <texasmynsted> | When I look at tutorials for Template Haskell, they often say "use ghci like this . . ." |
| 16:14:38 | <texasmynsted> | oh. hmm. Going to try something before I finish my quesiton |
| 16:14:46 | → | djellemah joins (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54) |
| 16:16:10 | <phadej> | oh, when time-1.11 got released |
| 16:16:20 | <phadej> | something to spend the rest of this weekend with |
| 16:17:20 | → | aweinstock joins (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) |
| 16:17:57 | <monochrom> | "timely release" |
| 16:18:30 | × | stefan-__ quits (~cri@42dots.de) (Read error: Connection reset by peer) |
| 16:18:35 | <phadej> | 4 days ago already! |
| 16:18:41 | → | stefan-__ joins (~cri@42dots.de) |
| 16:18:59 | × | Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
| 16:20:29 | → | Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) |
| 16:21:27 | <texasmynsted> | Okay. I have the TemplateHaskell extension loaded in my cabal file. When I do `cabal repl` I can then do `:m + Language.Haskell.TH` w/o error. |
| 16:21:41 | <texasmynsted> | But then QuasiQuotes are not understood in the REPL. |
| 16:21:44 | <texasmynsted> | I get an error. |
| 16:21:49 | × | contiver quits (~contiver@84-115-64-51.wifi.dynamic.surfer.at) (Ping timeout: 264 seconds) |
| 16:21:53 | <texasmynsted> | <interactive>:2:7: error: parse error on input ‘|’ |
| 16:22:30 | <monochrom> | QuasiQuotes is a different extension. |
| 16:22:33 | <texasmynsted> | Here is an example https://gist.github.com/mmynsted/2056ad4a2b2960dab3808588cca12607 |
| 16:23:06 | × | knupfer quits (~Thunderbi@i59F7FFD6.versanet.de) (Ping timeout: 256 seconds) |
| 16:23:11 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 16:23:42 | <monochrom> | Oh, we call that quote, not quasiquote. Quasiquotes are user-defined, e.g., [myfunc| abc |] |
| 16:23:44 | <c_wraith> | texasmynsted: in general, ghci doesn't enable an extension just because you loaded a file that has it enabled |
| 16:24:17 | <c_wraith> | actually, I can't think of any cases where it does so |
| 16:25:06 | <geekosaur> | it doesn't that I know of. ":showi language" iirc shows what extensions are active |
| 16:25:19 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 16:25:20 | <texasmynsted> | okay |
| 16:26:00 | × | boristheblade quits (~boristheb@37-219-58-2.nat.bb.dnainternet.fi) (Quit: Lost terminal) |
| 16:26:07 | <texasmynsted> | so it is ignoring my project.cabal file with the language extensions defined |
| 16:26:48 | <davean> | If you wanted it to respect that, use cabal repl |
| 16:27:13 | → | christo joins (~chris@81.96.113.213) |
| 16:27:27 | <geekosaur> | "When I do `cabal repl`" |
| 16:28:06 | <texasmynsted> | Okay, inside of the REPL, if I explicitly do `:set -XTemplateHaskell` then it works as I expect. |
| 16:28:43 | <texasmynsted> | I guess I need to read up on cabal to see why it is not reading the language extensions from the .cabal file. |
| 16:29:08 | <monochrom> | It is certainly honoured in build mode. |
| 16:29:18 | <texasmynsted> | davean, I did use cabal repl |
| 16:29:50 | → | fendor joins (~fendor@046125249052.public.t-mobile.at) |
| 16:30:06 | <texasmynsted> | Yes, when I build my project the .cabal file is used as I expect. When I just run `cabal repl` is does not |
| 16:31:30 | <texasmynsted> | hmm. Also did not seem to read it when I did `cabal real --cabal-file thask.cabal` |
| 16:31:37 | <maerwald> | texasmynsted: did you specifiy the library component? |
| 16:32:13 | <maerwald> | cabal repl lib:<component> |
| 16:32:21 | <texasmynsted> | no |
| 16:32:30 | → | fendor_ joins (~fendor@212095005159.public.telering.at) |
| 16:33:42 | texasmynsted | shrug |
| 16:35:04 | × | fendor quits (~fendor@046125249052.public.t-mobile.at) (Ping timeout: 256 seconds) |
| 16:37:20 | → | Rudd0^ joins (~Rudd0@185.189.115.98) |
| 16:38:21 | → | Gerula joins (~Gerula@unaffiliated/gerula) |
| 16:38:28 | <texasmynsted> | okay |
| 16:38:54 | <texasmynsted> | At least I can set the extensions directly in the REPL. |
| 16:39:16 | <texasmynsted> | I can worry about why it is not loading as I expect another time |
| 16:40:27 | <texasmynsted> | I am trying to see if it is worth the TH learning curve to use it to read a file of lines where each line has two words, into a list of pairs. |
| 16:40:43 | × | Rudd0 quits (~Rudd0@185.189.115.103) (Ping timeout: 258 seconds) |
| 16:41:21 | <texasmynsted> | The reason I would want to use TH is because it could learn how TH works, and I would rather read these at compile time anyway. |
| 16:42:42 | → | conal joins (~conal@172.255.125.154) |
| 16:45:18 | → | justache joins (~justache@unaffiliated/justache) |
| 16:45:19 | × | acidjnk_new quits (~acidjnk@p200300d0c7237829089b089ef2235b8a.dip0.t-ipconnect.de) (Read error: Connection reset by peer) |
| 16:49:11 | × | frdg quits (47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Remote host closed the connection) |
| 16:50:00 | × | immanuel32 quits (9d617a12@157.97.122.18) (Remote host closed the connection) |
| 16:50:51 | <merijn> | texasmynsted: Also, note that ghci distinguishes "extensions in loaded files" and "extensions in the interactive session" |
| 16:51:03 | <merijn> | :set and :seti respectively |
| 16:51:39 | × | fendor_ quits (~fendor@212095005159.public.telering.at) (Remote host closed the connection) |
| 16:51:49 | × | GyroW_ quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie) |
| 16:52:04 | → | GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 16:52:05 | × | GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 16:52:05 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 16:54:35 | × | nyd quits (~lpy@unaffiliated/elysian) (Quit: nyd) |
| 16:55:25 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 264 seconds) |
| 16:55:37 | → | tungki joins (uid469991@gateway/web/irccloud.com/x-eyynitaofwtlmrqb) |
| 16:56:47 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 16:59:05 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:14e9:97cc:5d44:8325) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 17:00:49 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 17:04:12 | <monochrom> | You know what, I can't reproduce the problem. |
| 17:04:49 | <monochrom> | "default-extensions: TemplateHaskell" allows me to use quotes in cabal repl. |
| 17:07:23 | ← | dmc00 parts (~dmc@unaffiliated/dmc00) () |
| 17:07:34 | × | bitmapper quits (uid464869@gateway/web/irccloud.com/x-hxsutijujpqeyumd) (Quit: Connection closed for inactivity) |
| 17:08:38 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 17:10:08 | × | toorevitimirp quits (~tooreviti@117.182.180.0) (Remote host closed the connection) |
| 17:10:44 | <texasmynsted> | merijn oh thankyou |
| 17:11:03 | <texasmynsted> | hm |
| 17:11:11 | <monochrom> | :set implies :seti |
| 17:11:26 | → | acarrico joins (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) |
| 17:11:44 | <monochrom> | :seti is useful when you want the option for your hand-entered things but not for the code you will :load |
| 17:13:07 | <texasmynsted> | I was using `other-extensions` rather than `default-extensions`. When I use `default-extensions` it works as I would have expected. |
| 17:13:08 | <texasmynsted> | :-) |
| 17:14:31 | → | nbloomf joins (~nbloomf@76.217.43.73) |
| 17:14:55 | <c_wraith> | ah, yes. other-extensions is purely documentation. I don't even know why it's there, really. If there were compilers other than GHC practically available, it might matter... |
| 17:15:56 | <geekosaur> | supposedly so it can verify that other extensions used in individual source files are supported by the selected compiler before building the project, as I recall it |
| 17:16:22 | × | nbloomf quits (~nbloomf@76.217.43.73) (Client Quit) |
| 17:17:43 | <monochrom> | Another is as in the user guide "In Cabal-1.24 the dependency solver will use [other-extensions] and default-extensions information" |
| 17:18:01 | <c_wraith> | ... for what? |
| 17:18:14 | <monochrom> | Heh I don't actually know. |
| 17:18:53 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 17:19:35 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Remote host closed the connection) |
| 17:19:50 | → | GyroW joins (~GyroW@d54c03e98.access.telenet.be) |
| 17:19:50 | × | GyroW quits (~GyroW@d54c03e98.access.telenet.be) (Changing host) |
| 17:19:50 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 17:24:51 | × | conal quits (~conal@172.255.125.154) (Quit: Computer has gone to sleep.) |
| 17:26:20 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 17:26:22 | <merijn> | c_wraith: You know, for other non-GHC compilers |
| 17:26:38 | → | christo joins (~chris@81.96.113.213) |
| 17:27:10 | <merijn> | (tbh, I'm in favour of not tying all out tooling to hard to GHC, because that only makes the challenge of making a non-GHC competitor that much more challenging) |
| 17:27:18 | <monochrom> | But the "dependency solver" thing doesn't seems to be about other compilers. |
| 17:27:58 | → | conal joins (~conal@172.255.125.154) |
| 17:28:16 | <merijn> | Sure, no clue what that's about it |
| 17:28:57 | <monochrom> | "Cabal prior to 1.24 will abort compilation if the current compiler doesn’t provide the extensions" |
| 17:29:33 | <monochrom> | That begins to sound like since 1.24 they have stopped dreaming "there could be another compiler". |
| 17:29:40 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 246 seconds) |
| 17:30:21 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 17:30:37 | → | christo joins (~chris@81.96.113.213) |
| 17:30:46 | <monochrom> | Darn. Hugs was so promising. |
| 17:30:58 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Quit: WeeChat 2.7) |
| 17:31:05 | → | geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) |
| 17:31:15 | <c_wraith> | and using it between versions of ghc doesn't make that much sense. ghc will fail fast if it encounters extensions it doesn't know anyway |
| 17:31:33 | <geekosaur> | how aboutother versions of the current compiler, which might have been considered at one point for dependency checking? |
| 17:31:43 | × | karanlikmadde quits (~karanlikm@dynamic-089-012-174-005.89.12.pool.telefonica.de) (Quit: karanlikmadde) |
| 17:31:47 | <c_wraith> | I mean, the first thing it has to do when compiling is a topological sort considering imports. |
| 17:31:55 | <monochrom> | I know right? It is not like "dependency solver says you need GHC 9.12 so let's download it right now". |
| 17:32:23 | <c_wraith> | since that's parsing anyway, it can fail on an unknown extension at that point. |
| 17:32:25 | <geekosaur> | stack... |
| 17:32:38 | → | nschoe joins (~quassel@2a01:e0a:3c4:c7b0:6d74:2078:bb8:b17d) |
| 17:33:19 | <c_wraith> | stack doesn't do anything like that, though. stack's philosophy is the opposite. it alone determines what to install, dependencies get no say |
| 17:33:30 | <MarcelineVQ> | is -XPackageImports relevant |
| 17:33:46 | <monochrom> | Yeah, stack, except stack is usually in the other direction "dependency solver says you need legacy GHC 4.6" |
| 17:34:19 | <geekosaur> | right, but I can imagine someone thinking "let's provide rough feature parity, but our way instead" |
| 17:34:22 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 17:34:35 | × | ddellacosta quits (~dd@86.106.121.168) (Ping timeout: 260 seconds) |
| 17:35:03 | → | christo joins (~chris@81.96.113.213) |
| 17:35:19 | <monochrom> | MarcelineVQ: In what context? |
| 17:35:35 | <MarcelineVQ> | cabal caring about extensions during solving |
| 17:35:38 | × | phr0m3indh0v3n quits (~Android@84.241.205.21) (Read error: Connection reset by peer) |
| 17:35:46 | <monochrom> | I think no. |
| 17:35:58 | → | phr0m3indh0v3n joins (~Android@84.241.205.21) |
| 17:36:01 | <monochrom> | But I really don't know. |
| 17:37:47 | → | lucasb joins (uid333435@gateway/web/irccloud.com/x-jgpbbuburcbcxbsy) |
| 17:43:07 | → | abhixec joins (~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) |
| 17:43:25 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds) |
| 17:44:57 | → | GyroW_ joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 17:44:57 | × | GyroW_ quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 17:44:57 | → | GyroW_ joins (~GyroW@unaffiliated/gyrow) |
| 17:45:28 | <christo> | hello |
| 17:45:53 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 258 seconds) |
| 17:45:55 | <christo> | what is hoogle? |
| 17:46:10 | <christo> | is it like: searchable haskell documentation or something? |
| 17:46:16 | <christo> | for libs on hackage? |
| 17:47:46 | <geekosaur> | yes. you can try an online version covering the standard libraries at hoogle.haskell.org |
| 17:48:17 | <geekosaur> | but you can also install it locally and index your own packages and their dependencies |
| 17:48:43 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 17:49:11 | <merijn> | @hoogle (a -> b) -> [a] -> [b] |
| 17:49:12 | <lambdabot> | Prelude map :: (a -> b) -> [a] -> [b] |
| 17:49:12 | <lambdabot> | Data.List map :: (a -> b) -> [a] -> [b] |
| 17:49:12 | <lambdabot> | GHC.Base map :: (a -> b) -> [a] -> [b] |
| 17:50:45 | → | albertus1 joins (~seb@x4db9b903.dyn.telefonica.de) |
| 17:53:47 | → | chaosmasttter joins (~chaosmast@p200300c4a710fa01f8ce4354cf8ba13b.dip0.t-ipconnect.de) |
| 17:54:58 | → | Sgeo joins (~Sgeo@ool-18b982ad.dyn.optonline.net) |
| 18:00:01 | × | matp quits (~matp@185.163.110.116) () |
| 18:00:44 | → | gioyik joins (~gioyik@190.67.155.46) |
| 18:04:24 | xerox__ | is now known as xerox_ |
| 18:04:56 | × | chaosmasttter quits (~chaosmast@p200300c4a710fa01f8ce4354cf8ba13b.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 18:05:35 | × | coot quits (~coot@37.30.52.68.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 18:06:41 | <christo> | ohhh |
| 18:07:17 | <christo> | thx |
| 18:08:23 | → | Tene joins (~tene@poipu/supporter/slacker/tene) |
| 18:08:23 | × | Tene quits (~tene@poipu/supporter/slacker/tene) (Client Quit) |
| 18:08:23 | → | knupfer joins (~Thunderbi@200116b82c6f4e00e9fd13aeb0014cbc.dip.versatel-1u1.de) |
| 18:08:36 | → | Tene joins (~tene@mail.digitalkingdom.org) |
| 18:08:36 | × | Tene quits (~tene@mail.digitalkingdom.org) (Changing host) |
| 18:08:36 | → | Tene joins (~tene@poipu/supporter/slacker/tene) |
| 18:09:44 | → | alp joins (~alp@2a01:e0a:58b:4920:546:64d9:5065:63aa) |
| 18:09:54 | × | urdh quits (~urdh@unaffiliated/urdh) (Ping timeout: 260 seconds) |
| 18:10:57 | × | texasmynsted quits (688c35c3@104.140.53.195) (Remote host closed the connection) |
| 18:11:32 | × | knupfer quits (~Thunderbi@200116b82c6f4e00e9fd13aeb0014cbc.dip.versatel-1u1.de) (Client Quit) |
| 18:11:41 | → | knupfer joins (~Thunderbi@200116b82c6f4e00e9fd13aeb0014cbc.dip.versatel-1u1.de) |
| 18:13:06 | × | geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 272 seconds) |
| 18:13:38 | → | kenran joins (~maier@mue-88-130-62-083.dsl.tropolys.de) |
| 18:14:13 | → | contiver joins (~contiver@84-115-65-99.wifi.dynamic.surfer.at) |
| 18:14:54 | × | Niamkik quits (~Niamkik@80.67.190.201) (Quit: WeeChat 2.6) |
| 18:15:03 | × | ephemera_ quits (~E@122.34.1.187) (Read error: Connection reset by peer) |
| 18:15:13 | → | Buntspecht joins (~user@unaffiliated/siracusa) |
| 18:16:58 | → | urdh joins (~urdh@unaffiliated/urdh) |
| 18:17:15 | → | ephemera_ joins (~E@122.34.1.187) |
| 18:18:32 | → | chaosmasttter joins (~chaosmast@p200300c4a710fa01f8ce4354cf8ba13b.dip0.t-ipconnect.de) |
| 18:18:36 | → | karanlikmadde joins (~karanlikm@2a01:c22:ac16:a100:a874:6bad:ee0e:3b97) |
| 18:18:58 | hackage | binaryen 0.0.5.0 - Haskell bindings to binaryen https://hackage.haskell.org/package/binaryen-0.0.5.0 (terrorjack) |
| 18:21:10 | → | codygman joins (~codygman@47-184-107-46.dlls.tx.frontiernet.net) |
| 18:22:40 | × | ephemera_ quits (~E@122.34.1.187) (Remote host closed the connection) |
| 18:23:55 | × | GyroW_ quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie) |
| 18:23:56 | → | ephemera_ joins (~E@122.34.1.187) |
| 18:24:05 | → | GyroW joins (~GyroW@d54C03E98.access.telenet.be) |
| 18:24:05 | × | GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host) |
| 18:24:05 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 18:24:28 | → | ddellacosta joins (~dd@86.106.121.168) |
| 18:28:38 | × | phr0m3indh0v3n quits (~Android@84.241.205.21) (Quit: -a- IRC for Android 2.1.59) |
| 18:28:53 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 18:30:10 | → | bitmapper joins (uid464869@gateway/web/irccloud.com/x-olymsittyvaorogr) |
| 18:30:27 | × | kish quits (~oracle@unaffiliated/oracle) (Remote host closed the connection) |
| 18:31:27 | → | kish joins (~oracle@unaffiliated/oracle) |
| 18:36:42 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:706d:285c:8b0:9b3d) |
| 18:37:36 | → | christo joins (~chris@81.96.113.213) |
| 18:37:43 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:706d:285c:8b0:9b3d) (Client Quit) |
| 18:39:47 | → | KhoN joins (~KhoN@cm-84.208.147.132.getinternet.no) |
| 18:40:57 | → | thir joins (~thir@p200300f27f2f0100d058ed1e9e148e98.dip0.t-ipconnect.de) |
| 18:41:57 | × | djellemah quits (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54) (Ping timeout: 260 seconds) |
| 18:42:04 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 18:44:42 | → | hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-uekbwohrzbmaorkq) |
| 18:44:46 | × | ephemera_ quits (~E@122.34.1.187) (Ping timeout: 256 seconds) |
| 18:44:51 | × | conal quits (~conal@172.255.125.154) (Quit: Computer has gone to sleep.) |
| 18:46:05 | → | ephemera_ joins (~E@122.34.1.187) |
| 18:46:26 | → | LKoen joins (~LKoen@81.255.219.130) |
| 18:47:10 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 18:47:57 | → | conal joins (~conal@172.255.125.154) |
| 18:48:58 | hackage | gotta-go-fast 0.3.0.6 - A command line utility for practicing typing https://hackage.haskell.org/package/gotta-go-fast-0.3.0.6 (callum_oakley) |
| 18:54:20 | → | christo joins (~chris@81.96.113.213) |
| 18:57:03 | → | chief19831 joins (~chief1983@178.162.204.238) |
| 18:57:08 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 18:57:19 | × | alp quits (~alp@2a01:e0a:58b:4920:546:64d9:5065:63aa) (Ping timeout: 272 seconds) |
| 18:57:25 | × | ephemera_ quits (~E@122.34.1.187) (Ping timeout: 240 seconds) |
| 18:59:16 | → | alp joins (~alp@2a01:e0a:58b:4920:a554:1244:1f69:224d) |
| 18:59:25 | × | conal quits (~conal@172.255.125.154) (Quit: Computer has gone to sleep.) |
| 18:59:40 | → | ephemera_ joins (~E@122.34.1.187) |
| 18:59:46 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 18:59:57 | → | conal joins (~conal@172.255.125.154) |
| 19:00:40 | <Uniaika> | (/1 |
| 19:00:44 | <Uniaika> | (hmm.) |
| 19:01:32 | × | conal quits (~conal@172.255.125.154) (Remote host closed the connection) |
| 19:01:47 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
| 19:02:40 | → | conal joins (~conal@172.255.125.154) |
| 19:02:54 | × | dhil quits (~dhil@195.213.192.122) (Ping timeout: 256 seconds) |
| 19:03:25 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 19:03:37 | → | zz01 joins (~xyz@210.18.180.63) |
| 19:04:07 | × | berberman_ quits (~berberman@unaffiliated/berberman) (Ping timeout: 260 seconds) |
| 19:04:41 | × | kenran quits (~maier@mue-88-130-62-083.dsl.tropolys.de) (Ping timeout: 256 seconds) |
| 19:04:55 | <zz01> | I am new to the channel and also the language, I am coming from website recommendation this channel is the best and very helpful |
| 19:05:10 | × | ephemera_ quits (~E@122.34.1.187) (Ping timeout: 256 seconds) |
| 19:05:19 | <zz01> | I would like to learn haskell, but I don't any programming experience in functional programming |
| 19:05:29 | <zz01> | I have good background in C# |
| 19:06:04 | <Uniaika> | if you don't want to jump too far from your comfort zone, F# is quite a decent programming language, based on .NET |
| 19:07:01 | × | stefan-__ quits (~cri@42dots.de) (Read error: Connection reset by peer) |
| 19:07:10 | → | stefan-__ joins (~cri@42dots.de) |
| 19:07:38 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 19:08:09 | → | ephemera_ joins (~E@122.34.1.187) |
| 19:08:38 | <ddellacosta> | zz01: if you want to get into Haskell, you have some references to crossover ideas that you can start with in C#, like linq https://devblogs.microsoft.com/pfxteam/tasks-monads-and-linq/ |
| 19:08:58 | hackage | little-logger 0.3.1 - Basic logging based on co-log https://hackage.haskell.org/package/little-logger-0.3.1 (ejconlon) |
| 19:09:09 | <ddellacosta> | not that you need to start that way to start learning Haskell |
| 19:10:03 | → | christo joins (~chris@81.96.113.213) |
| 19:10:07 | <ddellacosta> | but, I think it's pretty cool how C# has that specific connection |
| 19:10:19 | <zz01> | ddellacosta: thank you |
| 19:10:30 | <ddellacosta> | sure thing |
| 19:10:34 | × | gioyik quits (~gioyik@190.67.155.46) (Ping timeout: 265 seconds) |
| 19:11:33 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 19:12:24 | <dolio> | I'm not sure LINQ is going to help much with learning Haskell. |
| 19:12:30 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 19:12:58 | <ddellacosta> | that's fair, more just thinking that getting a feel for some of the ideas in a language they are comfortable with may ease things down the road when the same ideas pop up |
| 19:13:13 | × | AlterEgo- quits (~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving) |
| 19:14:14 | → | GyroW_ joins (~GyroW@84.192.62.152) |
| 19:14:14 | × | GyroW_ quits (~GyroW@84.192.62.152) (Changing host) |
| 19:14:14 | → | GyroW_ joins (~GyroW@unaffiliated/gyrow) |
| 19:15:22 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 256 seconds) |
| 19:15:24 | → | contiver_ joins (~contiver@84-115-64-163.wifi.dynamic.surfer.at) |
| 19:15:35 | → | dhil joins (~dhil@78.156.97.38) |
| 19:16:40 | <dolio> | It is a good example of how 'monads are just a hack for dealing with purity' is utter nonsense, though. |
| 19:17:14 | <ddellacosta> | very true |
| 19:17:15 | × | Kaivo quits (~Kaivo@104-200-86-99.mc.derytele.com) (Ping timeout: 260 seconds) |
| 19:17:49 | <ddellacosta> | I don't think I actually know of monads being used in a language outside of Haskell so effectively |
| 19:18:00 | <ddellacosta> | *another example of |
| 19:18:01 | → | gioyik joins (~gioyik@190.67.155.46) |
| 19:18:16 | × | contiver quits (~contiver@84-115-65-99.wifi.dynamic.surfer.at) (Ping timeout: 256 seconds) |
| 19:18:34 | × | knupfer quits (~Thunderbi@200116b82c6f4e00e9fd13aeb0014cbc.dip.versatel-1u1.de) (Quit: knupfer) |
| 19:19:19 | → | knupfer joins (~Thunderbi@200116b82c6f4e003906994b36cffa11.dip.versatel-1u1.de) |
| 19:19:33 | → | Kaivo joins (~Kaivo@ec2-15-222-231-32.ca-central-1.compute.amazonaws.com) |
| 19:20:55 | × | knupfer quits (~Thunderbi@200116b82c6f4e003906994b36cffa11.dip.versatel-1u1.de) (Client Quit) |
| 19:20:57 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 258 seconds) |
| 19:21:14 | → | knupfer joins (~Thunderbi@200116b82c6f4e003906994b36cffa11.dip.versatel-1u1.de) |
| 19:22:43 | × | gioyik quits (~gioyik@190.67.155.46) (Ping timeout: 246 seconds) |
| 19:23:55 | → | contiver__ joins (~contiver@84-115-64-62.wifi.dynamic.surfer.at) |
| 19:26:34 | × | contiver_ quits (~contiver@84-115-64-163.wifi.dynamic.surfer.at) (Ping timeout: 272 seconds) |
| 19:26:34 | → | proofofme joins (~proofofme@184-96-74-65.hlrn.qwest.net) |
| 19:26:49 | × | evanjs quits (~evanjs@075-129-188-019.res.spectrum.com) (Quit: ZNC 1.8.1 - https://znc.in) |
| 19:27:36 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 19:27:36 | <c_wraith> | They're used all the time in rust, they just can't be abstracted over. |
| 19:27:40 | → | gioyik joins (~gioyik@190.67.155.46) |
| 19:28:02 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 19:28:11 | → | evanjs joins (~evanjs@075-129-188-019.res.spectrum.com) |
| 19:29:11 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 19:29:41 | <hpc> | rust's Result sugar in particular is like being in a whole-program Either |
| 19:30:08 | <dolio> | You can't in C#, either, which also shows you that the line people take in here about them only being useful because they can be abstracted over is also wrong. :) |
| 19:32:06 | <hpc> | it's a little bit of both |
| 19:32:10 | → | christo joins (~chris@81.96.113.213) |
| 19:32:14 | <hpc> | like how you don't see much CPS in python code |
| 19:32:35 | <hpc> | even though it has "first-class functions" |
| 19:32:39 | × | gioyik quits (~gioyik@190.67.155.46) (Ping timeout: 260 seconds) |
| 19:32:40 | × | stefan-__ quits (~cri@42dots.de) (Read error: Connection reset by peer) |
| 19:32:44 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 19:32:56 | × | codygman quits (~codygman@47-184-107-46.dlls.tx.frontiernet.net) (Ping timeout: 256 seconds) |
| 19:33:00 | → | stefan-__ joins (~cri@42dots.de) |
| 19:33:07 | <dolio> | CPS just makes stack usage worse in python. |
| 19:33:21 | × | proofofme quits (~proofofme@184-96-74-65.hlrn.qwest.net) (Remote host closed the connection) |
| 19:33:29 | <Rembane> | Is there an optimization needed to not bloat the stack? |
| 19:33:50 | <hpc> | well, that too |
| 19:34:00 | <dolio> | You need 'proper tail recursion'. |
| 19:34:14 | <hpc> | still, that hardly stops ruby programmers from doing the same thing |
| 19:35:22 | <dolio> | Do you mean blocks? |
| 19:35:32 | <dolio> | Those are a little less aggresive than CPS. |
| 19:35:54 | → | proofofme joins (~proofofme@184-96-74-65.hlrn.qwest.net) |
| 19:36:07 | × | thir quits (~thir@p200300f27f2f0100d058ed1e9e148e98.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 19:36:49 | × | christo quits (~chris@81.96.113.213) (Ping timeout: 260 seconds) |
| 19:36:52 | <dolio> | It definitely influences the designs people use, tough. |
| 19:37:00 | × | albertus1 quits (~seb@x4db9b903.dyn.telefonica.de) (Quit: Leaving.) |
| 19:37:04 | <dolio> | Having a good syntax for it. |
| 19:37:04 | <hpc> | they result in the same sort of code |
| 19:37:21 | → | gioyik joins (~gioyik@190.67.155.46) |
| 19:37:41 | <Rembane> | dolio: Got it. Does this imply that they have proper tail recursion in the Javascript engines, because I see Javascript code that looks awfully lot like CPS |
| 19:37:42 | → | codygman joins (~codygman@2600:380:f900:eb14:1646:9538:6f47:89d5) |
| 19:38:16 | <dolio> | Some might now, but they've been doing CPS a lot longer than that. |
| 19:39:22 | → | GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 19:39:22 | × | GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 19:39:22 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 19:39:22 | <hpc> | setTimeout does a nice job of resetting things, in any event |
| 19:39:43 | × | GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 260 seconds) |
| 19:40:05 | × | proofofme quits (~proofofme@184-96-74-65.hlrn.qwest.net) (Ping timeout: 240 seconds) |
| 19:40:17 | <hpc> | or all sorts of browser built-in asynchronous stuff really |
| 19:40:25 | <hpc> | javascript tends to run in short bursts |
| 19:40:46 | <dolio> | It's specific stuff that uses that, though, because there's basically no other choice. If you tried to just turn some loops into CPS or something, you'd have a bad time. |
| 19:40:50 | <Rembane> | That's true. |
| 19:41:24 | <dolio> | They're using it for pseudo threading stuff, kind of. |
| 19:41:55 | × | jmsx quits (~jordan@li1158-85.members.linode.com) (Quit: bye o/) |
| 19:42:02 | × | knupfer quits (~Thunderbi@200116b82c6f4e003906994b36cffa11.dip.versatel-1u1.de) (Ping timeout: 260 seconds) |
| 19:42:04 | × | gioyik quits (~gioyik@190.67.155.46) (Ping timeout: 256 seconds) |
| 19:42:39 | × | geekosaur quits (ae68c070@cpe-174-104-192-112.neo.res.rr.com) (Remote host closed the connection) |
| 19:45:57 | <dolio> | Lack of sensible handling for this doesn't make much sense, but that's another topic, I guess. |
| 19:46:05 | × | alp quits (~alp@2a01:e0a:58b:4920:a554:1244:1f69:224d) (Ping timeout: 272 seconds) |
| 19:46:42 | × | recon_- quits (~quassel@2602:febc:0:b6::6ca2) (Ping timeout: 260 seconds) |
| 19:48:18 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 19:48:25 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 240 seconds) |
| 19:50:19 | → | recon_- joins (~quassel@208.87.96.9) |
| 19:52:46 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
| 19:54:18 | <dolio> | Rembane: By the way, "proper tail recursion," is what Scheme calls it, but I think it's a bad name, because it's not about recursion. |
| 19:55:13 | × | jchia__ quits (~jchia@58.32.37.146) (Quit: Leaving.) |
| 19:55:13 | <Rembane> | dolio: Is it the transformation of a recursive function that passes some test into a while-function they call proper tail recursion? |
| 19:55:28 | hackage | FunGEn 1.1 - A lightweight, cross-platform, OpenGL/GLUT-based game engine. https://hackage.haskell.org/package/FunGEn-1.1 (SimonMichael) |
| 19:55:32 | → | jchia__ joins (~jchia@58.32.37.146) |
| 19:55:49 | × | jchia__ quits (~jchia@58.32.37.146) (Client Quit) |
| 19:56:03 | <monochrom> | In Javascript and I suppose Python, you would both CPS and trampoline. |
| 19:56:05 | <dolio> | It says that it must be possible to perform an unbounded amount of tail calls (in a bounded amount of space). |
| 19:56:36 | × | conal quits (~conal@172.255.125.154) (Quit: Computer has gone to sleep.) |
| 19:56:58 | <monochrom> | CPS eliminates non-tail calls. To manually turn tail calls to jumps, you trampoline. |
| 19:57:11 | <monochrom> | s/ to / into / |
| 19:58:04 | → | knupfer joins (~Thunderbi@i59F7FFD6.versanet.de) |
| 20:00:30 | <dolio> | Specifically, if you only handle recursive procedures, CPS will ruin it, because CPS builds a heap-allocated function that does a ton of tail calls in a way that isn't obviously direct recursion. |
| 20:00:55 | <dolio> | So you need the tail calls in the continuation to behave well, too. |
| 20:01:07 | <Rembane> | It's turtles all the way down! |
| 20:01:16 | <dolio> | Otherwise you'll have an optimmized loop that builds a function that blows up the stack. |
| 20:01:25 | <monochrom> | The ridiculous length people would go to obfuscate their source code, just because "high-level" languages don't grow out of "stack is limited, heap is unlimited". |
| 20:01:53 | <monochrom> | forgetting that "I'm a high-level language, I am in a position to actually redefine what 'stack' and 'heap" mean". |
| 20:03:26 | <monochrom> | Yeah you will want to do general tail-call optimizations, not just tail-recursion optimizations. |
| 20:04:15 | × | pfurla quits (~pfurla@ool-182ed2e2.dyn.optonline.net) (Quit: gone to sleep. ZZZzzz…) |
| 20:04:16 | <Rembane> | Isn't this what we have good compilers for? Or at least decent runtime systems? |
| 20:04:45 | <dolio> | Most people use languages that don't. |
| 20:05:07 | <dolio> | Because they're industry standard and popular. |
| 20:05:49 | <dolio> | Languages with good compilers/runtimes are for ivory tower academics. |
| 20:06:12 | → | jmsx joins (~jordan@li1158-85.members.linode.com) |
| 20:06:13 | → | rprije joins (~rprije@110-175-117-18.tpgi.com.au) |
| 20:06:16 | × | isovector1 quits (~isovector@172.103.216.166.cable.tpia.cipherkey.com) (Remote host closed the connection) |
| 20:06:50 | <Rembane> | Well, then I prefer the ivory tower languages. |
| 20:08:38 | → | gioyik joins (~gioyik@190.67.155.46) |
| 20:10:02 | × | xff0x quits (~fox@2001:1a81:53f8:9f00:217d:12db:12d5:cd4c) (Ping timeout: 260 seconds) |
| 20:10:42 | → | xff0x joins (~fox@2001:1a81:53f8:9f00:7c69:3a05:36cd:a9b4) |
| 20:13:07 | × | gioyik quits (~gioyik@190.67.155.46) (Ping timeout: 246 seconds) |
| 20:13:24 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 20:15:40 | → | isovector1 joins (~isovector@172.103.216.166) |
| 20:16:46 | <sm[m]> | g'day all, I have released an update of https://github.com/haskell-game/fungen (simple 2d opengl-based game engine tested with ghc 8.8, 8.10) |
| 20:17:43 | → | conal joins (~conal@172.255.125.154) |
| 20:20:36 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 20:22:03 | → | pfurla joins (~pfurla@ool-182ed2e2.dyn.optonline.net) |
| 20:23:58 | → | contiver_ joins (~contiver@84-115-64-62.wifi.dynamic.surfer.at) |
| 20:24:35 | × | ggole quits (~ggole@2001:8003:8119:7200:a8c8:f35b:bee4:ed57) (Quit: Leaving) |
| 20:26:05 | × | contiver__ quits (~contiver@84-115-64-62.wifi.dynamic.surfer.at) (Ping timeout: 240 seconds) |
| 20:26:37 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 20:27:20 | × | dansho quits (~dansho@ip68-108-167-185.lv.lv.cox.net) (Quit: Leaving) |
| 20:33:45 | → | thir joins (~thir@p200300f27f2f0100d058ed1e9e148e98.dip0.t-ipconnect.de) |
| 20:34:55 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:706d:285c:8b0:9b3d) |
| 20:37:31 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 20:37:32 | <monochrom> | gcc does tail-call optimization when -O2 or above. To be sure, C has quite a few gotchas, so gcc is conservative about it. Still, the optimization happens with normal examples I've tried. |
| 20:38:11 | <monochrom> | In the Python case my recollection is Guido explicitly banned it, on ground of discouraging functional programming. |
| 20:38:57 | <dolio> | Yeah, gcc is a good compiler, I imagine. I don't think this discussion really applies to it, though. |
| 20:39:17 | <dolio> | There are other reasons you aren't doing CPS in C. |
| 20:39:33 | <koz_> | monochrom: Well, not his stated reason, but that was the outcome. |
| 20:39:37 | <koz_> | (stated reason was stack traces) |
| 20:40:30 | <dolio> | Maybe he should read about how to do both stack traces and good tail calls. There are decades-old papers on it. |
| 20:40:53 | <koz_> | dolio: Maybe, but argumentum ad serpentum, rofl. |
| 20:41:22 | × | perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 2.9) |
| 20:41:32 | × | conal quits (~conal@172.255.125.154) (Quit: Computer has gone to sleep.) |
| 20:41:52 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 20:41:55 | × | thir quits (~thir@p200300f27f2f0100d058ed1e9e148e98.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 20:42:28 | hackage | FunGEn 1.1 - A lightweight, cross-platform, OpenGL-based game engine. https://hackage.haskell.org/package/FunGEn-1.1 (SimonMichael) |
| 20:43:03 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 20:43:31 | <dolio> | There are also papers on how to do a JVM-like security model with tail calls, so that argument also doesn't work. :) |
| 20:43:36 | → | larou joins (5201f2b7@gateway/web/cgi-irc/kiwiirc.com/ip.82.1.242.183) |
| 20:43:43 | <monochrom> | Haha nice. |
| 20:43:47 | × | ephemera_ quits (~E@122.34.1.187) (Remote host closed the connection) |
| 20:43:49 | <larou> | im struggling to define cons opperations on cyclic structures |
| 20:44:24 | <larou> | im not sure if i can construct a mapping from the structures representation to the valid cons types |
| 20:44:27 | <monochrom> | This is what they get for deriding "academia ivory tower". |
| 20:44:36 | <koz_> | dolio: Hence, argumentum ad serpentum. |
| 20:45:04 | → | ephemera_ joins (~E@122.34.1.187) |
| 20:45:07 | <larou> | like, i can imagine something where i can only insert subsets of a particular shape |
| 20:45:17 | <monochrom> | Sorry, what is serpentum? |
| 20:45:38 | <larou> | eg, in a regular 2d plane, i cant just insert an extra vertex, i need to add an entire row or column at the same time |
| 20:45:46 | <larou> | otherwise it messes up the shape |
| 20:45:47 | × | stefan-__ quits (~cri@42dots.de) (Read error: Connection reset by peer) |
| 20:45:50 | <koz_> | monochrom: Python, snake, bad Latin. |
| 20:45:55 | <monochrom> | Oh hahaha |
| 20:45:59 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 20:46:10 | <monochrom> | Don't worry, I don't know Latin either. |
| 20:46:10 | → | stefan-__ joins (~cri@42dots.de) |
| 20:46:13 | <koz_> | Relevant: https://twitter.com/KozRoss/status/1317929052477427712 |
| 20:46:34 | <larou> | erm, so, then, if you have higher genus surfaces - then you get complicated permissible concatinations/insertions |
| 20:47:13 | → | conal joins (~conal@64.71.133.70) |
| 20:47:14 | <monochrom> | I was thinking "Cleopatra defied Octavia (future Augustus Caeser) by using a snake for suicide. Does that count as her agumentum ad serpentum against him?" |
| 20:47:23 | <larou> | and since these could deform the shape, eg, changing the genus - then you have a path of successive permissible insertion operator types |
| 20:47:29 | <koz_> | Octavia_n_. |
| 20:47:35 | <koz_> | 'Octavia' would be his daughter. |
| 20:47:44 | <monochrom> | Oh oops. I knew "ia" had to be wrong. |
| 20:47:48 | <larou> | and along different paths you would get different resulting shapes, and intermediate insertion types |
| 20:47:52 | <dolio> | I thought it was his sister. |
| 20:48:03 | <koz_> | dolio: Also a possibility. |
| 20:48:07 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
| 20:48:22 | <dolio> | I suppose it could be both. |
| 20:48:39 | <dolio> | Reusing names. |
| 20:49:05 | <koz_> | Name shadowing! |
| 20:49:08 | <larou> | and then, you would want to be able to determine the types of the insertion opperations, so that you could create the corresponding insertion operations as values |
| 20:49:38 | × | patrick1 quits (~tarpk@ool-182dc9b3.dyn.optonline.net) (Quit: WeeChat 2.8) |
| 20:49:39 | <larou> | depending on which path was taken in successively altering the architecture |
| 20:49:39 | × | knupfer quits (~Thunderbi@i59F7FFD6.versanet.de) (Ping timeout: 260 seconds) |
| 20:50:18 | <larou> | such as if there was a way to generate elements to insert, such as if they have defaults such as zeros (eg, a zeroed neuron) |
| 20:50:53 | <larou> | then a type level specification of the path taken over the branching choices of permissible insertion operator types |
| 20:51:11 | <larou> | could be used to construct initial values of containers of the overall resulting shape |
| 20:52:04 | × | zz01 quits (~xyz@210.18.180.63) (Ping timeout: 265 seconds) |
| 20:52:53 | <larou> | for example, if i have a higher dimensional torus, then i can take a plane section through it in various ways that give bands along which elements can be inserted to preserve the shape (there needs to be 4 edges to neighbours for each vertex - so you cant just inert a verted at some point without messing up the edges) |
| 20:53:32 | → | alp joins (~alp@2a01:e0a:58b:4920:3c60:f5ab:1cfc:cd5) |
| 20:53:44 | <larou> | and eg, you could imagine adding or removing punctures to get higher genus manifolds, again with a correspondingly typed insertion opperator |
| 20:53:59 | ChanServ | sets mode +o monochrom |
| 20:54:03 | monochrom | sets mode +b *!*@gateway/web/cgi-irc/kiwiirc.com/ip.82.1.242.183 |
| 20:54:03 | larou | is kicked by monochrom (larou) |
| 20:54:10 | monochrom | sets mode -o monochrom |
| 20:54:30 | <koz_> | Wait, were they fogging? |
| 20:54:34 | <monochrom> | (Don't hesitate to object, if you want them back.) |
| 20:54:49 | <koz_> | I didn't see. |
| 20:55:27 | <monochrom> | HIgh similarity to fogging, yeah. |
| 20:55:43 | <monochrom> | has been like that for days. |
| 20:56:14 | → | geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) |
| 20:56:22 | <koz_> | Yeah, that's definitely been a thing. |
| 20:56:37 | <koz_> | So what, it's now called 'larouing'? |
| 20:56:48 | × | steve__ quits (~quassel@ool-18b99d28.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 20:56:49 | × | steve_ quits (~quassel@ool-18b99d28.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 20:57:03 | <monochrom> | I think "fogging" it is. Like "xeroxing" even when you use a Canon. :) |
| 20:57:03 | → | steve_ joins (~quassel@ool-18b99d28.dyn.optonline.net) |
| 20:57:03 | → | steve__ joins (~quassel@ool-18b99d28.dyn.optonline.net) |
| 20:57:08 | × | dhil quits (~dhil@78.156.97.38) (Ping timeout: 272 seconds) |
| 20:57:27 | <koz_> | monochrom: Sure, can dig. |
| 20:57:56 | → | dftxbs3e joins (~dftxbs3e@unaffiliated/dftxbs3e) |
| 20:59:26 | × | ephemera_ quits (~E@122.34.1.187) (Quit: No Ping reply in 180 seconds.) |
| 21:00:02 | × | chief19831 quits (~chief1983@178.162.204.238) () |
| 21:00:48 | <Buntspecht> | What does "fogging" refers to here? |
| 21:00:56 | → | ephemera_ joins (~E@122.34.1.187) |
| 21:01:37 | <monochrom> | You would have to look through past IRC logs (eg the urls in the channel topic) and look for the nick "fog". |
| 21:02:07 | × | mananamenos__ quits (~mananamen@vpn237-247.vpns.upv.es) (Ping timeout: 246 seconds) |
| 21:02:19 | <monochrom> | I guess TLDR they mistook #haskell for personal twitter/blog. |
| 21:02:34 | <Uniaika> | I another guy who does that |
| 21:02:42 | <Uniaika> | day-long monologues |
| 21:03:06 | <Buntspecht> | Oh, I thought it's a specifc term for some kind of bad activity :p |
| 21:03:07 | → | perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 21:03:09 | → | gioyik joins (~gioyik@190.67.155.46) |
| 21:03:13 | <Buntspecht> | like "spamming" |
| 21:03:18 | <dolio> | It is. :) |
| 21:03:29 | <koz_> | It's a specific form of spamming. |
| 21:03:34 | <koz_> | (a subtype, a dare say) |
| 21:03:40 | <dolio> | Named after the perpetrator. |
| 21:03:41 | <koz_> | s/a /I / |
| 21:04:17 | <Rembane> | I'm considering building a larou-fog-bot and putting it in a very lonely chat room. |
| 21:04:27 | × | xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 258 seconds) |
| 21:04:33 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 21:05:00 | <koz_> | Rembane: Are you truly _that_ bored? |
| 21:05:04 | → | wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) |
| 21:06:31 | → | olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber) |
| 21:06:43 | × | ech quits (~user@gateway/tor-sasl/ech) (Ping timeout: 240 seconds) |
| 21:07:22 | × | ski quits (~ski@nc-2504-30.studat.chalmers.se) (Ping timeout: 246 seconds) |
| 21:07:31 | <Rembane> | koz_: Not yet, but it struck me that it would be a baller Dr. Evil move. |
| 21:07:41 | <koz_> | Rembane: Yes, this. |
| 21:07:54 | <Rembane> | koz_: I want ... one. Million. Dollars! |
| 21:08:03 | → | hekkaidekapus} joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 21:08:08 | <koz_> | Rembane: *evil laughter* |
| 21:08:24 | × | gioyik quits (~gioyik@190.67.155.46) (Ping timeout: 260 seconds) |
| 21:08:28 | <Rembane> | ^^ |
| 21:09:04 | → | gioyik joins (~gioyik@190.67.155.46) |
| 21:09:30 | → | thir joins (~thir@p200300f27f2f0100d058ed1e9e148e98.dip0.t-ipconnect.de) |
| 21:09:43 | × | hekkaidekapus{ quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds) |
| 21:10:20 | → | ech joins (~user@gateway/tor-sasl/ech) |
| 21:10:26 | × | contiver_ quits (~contiver@84-115-64-62.wifi.dynamic.surfer.at) (Ping timeout: 265 seconds) |
| 21:11:07 | → | dhil joins (~dhil@195.213.192.122) |
| 21:12:25 | × | jsynacek quits (~jsynacek@ip-185-149-130-112.kmenet.cz) (Ping timeout: 240 seconds) |
| 21:12:53 | × | isovector1 quits (~isovector@172.103.216.166) (Ping timeout: 258 seconds) |
| 21:13:59 | × | thir quits (~thir@p200300f27f2f0100d058ed1e9e148e98.dip0.t-ipconnect.de) (Ping timeout: 244 seconds) |
| 21:14:18 | × | justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 246 seconds) |
| 21:15:22 | × | kritzefitz quits (~kritzefit@212.86.56.80) (Remote host closed the connection) |
| 21:18:25 | × | dwt quits (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 240 seconds) |
| 21:20:54 | <tomsmeding> | the last IP that fog connected from is the same that larou has been connecting from this week |
| 21:20:59 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 21:21:38 | → | micahsovereign[m joins (micahsover@gateway/shell/matrix.org/x-fdcktwkiurzttdbm) |
| 21:21:49 | <tomsmeding> | though I don't know what the ip address in the origin string of kiwiirc means exactly, it might be the kiwiirc instance |
| 21:22:05 | → | eam1 joins (~eam@185.244.214.216) |
| 21:22:37 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 21:27:15 | → | conal joins (~conal@64.71.133.70) |
| 21:27:22 | → | ransom joins (~c4264035@75-166-195-170.hlrn.qwest.net) |
| 21:32:08 | → | dwt joins (~dwt@c-98-200-58-177.hsd1.tx.comcast.net) |
| 21:33:00 | × | mmkarakaya quits (b0584711@gateway/web/cgi-irc/kiwiirc.com/ip.176.88.71.17) (Quit: Connection closed) |
| 21:38:11 | × | hiroaki quits (~hiroaki@2a02:908:4b18:e20::e363) (Ping timeout: 272 seconds) |
| 21:38:21 | <maerwald> | IRC needs threads, like slack has |
| 21:38:56 | <maerwald> | then it would be one line instead of 1000 |
| 21:39:57 | hackage | FunGEn 1.1.1 - A lightweight, cross-platform, OpenGL-based game engine. https://hackage.haskell.org/package/FunGEn-1.1.1 (SimonMichael) |
| 21:41:38 | → | fendor joins (~fendor@77.119.130.12.wireless.dyn.drei.com) |
| 21:41:48 | × | Ariakenom quits (~Ariakenom@h-82-196-111-189.NA.cust.bahnhof.se) (Quit: Leaving) |
| 21:43:43 | → | Jeanne-Kamikaze joins (~Jeanne-Ka@68.235.43.102) |
| 21:48:09 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 21:51:06 | × | wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Quit: leaving) |
| 21:54:56 | → | novium joins (4e46a930@78-70-169-48-no110.tbcn.telia.com) |
| 21:55:39 | → | christo joins (~chris@81.96.113.213) |
| 21:55:48 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 21:57:53 | → | oisdk joins (~oisdk@2001:bb6:3329:d100:5538:baf2:3212:5e91) |
| 21:59:31 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 22:01:41 | × | fendor quits (~fendor@77.119.130.12.wireless.dyn.drei.com) (Remote host closed the connection) |
| 22:02:30 | × | __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving) |
| 22:03:31 | × | Psycomic quits (~Phi@2a01:e0a:18:d0a0:ec74:a9c1:d5eb:2ab6) (Ping timeout: 272 seconds) |
| 22:06:03 | × | danvet_ quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds) |
| 22:06:46 | × | solonarv quits (~solonarv@anancy-651-1-202-101.w109-217.abo.wanadoo.fr) (Read error: Connection reset by peer) |
| 22:07:39 | → | solonarv joins (~solonarv@anancy-651-1-202-101.w109-217.abo.wanadoo.fr) |
| 22:09:27 | × | geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 260 seconds) |
| 22:09:45 | × | dhil quits (~dhil@195.213.192.122) (Ping timeout: 240 seconds) |
| 22:11:01 | → | rnat2 joins (uid73555@gateway/web/irccloud.com/x-yzboehgctiytendp) |
| 22:11:27 | × | chaosmasttter quits (~chaosmast@p200300c4a710fa01f8ce4354cf8ba13b.dip0.t-ipconnect.de) (Quit: WeeChat 2.9) |
| 22:12:05 | → | wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) |
| 22:12:15 | × | supercoven quits (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (Ping timeout: 260 seconds) |
| 22:14:05 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 22:15:02 | × | DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Ping timeout: 272 seconds) |
| 22:15:25 | × | novium quits (4e46a930@78-70-169-48-no110.tbcn.telia.com) (Remote host closed the connection) |
| 22:17:30 | × | invaser quits (~Thunderbi@31.148.23.125) (Ping timeout: 256 seconds) |
| 22:19:28 | → | geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) |
| 22:20:53 | → | djellemah joins (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54) |
| 22:22:30 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 22:22:39 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Remote host closed the connection) |
| 22:22:56 | → | GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 22:22:56 | × | GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 22:22:56 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 22:26:55 | × | dirediresalt quits (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection) |
| 22:27:43 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 22:33:26 | × | ephemera_ quits (~E@122.34.1.187) (Read error: Connection reset by peer) |
| 22:34:19 | → | ensyde joins (~ensyde@2600:1702:2e30:1a40:e4b3:9206:daf1:55c1) |
| 22:34:35 | → | ephemera_ joins (~E@122.34.1.187) |
| 22:38:28 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 22:42:25 | → | seanvert joins (~user@177.84.244.242) |
| 22:47:42 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Remote host closed the connection) |
| 22:48:01 | → | GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 22:48:01 | × | GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 22:48:01 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 22:49:25 | × | ransom quits (~c4264035@75-166-195-170.hlrn.qwest.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 22:51:29 | → | texasmynsted joins (688c3593@104.140.53.147) |
| 22:53:12 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 22:53:37 | <texasmynsted> | I am reading a `tsv` file to get my good/bad URLs into a List of pairs. This looks awkward, especially in the redirectMapToPair bit. |
| 22:54:07 | <texasmynsted> | The `main` I simply have it printing the list that I want so I can see if it is what I expect... |
| 22:54:27 | <texasmynsted> | Any suggestions on how to improve this? https://gist.github.com/mmynsted/bc2fc5c083c5d27ebfd5aab8bb8bc6c3 |
| 22:55:54 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 22:57:28 | × | olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 272 seconds) |
| 22:57:44 | <texasmynsted> | I am leaving TH for another day. |
| 22:57:55 | <texasmynsted> | I am sure it would be a better solution. |
| 23:03:40 | × | theelous3 quits (~theelous3@unaffiliated/theelous3) (Read error: Connection reset by peer) |
| 23:03:41 | → | conal joins (~conal@64.71.133.70) |
| 23:04:13 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:706d:285c:8b0:9b3d) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 23:05:00 | <texasmynsted> | Is anybody here? |
| 23:05:43 | <koz_> | texasmynsted: People are, but might be unresponsive. |
| 23:05:51 | <texasmynsted> | heh |
| 23:05:55 | <koz_> | It varies by time of day, and also by what you're asking. |
| 23:05:56 | <texasmynsted> | I can relate to that |
| 23:07:31 | × | hnOsmium0001 quits (uid453710@gateway/web/irccloud.com/x-uekbwohrzbmaorkq) (Quit: Connection closed for inactivity) |
| 23:08:07 | × | alp quits (~alp@2a01:e0a:58b:4920:3c60:f5ab:1cfc:cd5) (Ping timeout: 272 seconds) |
| 23:08:46 | <texasmynsted> | One thing that bothers me is there feels like there must be a better way to transform a data to a tuple |
| 23:08:46 | → | conal_ joins (~conal@66.115.157.49) |
| 23:08:47 | <texasmynsted> | example |
| 23:08:50 | → | nados joins (~dan@69-165-210-185.cable.teksavvy.com) |
| 23:08:57 | <texasmynsted> | (RedirectMap bad good) = (,) bad good |
| 23:09:51 | <koz_> | You have a FromRecord instance for tuples. |
| 23:09:54 | <texasmynsted> | where data RedirectMap= RedirectMap { badUrl :: String, goodUrl :: String } |
| 23:09:55 | <koz_> | So you can just use that. |
| 23:10:02 | <koz_> | It'd be like |
| 23:10:11 | <koz_> | (,) <$> parseField <*> parseField |
| 23:10:12 | <texasmynsted> | oh. Thank you. I will check it out |
| 23:11:03 | × | conal quits (~conal@64.71.133.70) (Ping timeout: 260 seconds) |
| 23:12:45 | → | olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber) |
| 23:15:01 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 23:15:30 | × | ephemera_ quits (~E@122.34.1.187) (Remote host closed the connection) |
| 23:16:47 | → | ephemera_ joins (~E@122.34.1.187) |
| 23:20:01 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 264 seconds) |
| 23:21:18 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Ping timeout: 258 seconds) |
| 23:23:19 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:8084:b111:4aaf:f484) (Ping timeout: 272 seconds) |
| 23:29:06 | × | conal_ quits (~conal@66.115.157.49) (Quit: Computer has gone to sleep.) |
| 23:29:33 | → | seanvert` joins (~user@177.84.244.242) |
| 23:29:48 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 23:30:03 | × | karanlikmadde quits (~karanlikm@2a01:c22:ac16:a100:a874:6bad:ee0e:3b97) (Quit: karanlikmadde) |
| 23:31:33 | → | conal joins (~conal@66.115.157.49) |
| 23:31:53 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 23:32:16 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:706d:285c:8b0:9b3d) |
| 23:32:18 | × | seanvert quits (~user@177.84.244.242) (Ping timeout: 272 seconds) |
| 23:34:57 | → | christo joins (~chris@81.96.113.213) |
| 23:35:52 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 23:36:06 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:a53c:4941:44e2:1e75) |
| 23:36:15 | × | elliott_ quits (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 260 seconds) |
| 23:37:00 | → | elliott_ joins (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) |
| 23:45:54 | × | solonarv quits (~solonarv@anancy-651-1-202-101.w109-217.abo.wanadoo.fr) (Ping timeout: 256 seconds) |
| 23:46:15 | → | christo joins (~chris@81.96.113.213) |
| 23:48:07 | → | mirrorbird joins (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) |
| 23:48:50 | × | Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa) |
| 23:49:39 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 23:50:03 | → | thir joins (~thir@p200300f27f2f0100d058ed1e9e148e98.dip0.t-ipconnect.de) |
| 23:52:09 | → | irc_user joins (uid423822@gateway/web/irccloud.com/x-wddvdkxotqakcvrc) |
| 23:52:41 | → | xerox_ joins (~xerox@unaffiliated/xerox) |
| 23:54:19 | × | jedws quits (~jedws@121.209.161.98) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 23:54:24 | × | geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 256 seconds) |
| 23:54:25 | × | thir quits (~thir@p200300f27f2f0100d058ed1e9e148e98.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 23:54:53 | → | justanotheruser joins (~justanoth@unaffiliated/justanotheruser) |
| 23:57:30 | → | da39a3ee5e6b4b0d joins (~textual@n11211935170.netvigator.com) |
| 23:58:03 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 23:59:05 | → | hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-bbbnvzthyixtprkj) |
| 23:59:32 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
All times are in UTC on 2020-10-18.