Logs on 2023-11-19 (liberachat/#haskell)
| 00:04:24 | × | Katarushisu1 quits (~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Quit: Ping timeout (120 seconds)) |
| 00:04:40 | → | Katarushisu1 joins (~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) |
| 00:05:21 | × | trev quits (~trev@user/trev) (Quit: trev) |
| 00:12:36 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 00:13:59 | → | [_] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 00:15:49 | <John_Ivan> | for what distro is haskell mainly designed for? |
| 00:15:57 | <John_Ivan> | GHCup* |
| 00:16:34 | <zero> | why would you think it's designed for a specific distro? |
| 00:17:03 | <John_Ivan> | simply because the command to install it that it asks me to copy paste in my terminal doesn't seem to cover the fact that some extra dependencies are needed |
| 00:17:27 | <John_Ivan> | indeed it tells me of those dependencies. but I can't be bothered. |
| 00:17:32 | <John_Ivan> | to install them manually |
| 00:17:42 | <John_Ivan> | I tried this on opensuse, ubuntu and fedora. |
| 00:17:52 | <John_Ivan> | all 3 lack the necessary tools on a fresh install |
| 00:17:53 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 00:18:07 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 276 seconds) |
| 00:18:32 | <John_Ivan> | as for why I'm doing this; because I like to live in a perfect world where things work out of the box |
| 00:18:47 | <zero> | you can see which dependencies are needed for your system here https://www.haskell.org/ghcup/install/ |
| 00:19:00 | <John_Ivan> | <John_Ivan> indeed it tells me of those dependencies. but I can't be bothered. |
| 00:19:18 | <duncan> | This sounds like it might be a 'you' problem |
| 00:19:19 | <John_Ivan> | I need a distro that comes with everything preinstalled offline |
| 00:19:27 | <John_Ivan> | nah. it's a policy problem. |
| 00:19:36 | <John_Ivan> | my policy versus the development community policy |
| 00:19:53 | <John_Ivan> | anyway if no one has an answer, I'll go look around |
| 00:19:57 | <duncan> | OK, install the dependencies in accordance with your policy, then |
| 00:20:28 | <EvanR> | I've thrown together such a linux distribution for work before |
| 00:20:30 | <John_Ivan> | duncan, as good an answer as any then. thanks. |
| 00:20:33 | <EvanR> | had everything it needed out of the box |
| 00:21:02 | <EvanR> | you can have it if you want |
| 00:21:04 | × | chomwitt quits (~chomwitt@ppp-94-67-202-40.home.otenet.gr) (Ping timeout: 255 seconds) |
| 00:21:04 | <zero> | John_Ivan: maybe the devs also "can't be bothered" |
| 00:21:11 | <zero> | i guess we all have our own motivations |
| 00:21:22 | <John_Ivan> | EvanR, I'm sure I could have had it already if you intended in giving it to me. |
| 00:21:26 | <zero> | such is life |
| 00:21:36 | <John_Ivan> | zero, well, that's why we live in the world we do. |
| 00:21:41 | <duncan> | / |
| 00:21:45 | <duncan> | er, ignore |
| 00:21:45 | <EvanR> | it's on a CD-ROM so no |
| 00:24:26 | <John_Ivan> | EvanR, I hear Pop_OS! usually comes with development tools preinstalled |
| 00:24:28 | <zero> | it would be nice if everything worked out of the box with minimal effort. unfortunately packaging such a product takes time and (continuous!) effort so unless the dev has a stron motivation for you to run their software, there's little sense in doing so i think. |
| 00:24:56 | <John_Ivan> | zero, things not working out of the box is not nice. it's a defacto. |
| 00:25:05 | <John_Ivan> | is not "nice". |
| 00:25:18 | <EvanR> | I can't see reference to PopOS! without reading PoOpS! |
| 00:25:32 | <John_Ivan> | EvanR, :) |
| 00:25:36 | <zero> | it's very sensible to assume that the target audience is more than capable of installing software from source and managing dependencies |
| 00:25:55 | <EvanR> | I would like microsoft windows to come with development environment already set up |
| 00:26:07 | <John_Ivan> | EvanR, I would too. |
| 00:26:23 | × | tomboy64 quits (~tomboy64@user/tomboy64) (Ping timeout: 264 seconds) |
| 00:26:35 | <zero> | i would like food to magically appear in my mouth, already chewed whenever i'm hungry |
| 00:26:36 | <John_Ivan> | in fact, part of my belief is that an OS, whether it's for consumer or developer, should come preinstalled with development kits |
| 00:26:37 | <EvanR> | esp if I'm paying for it |
| 00:26:50 | <John_Ivan> | zero, you can do that. just buy paste. |
| 00:27:25 | <zero> | John_Ivan: you mean leave the house and go to a place searching for paste? that sounds like a lot of work |
| 00:27:47 | <monochrom> | Already chewed? Eww. |
| 00:27:54 | <John_Ivan> | zero, that's why we have ordering online |
| 00:28:03 | <John_Ivan> | so you don't have to do all that work |
| 00:28:10 | → | kritty joins (~crumb@c-76-155-235-153.hsd1.co.comcast.net) |
| 00:28:18 | <monochrom> | But: good, fast, free: pick two. |
| 00:28:24 | <zero> | John_Ivan: they mess up the orders all the time. it's "not nice" |
| 00:28:50 | <John_Ivan> | zero, find a different provider. |
| 00:28:57 | <John_Ivan> | just like I'm trying to find a different distro. |
| 00:29:04 | <zero> | John_Ivan: i guess there's your answer then |
| 00:29:15 | <John_Ivan> | doesn't hurt to ask beforehand. |
| 00:29:49 | <John_Ivan> | monochrom, in my world, you have all 3 or it's not software. |
| 00:29:58 | <zero> | it's a bad answer to a bad question, but if that's the bar you're setting that's the bar you're setting |
| 00:29:58 | <John_Ivan> | it's a charlatan project. |
| 00:30:19 | <geekosaur> | reality is that developers are a small subset of users so are not considered. and if they were, they would provide Python and JS development tools, not C or Haskell |
| 00:30:19 | <John_Ivan> | monochrom, because you *can* have all three. |
| 00:30:52 | <John_Ivan> | anyway my question was answered. move along. |
| 00:30:54 | <John_Ivan> | \next. |
| 00:32:21 | <zero> | John_Ivan: i can't believe you're changing distros instead of installing the missing dependecies |
| 00:32:33 | <zero> | tell me you're joking :'D |
| 00:32:44 | <monochrom> | I think this "discussion" has outlived its usefulness. |
| 00:33:00 | <geekosaur> | if it was ever useful |
| 00:33:16 | → | tomboy64 joins (~tomboy64@user/tomboy64) |
| 00:33:19 | → | michalz joins (~michalz@185.246.207.201) |
| 00:36:14 | × | michalz quits (~michalz@185.246.207.201) (Remote host closed the connection) |
| 00:36:56 | × | litharge quits (litharge@libera/bot/litharge) (Killed (glguy (reconnect))) |
| 00:36:58 | → | litharge joins (litharge@libera/bot/litharge) |
| 00:41:22 | × | misterfish quits (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 264 seconds) |
| 00:43:28 | × | Jackneill quits (~Jackneill@20014C4E1E1AA200C935E3B989BE2359.dsl.pool.telekom.hu) (Ping timeout: 276 seconds) |
| 00:49:45 | × | kritty quits (~crumb@c-76-155-235-153.hsd1.co.comcast.net) (Quit: Leaving) |
| 00:52:21 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 00:54:01 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 00:56:35 | <John_Ivan> | geekosaur, agreed. |
| 00:59:15 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 01:09:36 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:4c99:f3ba:7425:36f4) (Remote host closed the connection) |
| 01:32:05 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 252 seconds) |
| 01:44:31 | zero | is now known as zzz |
| 01:45:29 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 01:48:19 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) |
| 01:48:46 | → | vilya_ joins (~vilya@user/vilya) |
| 01:48:47 | × | tomboy64 quits (~tomboy64@user/tomboy64) (Read error: Connection reset by peer) |
| 01:48:52 | → | tomboy65 joins (~tomboy64@user/tomboy64) |
| 01:49:46 | × | vilya quits (~vilya@user/vilya) (Ping timeout: 276 seconds) |
| 01:50:15 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 01:53:01 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) (Ping timeout: 276 seconds) |
| 01:54:29 | → | ubert1 joins (~Thunderbi@91.141.50.137.wireless.dyn.drei.com) |
| 01:56:23 | × | ubert quits (~Thunderbi@178.165.183.118.wireless.dyn.drei.com) (Ping timeout: 264 seconds) |
| 01:56:23 | ubert1 | is now known as ubert |
| 01:59:20 | → | eggplantade joins (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
| 02:00:17 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 02:00:54 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:08:14 | × | otto_s quits (~user@p4ff27872.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 02:09:36 | → | otto_s joins (~user@p4ff27599.dip0.t-ipconnect.de) |
| 02:17:19 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 02:17:52 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:28:45 | × | gooba quits (~gooba@90-231-13-185-no3430.tbcn.telia.com) (Remote host closed the connection) |
| 02:29:22 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 02:29:58 | → | gooba joins (~gooba@90-231-13-185-no3430.tbcn.telia.com) |
| 02:32:14 | × | myxokephale quits (~myxos@065-028-251-121.inf.spectrum.com) (Remote host closed the connection) |
| 02:34:27 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 02:36:09 | × | zetef quits (~quassel@5.2.182.98) (Ping timeout: 256 seconds) |
| 02:38:55 | → | g00gler joins (uid125351@id-125351.uxbridge.irccloud.com) |
| 02:45:14 | × | mima quits (~mmh@aftr-62-216-211-150.dynamic.mnet-online.de) (Ping timeout: 252 seconds) |
| 02:45:39 | → | icaro joins (~icaro@45-230-145-51.idealnetfibra.net.br) |
| 02:46:09 | icaro | is now known as second_player |
| 02:50:29 | × | second_player quits (~icaro@45-230-145-51.idealnetfibra.net.br) (Quit: Leaving.) |
| 02:50:47 | → | icaro joins (~icaro@45-230-145-51.idealnetfibra.net.br) |
| 02:50:54 | × | icaro quits (~icaro@45-230-145-51.idealnetfibra.net.br) (Client Quit) |
| 02:51:51 | → | second_player joins (~second_pl@45-230-145-51.idealnetfibra.net.br) |
| 03:07:23 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 03:11:00 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Client Quit) |
| 03:18:34 | × | second_player quits (~second_pl@45-230-145-51.idealnetfibra.net.br) (Ping timeout: 264 seconds) |
| 03:18:49 | × | td_ quits (~td@i53870912.versanet.de) (Ping timeout: 276 seconds) |
| 03:20:05 | → | td_ joins (~td@i53870935.versanet.de) |
| 03:22:13 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 03:22:13 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 03:22:13 | finn_elija | is now known as FinnElija |
| 03:29:18 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 03:34:34 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 03:40:41 | → | lisbeths joins (uid135845@id-135845.lymington.irccloud.com) |
| 03:45:52 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 03:49:58 | × | ddellacosta quits (~ddellacos@ool-44c738de.dyn.optonline.net) (Ping timeout: 255 seconds) |
| 03:50:58 | → | ddellacosta joins (~ddellacos@ool-44c738de.dyn.optonline.net) |
| 04:06:17 | → | aforemny_ joins (~aforemny@2001:9e8:6cc8:5c00:9c1a:8ed9:7b58:2dc2) |
| 04:07:42 | × | aforemny quits (~aforemny@2001:9e8:6ce3:3d00:71a8:d847:f310:db9e) (Ping timeout: 260 seconds) |
| 04:39:42 | → | jmd_ joins (~jmdaemon@user/jmdaemon) |
| 04:40:49 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 256 seconds) |
| 04:47:15 | × | [exa] quits (~exa@srv3n.blesmrt.net) (Ping timeout: 268 seconds) |
| 04:47:23 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 04:47:55 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 04:48:56 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 04:49:19 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 04:50:02 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:51:09 | → | qqq joins (~qqq@92.43.167.61) |
| 05:04:32 | → | guy joins (~guy@250.79-105-213.static.virginmediabusiness.co.uk) |
| 05:31:34 | × | waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 255 seconds) |
| 05:38:53 | → | trev joins (~trev@user/trev) |
| 05:43:04 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 05:45:50 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Client Quit) |
| 05:51:10 | × | YuutaW quits (~YuutaW@mail.yuuta.moe) (Ping timeout: 245 seconds) |
| 05:53:51 | → | madoff joins (~madoff@154.159.237.229) |
| 05:58:36 | × | madoff quits (~madoff@154.159.237.229) (Quit: Leaving) |
| 05:59:08 | → | rosco joins (~rosco@175.136.157.149) |
| 06:05:15 | × | ddellacosta quits (~ddellacos@ool-44c738de.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 06:07:11 | → | ddellacosta joins (~ddellacos@ool-44c738de.dyn.optonline.net) |
| 06:09:05 | <haskellbridge> | 14<maerwald> Try stack |
| 06:09:19 | <haskellbridge> | 14<maerwald> It invokes sudo for you if you're into that sort of thing |
| 06:11:15 | <guy> | sorry, my bad |
| 06:11:53 | <guy> | what about chmod 7777 |
| 06:12:15 | <c_wraith> | that nearly always breaks things. |
| 06:12:22 | <c_wraith> | You probably shouldn't do that. ever. |
| 06:12:31 | <guy> | too much dark materia |
| 06:13:35 | <guy> | yeah, in the thing its a metaphorical refference for, it just sends the charicter into a repeated frenzy of attacks that each take 7777 health |
| 06:14:16 | <guy> | and because it cant be interupted it always defeats the enimy, but it only ever happens if you have 7777 health yourself |
| 06:14:39 | <guy> | where then your attack is eaxtly as powerful as it would take to kill you exactly |
| 06:15:20 | <guy> | but obviosly you never do it on yourself so its ok |
| 06:16:27 | <guy> | by then i think weer into chown territory legit |
| 06:17:32 | <guy> | some obscure ff7 reference from the future im *sure* is exactly what its most likely to *actually* be from |
| 06:20:36 | × | guy quits (~guy@250.79-105-213.static.virginmediabusiness.co.uk) (Quit: Connection closed) |
| 06:23:56 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 06:25:42 | → | YuutaW joins (~YuutaW@mail.yuuta.moe) |
| 06:30:14 | × | lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 06:39:13 | × | bitmapper quits (uid464869@id-464869.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 06:45:57 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 07:01:40 | × | analoq_ quits (~yashi@user/dies) (Ping timeout: 255 seconds) |
| 07:03:09 | → | analoq joins (~yashi@user/dies) |
| 07:30:19 | → | zetef joins (~quassel@5.2.182.98) |
| 07:38:20 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 07:39:22 | × | robobub quits (uid248673@id-248673.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 07:48:47 | → | acidjnk joins (~acidjnk@p200300d6e72b9399e0d3f8384e141d02.dip0.t-ipconnect.de) |
| 08:03:13 | → | Simikando joins (~Simikando@adsl-dyn216.91-127-84.t-com.sk) |
| 08:13:44 | → | Allzman joins (~Allzman@66.154.104.213) |
| 08:14:56 | <Allzman> | Hello |
| 08:22:54 | → | lisbeths joins (uid135845@id-135845.lymington.irccloud.com) |
| 08:26:59 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds) |
| 08:27:26 | → | euleritian joins (~euleritia@dynamic-002-247-249-092.2.247.pool.telefonica.de) |
| 08:31:34 | <Allzman> | hello euleritian |
| 08:32:18 | × | euleritian quits (~euleritia@dynamic-002-247-249-092.2.247.pool.telefonica.de) (Read error: Connection reset by peer) |
| 08:32:36 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 08:34:14 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
| 08:34:59 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 08:40:29 | × | econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
| 08:44:18 | → | fendor joins (~fendor@2a02:8388:1640:be00:2528:5dc7:a36e:9b87) |
| 08:45:49 | → | Tuplanolla joins (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) |
| 08:46:35 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds) |
| 08:47:25 | → | euleritian joins (~euleritia@dynamic-002-247-249-092.2.247.pool.telefonica.de) |
| 08:47:48 | × | trev quits (~trev@user/trev) (Quit: trev) |
| 08:55:33 | <Axman6> | hello Allzman |
| 08:55:41 | <Allzman> | Hi |
| 08:55:46 | <Allzman> | Axman6 |
| 08:56:10 | <Allzman> | fan of haskell? |
| 08:56:32 | → | idgaen joins (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 08:58:41 | <ski> | do you have any question ? |
| 09:00:48 | <Allzman> | i would like to know about example repository of haskell |
| 09:03:04 | <Axman6> | There's quite a lot of them on GitHub, is there anything in particular you're inteerested in? |
| 09:03:23 | → | DeFutura joins (~DeFutura@2a01:5a8:306:eaf8:192c:25eb:2252:2a8b) |
| 09:03:26 | <Allzman> | nothing |
| 09:03:38 | <Allzman> | and there is any channel for haskell job seekers? |
| 09:06:13 | × | dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 255 seconds) |
| 09:07:13 | <DeFutura> | Hey all, is there a way to setup a project to implicitly pack and unpack Strings and Text (when function requires String but using Text by default for declarations) . |
| 09:08:02 | → | misterfish joins (~misterfis@84-53-85-146.bbserv.nl) |
| 09:08:46 | <DeFutura> | so if some module exports functions that expect String just to pass to them Text without needing to unpack |
| 09:10:49 | → | dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 09:11:56 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 09:16:04 | <haskellbridge> | 14<maerwald> only for literals, via OverloadedStrings extension |
| 09:16:16 | → | Jackneill joins (~Jackneill@20014C4E1E1AA2000F2D4B0C673AE70E.dsl.pool.telekom.hu) |
| 09:16:30 | <haskellbridge> | 14<maerwald> there's no type coercion |
| 09:21:53 | × | fendor quits (~fendor@2a02:8388:1640:be00:2528:5dc7:a36e:9b87) (Ping timeout: 256 seconds) |
| 09:24:13 | × | dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 255 seconds) |
| 09:28:17 | <DeFutura> | Ok thx , I already use OverloadedStrings |
| 09:30:35 | <haskellbridge> | 14<maerwald> it's buggy on bytestrings btw |
| 09:31:28 | × | tzh quits (~tzh@c-71-193-181-0.hsd1.or.comcast.net) (Quit: zzz) |
| 09:33:54 | × | eggplantade quits (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 09:36:56 | → | gmg joins (~user@user/gehmehgeh) |
| 09:37:23 | → | _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
| 09:51:34 | × | Simikando quits (~Simikando@adsl-dyn216.91-127-84.t-com.sk) (Remote host closed the connection) |
| 10:02:44 | → | sawilagar joins (~sawilagar@user/sawilagar) |
| 10:04:47 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds) |
| 10:05:37 | × | misterfish quits (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 255 seconds) |
| 10:05:41 | × | euleritian quits (~euleritia@dynamic-002-247-249-092.2.247.pool.telefonica.de) (Read error: Connection reset by peer) |
| 10:06:00 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 10:08:37 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) |
| 10:09:09 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 10:13:10 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds) |
| 10:13:32 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 10:13:49 | → | coot joins (~coot@89-69-206-216.dynamic.chello.pl) |
| 10:19:38 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 10:22:06 | → | [exa] joins (~exa@user/exa/x-3587197) |
| 10:24:31 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 10:33:25 | → | dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 10:34:54 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 10:40:10 | × | rosco quits (~rosco@175.136.157.149) (Quit: Lost terminal) |
| 10:43:47 | → | misterfish joins (~misterfis@46.44.172.198) |
| 10:45:43 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 10:50:59 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
| 10:54:05 | × | Allzman quits (~Allzman@66.154.104.213) (Quit: Client closed) |
| 10:54:53 | × | CrunchyFlakes quits (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de) (Quit: ZNC 1.8.2 - https://znc.in) |
| 10:58:00 | → | CrunchyFlakes joins (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de) |
| 10:59:44 | → | rosco joins (~rosco@175.136.157.149) |
| 11:00:23 | × | sawilagar quits (~sawilagar@user/sawilagar) (Remote host closed the connection) |
| 11:00:41 | → | sawilagar joins (~sawilagar@user/sawilagar) |
| 11:03:02 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) (Ping timeout: 260 seconds) |
| 11:04:02 | → | mima joins (~mmh@aftr-62-216-211-96.dynamic.mnet-online.de) |
| 11:18:41 | → | Simikando joins (~Simikando@adsl-dyn216.91-127-84.t-com.sk) |
| 11:21:23 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 11:21:30 | × | dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Remote host closed the connection) |
| 11:21:51 | → | dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 11:22:43 | → | waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
| 11:29:57 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 11:36:30 | × | Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 11:37:52 | × | YoungFrog quits (~youngfrog@2a02:a03f:ca07:f900:b240:4be0:6188:1692) (Ping timeout: 246 seconds) |
| 11:39:19 | × | remedan quits (~remedan@ip-94-112-0-18.bb.vodafone.cz) (Ping timeout: 255 seconds) |
| 11:42:25 | × | lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 11:44:45 | → | remedan joins (~remedan@ip-94-112-0-18.bb.vodafone.cz) |
| 11:45:58 | → | CiaoSen joins (~Jura@2a05:5800:27e:b500:2a3a:4dff:fe84:dbd5) |
| 11:49:16 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 11:52:02 | × | emmanuelux quits (~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer) |
| 11:52:36 | → | emmanuelux joins (~emmanuelu@user/emmanuelux) |
| 11:57:38 | → | chomwitt joins (~chomwitt@ppp-94-67-189-25.home.otenet.gr) |
| 12:00:39 | × | mrmr1553 quits (~mrmr@user/mrmr) (Quit: Bye, See ya later!) |
| 12:02:04 | → | Inst_ joins (~Inst@120.244.192.250) |
| 12:03:06 | × | Inst quits (~Inst@120.244.192.250) (Read error: Connection reset by peer) |
| 12:06:14 | → | mrmr15533 joins (~mrmr@user/mrmr) |
| 12:14:32 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 12:18:19 | × | [_] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 276 seconds) |
| 12:20:23 | × | zetef quits (~quassel@5.2.182.98) (Ping timeout: 256 seconds) |
| 12:24:13 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 12:25:09 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 12:28:19 | × | remedan quits (~remedan@ip-94-112-0-18.bb.vodafone.cz) (Ping timeout: 256 seconds) |
| 12:28:43 | × | Simikando quits (~Simikando@adsl-dyn216.91-127-84.t-com.sk) (Ping timeout: 255 seconds) |
| 12:28:56 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 12:29:30 | → | remedan joins (~remedan@ip-94-112-0-18.bb.vodafone.cz) |
| 12:29:53 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
| 12:32:19 | × | waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 255 seconds) |
| 12:34:00 | × | emmanuelux quits (~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer) |
| 12:34:11 | × | arahael quits (~arahael@119-18-2-212.771202.syd.nbn.aussiebb.net) (Ping timeout: 264 seconds) |
| 12:35:07 | × | dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 256 seconds) |
| 12:35:32 | → | axeman joins (~quassel@ip5b40ac1e.dynamic.kabel-deutschland.de) |
| 12:37:56 | → | emmanuelux joins (~emmanuelu@user/emmanuelux) |
| 12:49:10 | → | AkshayMankar[m] joins (~axemanpub@85.88.23.162) |
| 12:57:40 | → | dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 13:00:46 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) |
| 13:04:00 | × | mhatta quits (~mhatta@www21123ui.sakura.ne.jp) (Quit: ZNC 1.8.2+deb3.1 - https://znc.in) |
| 13:07:08 | → | fendor joins (~fendor@2a02:8388:1640:be00:8705:c56:c793:802b) |
| 13:07:43 | → | mhatta joins (~mhatta@www21123ui.sakura.ne.jp) |
| 13:09:44 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 13:11:08 | × | EvanR quits (~EvanR@user/evanr) (Remote host closed the connection) |
| 13:11:27 | → | EvanR joins (~EvanR@user/evanr) |
| 13:14:26 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
| 13:15:16 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) (Ping timeout: 256 seconds) |
| 13:15:55 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds) |
| 13:16:17 | → | euleritian joins (~euleritia@dynamic-002-247-250-074.2.247.pool.telefonica.de) |
| 13:21:04 | → | zetef joins (~quassel@5.2.182.98) |
| 13:24:59 | × | misterfish quits (~misterfis@46.44.172.198) (Ping timeout: 256 seconds) |
| 13:25:20 | defanor_ | is now known as defanor |
| 13:26:51 | × | DeFutura quits (~DeFutura@2a01:5a8:306:eaf8:192c:25eb:2252:2a8b) (Quit: Client closed) |
| 13:38:31 | × | gooba quits (~gooba@90-231-13-185-no3430.tbcn.telia.com) (Remote host closed the connection) |
| 13:39:09 | → | Simikando joins (~Simikando@adsl-dyn216.91-127-84.t-com.sk) |
| 13:42:53 | → | gooba joins (~gooba@90-231-13-185-no3430.tbcn.telia.com) |
| 13:44:12 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 13:50:06 | × | Simikando quits (~Simikando@adsl-dyn216.91-127-84.t-com.sk) (Remote host closed the connection) |
| 13:55:17 | × | dibblego quits (~dibblego@haskell/developer/dibblego) (Ping timeout: 260 seconds) |
| 13:56:30 | → | dibblego joins (~dibblego@122-199-1-93.ip4.superloop.au) |
| 13:56:30 | × | dibblego quits (~dibblego@122-199-1-93.ip4.superloop.au) (Changing host) |
| 13:56:30 | → | dibblego joins (~dibblego@haskell/developer/dibblego) |
| 14:04:00 | → | dhil joins (~dhil@2001:8e0:2014:3100:2371:386b:1960:dc70) |
| 14:09:23 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 14:09:52 | → | maturana joins (~maturana@185.220.103.12) |
| 14:12:53 | × | euleritian quits (~euleritia@dynamic-002-247-250-074.2.247.pool.telefonica.de) (Read error: Connection reset by peer) |
| 14:13:11 | → | euleritian joins (~euleritia@77.22.252.56) |
| 14:13:23 | → | waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
| 14:13:51 | × | hueso quits (~root@user/hueso) (Quit: hueso) |
| 14:17:14 | → | hueso joins (~root@user/hueso) |
| 14:21:22 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 268 seconds) |
| 14:25:49 | → | nyr joins (~nyr@user/nyr) |
| 14:25:57 | × | nyr quits (~nyr@user/nyr) (Client Quit) |
| 14:31:05 | → | liamzy__ joins (~Inst@120.244.192.250) |
| 14:31:07 | × | euleritian quits (~euleritia@77.22.252.56) (Ping timeout: 255 seconds) |
| 14:31:35 | → | euleritian joins (~euleritia@dynamic-002-247-250-074.2.247.pool.telefonica.de) |
| 14:31:59 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 14:33:33 | × | Inst_ quits (~Inst@120.244.192.250) (Ping timeout: 256 seconds) |
| 14:34:40 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 14:38:59 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
| 14:40:28 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 14:41:43 | × | shapr quits (~user@2600:1700:c640:3100:499d:95f3:db58:3df6) (Ping timeout: 268 seconds) |
| 15:03:11 | → | Deide joins (d0130db69a@user/deide) |
| 15:05:30 | → | Vajb joins (~Vajb@mobile-access-5d6a01-249.dhcp.inet.fi) |
| 15:06:29 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 15:11:12 | × | ell quits (~ellie@user/ellie) (Quit: Ping timeout (120 seconds)) |
| 15:11:23 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
| 15:14:52 | → | ell joins (~ellie@user/ellie) |
| 15:19:13 | → | YoungFrog joins (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) |
| 15:24:37 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) |
| 15:25:48 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 15:26:36 | × | maturana quits (~maturana@185.220.103.12) (Read error: Connection reset by peer) |
| 15:26:47 | × | qqq quits (~qqq@92.43.167.61) (Remote host closed the connection) |
| 15:27:15 | → | Tlsx joins (~rscastilh@189.61.140.215) |
| 15:30:54 | → | maturana joins (~maturana@37.218.244.249) |
| 15:33:13 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 15:38:37 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 15:39:17 | × | jmd_ quits (~jmdaemon@user/jmdaemon) (Ping timeout: 256 seconds) |
| 15:50:46 | → | A_Dragon joins (A_D@libera/staff/dragon) |
| 15:56:55 | × | A_Dragon quits (A_D@libera/staff/dragon) (Quit: ZNC - https://znc.in) |
| 15:59:07 | × | Vajb quits (~Vajb@mobile-access-5d6a01-249.dhcp.inet.fi) (Ping timeout: 256 seconds) |
| 15:59:58 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) (Ping timeout: 276 seconds) |
| 16:00:41 | → | Vajb joins (~Vajb@2001:999:785:c11e:a1b8:59fa:dee7:e490) |
| 16:02:07 | × | Ranhir quits (~Ranhir@157.97.53.139) (Read error: Connection reset by peer) |
| 16:04:23 | × | ubert quits (~Thunderbi@91.141.50.137.wireless.dyn.drei.com) (Ping timeout: 252 seconds) |
| 16:04:56 | → | Simikando joins (~Simikando@adsl-dyn216.91-127-84.t-com.sk) |
| 16:05:18 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 16:09:30 | × | euleritian quits (~euleritia@dynamic-002-247-250-074.2.247.pool.telefonica.de) (Read error: Connection reset by peer) |
| 16:09:48 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 16:10:07 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 16:15:36 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 16:21:11 | × | jespada quits (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Ping timeout: 260 seconds) |
| 16:23:42 | → | Ranhir joins (~Ranhir@157.97.53.139) |
| 16:31:44 | → | notzmv joins (~zmv@user/notzmv) |
| 16:32:00 | → | jespada joins (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) |
| 16:32:04 | → | misterfish joins (~misterfis@84-53-85-146.bbserv.nl) |
| 16:40:25 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 16:40:42 | × | cdsloif^ quits (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Ping timeout: 252 seconds) |
| 16:41:40 | → | cdsloif^ joins (~cd@c-98-242-74-66.hsd1.ga.comcast.net) |
| 16:42:13 | × | dsrt^ quits (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Ping timeout: 276 seconds) |
| 16:42:21 | → | dsrt^ joins (~cd@c-98-242-74-66.hsd1.ga.comcast.net) |
| 16:42:31 | × | zetef quits (~quassel@5.2.182.98) (Ping timeout: 255 seconds) |
| 16:42:48 | × | hueso quits (~root@user/hueso) (Quit: hueso) |
| 16:43:49 | → | trev joins (~trev@user/trev) |
| 16:44:03 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 16:46:14 | → | hueso joins (~root@user/hueso) |
| 16:47:46 | × | foul_owl quits (~kerry@185.219.141.164) (Ping timeout: 256 seconds) |
| 16:52:25 | × | hueso quits (~root@user/hueso) (Read error: Connection reset by peer) |
| 16:52:32 | → | tzh joins (~tzh@c-71-193-181-0.hsd1.or.comcast.net) |
| 16:52:42 | → | hueso joins (~root@user/hueso) |
| 16:52:47 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
| 16:52:57 | × | Simikando quits (~Simikando@adsl-dyn216.91-127-84.t-com.sk) (Ping timeout: 256 seconds) |
| 16:54:22 | → | Simikando joins (~Simikando@adsl-dyn216.91-127-84.t-com.sk) |
| 16:54:52 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 16:55:04 | × | todi quits (~todi@p4fd1a3e6.dip0.t-ipconnect.de) (Quit: ZNC - https://znc.in) |
| 16:56:55 | × | dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 255 seconds) |
| 16:57:29 | × | CiaoSen quits (~Jura@2a05:5800:27e:b500:2a3a:4dff:fe84:dbd5) (Ping timeout: 256 seconds) |
| 16:58:10 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 264 seconds) |
| 17:00:04 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 17:02:12 | → | todi joins (~todi@p4fd1a3e6.dip0.t-ipconnect.de) |
| 17:02:29 | × | maturana quits (~maturana@37.218.244.249) (Read error: Connection reset by peer) |
| 17:06:14 | → | AlexNoo_ joins (~AlexNoo@94.233.240.219) |
| 17:07:17 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 17:07:52 | × | coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 17:09:41 | × | AlexNoo quits (~AlexNoo@178.34.162.228) (Ping timeout: 240 seconds) |
| 17:10:05 | × | AlexZenon quits (~alzenon@178.34.162.228) (Ping timeout: 240 seconds) |
| 17:10:41 | → | foul_owl joins (~kerry@157.97.134.165) |
| 17:10:52 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds) |
| 17:11:16 | → | euleritian joins (~euleritia@dynamic-002-247-250-074.2.247.pool.telefonica.de) |
| 17:12:14 | → | econo_ joins (uid147250@id-147250.tinside.irccloud.com) |
| 17:14:24 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 17:14:28 | × | Simikando quits (~Simikando@adsl-dyn216.91-127-84.t-com.sk) (Ping timeout: 255 seconds) |
| 17:17:44 | → | AlexZenon joins (~alzenon@94.233.240.219) |
| 17:19:41 | AlexNoo_ | is now known as AlexNoo |
| 17:19:52 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 17:21:25 | → | dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 17:32:37 | × | axeman quits (~quassel@ip5b40ac1e.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds) |
| 17:33:25 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) |
| 17:36:09 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 17:36:47 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 17:38:19 | → | Pickchea joins (~private@user/pickchea) |
| 17:41:28 | × | dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Remote host closed the connection) |
| 17:41:41 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 17:41:51 | → | dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 17:44:17 | × | euleritian quits (~euleritia@dynamic-002-247-250-074.2.247.pool.telefonica.de) (Read error: Connection reset by peer) |
| 17:44:35 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 17:46:25 | × | dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 255 seconds) |
| 17:47:14 | × | hueso quits (~root@user/hueso) (Quit: hueso) |
| 17:51:58 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) (Remote host closed the connection) |
| 17:59:20 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) |
| 17:59:46 | → | hueso joins (~root@user/hueso) |
| 18:01:13 | → | Maxlelyonai joins (~Maxlelyon@19.red-88-23-210.staticip.rima-tde.net) |
| 18:01:14 | <Maxlelyonai> | hello community |
| 18:01:20 | <Maxlelyonai> | may I ask a question |
| 18:01:26 | <Maxlelyonai> | Because I am having a problem reading a list |
| 18:01:53 | <Maxlelyonai> | the problem is that I have stored a series of values. However, when I try to read it, it returns me one in each of the case |
| 18:02:05 | <Maxlelyonai> | The code is a bit long |
| 18:02:24 | <idgaen> | on irc, we often say: don't ask to ask :) |
| 18:02:54 | <monochrom> | @where paste |
| 18:02:55 | <lambdabot> | Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com |
| 18:03:02 | <monochrom> | You can put your code there. |
| 18:03:17 | <Maxlelyonai> | it is line 84 and 85 |
| 18:03:25 | <Maxlelyonai> | 85/86 |
| 18:03:26 | <Maxlelyonai> | sorry |
| 18:03:44 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 18:04:34 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 18:05:19 | → | gmg joins (~user@user/gehmehgeh) |
| 18:09:09 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 18:10:10 | → | axeman joins (~quassel@ip5b40ac1e.dynamic.kabel-deutschland.de) |
| 18:10:47 | <ski> | Maxlelyonai : you also need to give us the link of the new paste that you made |
| 18:11:00 | <Maxlelyonai> | ah |
| 18:11:01 | <Maxlelyonai> | xD |
| 18:11:13 | <Maxlelyonai> | https://paste.tomsmeding.com/zPtTHObi |
| 18:11:18 | <Maxlelyonai> | sorry |
| 18:11:21 | <Maxlelyonai> | I have never used it before |
| 18:12:56 | × | hippoid quits (~hippoid@user/hippoid) (Quit: WeeChat 4.1.1) |
| 18:14:19 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 18:15:55 | × | rosco quits (~rosco@175.136.157.149) (Quit: Lost terminal) |
| 18:18:22 | × | misterfish quits (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 255 seconds) |
| 18:20:20 | <mauke> | Maxlelyonai: I don't understand the problem description |
| 18:21:52 | <ski> | getreviewText = reviewText |
| 18:22:00 | <ski> | getoverall = overall |
| 18:22:19 | <ski> | copyReviewsToCleanData reviews reviewTexts = reviews {reviewTexts = reviewTexts} |
| 18:22:24 | <ski> | s/Prelude.map toLower/toLower2/ |
| 18:22:27 | → | dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 18:22:35 | <ski> | createMap = nub |
| 18:22:39 | <ski> | matchOverallsWithTokens = zip |
| 18:22:56 | <Maxlelyonai> | I have a programm where I have two variables. store2, where I store the frequency of a word in separate etiquettes. And store 3, where the frequency of a word is the sum of the frequency in each etiquettes store2. My problem is that in function calculateProbabilityOfEachTokenInEachEtiquette, when I read store3 all the frequency is one |
| 18:22:59 | <Maxlelyonai> | Which is incorrect |
| 18:23:00 | <ski> | storeAllWordsInEachEtiquette = foldr (\(x,y) -> insertWith (++) x y) Map.empty |
| 18:23:44 | <mauke> | how do you know? |
| 18:23:50 | <Maxlelyonai> | Because I debug it |
| 18:23:52 | <mauke> | store4 is never used |
| 18:23:59 | <Maxlelyonai> | yea |
| 18:24:11 | <Maxlelyonai> | But previously I debug with other instruction |
| 18:24:20 | <Maxlelyonai> | Where I acces the value in store3 and print the value |
| 18:25:53 | <ski> | if you replace `import Data.Map' by `import Data.Map (Map)', and add prefix `Map.' to the relevant operations, you can skip the `Prelude.' prefices |
| 18:26:32 | <Maxlelyonai> | thx |
| 18:26:50 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 18:28:20 | <mauke> | I'm not sure what kind of help you're looking for |
| 18:28:29 | <Maxlelyonai> | https://paste.tomsmeding.com/jEj9qU5X |
| 18:28:32 | <Maxlelyonai> | this is the code to debug |
| 18:28:43 | <Maxlelyonai> | I want to access the value in store3 correctly |
| 18:29:09 | <Maxlelyonai> | because I want to calculate frequency of each word in each etiquette in comparison with the total frequency(store4= |
| 18:29:28 | <mauke> | you're assuming the bug is in getFrequencyOfEachTokenInRelationWithTheTotal, which is not in evidence |
| 18:29:48 | <Maxlelyonai> | Well |
| 18:29:54 | <Maxlelyonai> | There is not other way |
| 18:30:00 | <Maxlelyonai> | Because when I print store4 |
| 18:30:07 | <Maxlelyonai> | The values are correctly stored |
| 18:30:19 | <Maxlelyonai> | The unique place that it is not working correctly is in the function |
| 18:30:54 | <mauke> | so why post all the other stuff? |
| 18:31:16 | <Maxlelyonai> | In order to have a context |
| 18:31:20 | <mauke> | you should be able to reduce the problem to a single function or three that demonstrates the issue |
| 18:31:37 | <Maxlelyonai> | okey |
| 18:31:42 | <mauke> | what you posted is incomplete (so I can't reproduce the issue myself) and mostly irrelevant |
| 18:31:55 | <Maxlelyonai> | Why incomplete? |
| 18:32:20 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
| 18:32:35 | <mauke> | I have downloaded the code. what do I do with it? |
| 18:33:03 | <Maxlelyonai> | use ghci? |
| 18:33:09 | <Maxlelyonai> | I do not what you are saying |
| 18:33:17 | <Maxlelyonai> | Okey |
| 18:33:22 | <Maxlelyonai> | I know what you want to say |
| 18:33:26 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 18:33:37 | → | Pickchea joins (~private@user/pickchea) |
| 18:33:41 | <mauke> | it says: Error: Could not load module ‘Data.ByteString.Lazy’ It is a member of the hidden package ‘bytestring-0.11.4.0’. |
| 18:33:57 | <Maxlelyonai> | well, type :set -package containers |
| 18:34:03 | <Maxlelyonai> | and :ser -package bytestring |
| 18:34:05 | <Maxlelyonai> | and also |
| 18:34:10 | <mauke> | reviews_Video_GamesFinal.json: openBinaryFile: does not exist (No such file or directory) |
| 18:34:12 | <Maxlelyonai> | this is the document |
| 18:35:15 | <Maxlelyonai> | how can I post it? |
| 18:36:21 | <mauke> | depends on how big it is, I guess |
| 18:36:50 | <mauke> | because if it is not huge, just like any other text file, I'd say |
| 18:36:57 | <Maxlelyonai> | its 287 kb |
| 18:37:11 | <mauke> | should be fine, then |
| 18:37:57 | <Maxlelyonai> | so, where can I post it? |
| 18:39:46 | <ski> | Maxlelyonai : are you sure `map2 ! k' is right ? shouldn't it be using the key of the inner map, not the outer ? |
| 18:40:08 | <Maxlelyonai> | I was also thinking about it |
| 18:40:15 | <Maxlelyonai> | the k is not using the inner map? |
| 18:40:28 | <ski> | calculateProbabilityOfEachTokenInEachEtiquette map1 map2 = Map.mapWithKey (\k v -> Map.map (\x -> fromIntegral x / fromIntegral (map2 ! k)) v) map1 |
| 18:40:34 | <Maxlelyonai> | how can i acces the inner map |
| 18:40:44 | <ski> | `mapWithKey' is for the outer, `map' for the inner |
| 18:40:51 | <ski> | try instead swapping those ? |
| 18:40:56 | <Maxlelyonai> | ? |
| 18:40:57 | <Maxlelyonai> | so |
| 18:41:04 | <Maxlelyonai> | map to access the content of outer |
| 18:41:05 | <ski> | calculateProbabilityOfEachTokenInEachEtiquette map1 map2 = Map.map (\v -> Map.mapWithKey (\k x -> fromIntegral x / fromIntegral (map2 ! k)) v) map1 |
| 18:41:12 | <Maxlelyonai> | and then use WithKey |
| 18:41:19 | <Maxlelyonai> | So I can have the key in the innvermap? |
| 18:41:20 | <Maxlelyonai> | innermap? |
| 18:41:29 | <ski> | outer map is indexed by `overalls'. inner map is indexed by words |
| 18:41:38 | <ski> | `store3' is also indexed by words |
| 18:42:07 | <Maxlelyonai> | OMG |
| 18:42:09 | <Maxlelyonai> | it's working |
| 18:42:11 | <Maxlelyonai> | OMG |
| 18:42:12 | <Maxlelyonai> | thx |
| 18:42:15 | <Maxlelyonai> | So |
| 18:42:25 | <ski> | Maxlelyonai : also see my other comments, from twenty minutes ago |
| 18:42:43 | <Maxlelyonai> | I use map to iterate through outside map? |
| 18:43:22 | <ski> | huh ? |
| 18:43:23 | <Maxlelyonai> | because i am not using the value from the key? |
| 18:43:36 | <Maxlelyonai> | Why WithKey works fine in innermap? |
| 18:43:41 | <Maxlelyonai> | I read the documentation |
| 18:43:50 | <ski> | you might be able to use some kind of `zipWith' for the inner map .. but i don't see any in `Data.Map' :/ |
| 18:44:06 | <Maxlelyonai> | understandable |
| 18:44:46 | <ski> | Maxlelyonai : you want to match one map indexed by words, `store3', with each inner map in `store2', which are all also indexed by words |
| 18:44:55 | <Maxlelyonai> | yes |
| 18:45:15 | <Maxlelyonai> | Okey, I remembered |
| 18:45:45 | <ski> | .. however, instead of splitting up `reviewTexts' and `overallsEtiquete' to begin with, it may be nicer to just work all inside a single large `Prelude.map', until close to the end |
| 18:46:05 | <Maxlelyonai> | So map it just apply the funcion to all the values in the outside map. Meanwhile, the MapWithKey it applies the function but also it gives me the key from the inner Map that I am refering to? |
| 18:46:28 | <ski> | until `store3', i guess |
| 18:46:33 | <Maxlelyonai> | ohh |
| 18:46:36 | <Maxlelyonai> | yeah, makes sense |
| 18:46:46 | <Maxlelyonai> | And I will have avoided problems |
| 18:46:58 | <Maxlelyonai> | might* |
| 18:47:30 | <Maxlelyonai> | Danke, thank, gracias, 谢谢. I was stuck in this problem for almost one day |
| 18:47:48 | <Maxlelyonai> | I think that using chat GPT can be sometimes contra productive hahaha |
| 18:47:52 | <SrPx> | Are there Haskell-like languages where equations allow for arbitrary left-hand sides? |
| 18:47:54 | <SrPx> | https://stackoverflow.com/questions/77512037/are-there-haskell-like-languages-where-equations-allow-for-arbitrary-left-hand-s |
| 18:49:17 | <ski> | Prelude.map (\review -> let reviewText = getreviewText review; overalls = getoverall review; ...; in (overalls,map)) reviews |
| 18:49:32 | <ski> | that gets you `match' |
| 18:49:45 | <ski> | Maxlelyonai : you don't say |
| 18:50:36 | <ski> | SrPx : arbitrary, how ? |
| 18:50:50 | <ski> | SrPx : hm .. Mercury can do that, at least to some extent |
| 18:51:13 | <ski> | (it's not too clear the scope of what you're asking for) |
| 18:51:48 | → | CiaoSen joins (~Jura@2a05:5800:27e:b500:2a3a:4dff:fe84:dbd5) |
| 18:51:50 | → | maturana joins (~maturana@37.218.244.251) |
| 18:51:52 | <ski> | :- func double(int) = int. |
| 18:52:05 | <ski> | :- mode double(in) = out is det. |
| 18:52:14 | <ski> | :- mode double(out) = in is semidet. |
| 18:52:23 | <ski> | and then you can say |
| 18:52:37 | <ski> | foo(double(X)) = X + 1. |
| 18:53:01 | <ski> | of course, you need to implement double/1, but that's possible |
| 18:57:19 | <ski> | double(X :: in) :: out = 2 * X. |
| 18:57:20 | <ski> | double(X :: out) :: in = Y :- Y mod 2 = 0,Y div 2 = X. |
| 18:57:22 | <ski> | i think |
| 18:57:45 | <SrPx> | ski: interesting!! thanks for the pointer |
| 18:58:05 | <ski> | see <https://www.mercurylang.org/information/doc-latest/mercury_ref/Modes.html#Different-clauses-for-different-modes> for separate modes of a predicate |
| 18:58:31 | <ski> | i think it works for functions as well (maybe slightly different syntax) .. otherwise, you could easily have the function defer to a predicate |
| 18:58:54 | → | Simikando joins (~Simikando@adsl-dyn216.91-127-84.t-com.sk) |
| 18:59:22 | <ski> | basically, with multiple (specifically including "reverse" or "sideways") mode declarations for functions, you get something like `PatternSynonyms', except more powerful |
| 18:59:41 | <ski> | with `PatternSynonyms' in GHC, you can do |
| 19:00:04 | <ski> | pattern Double :: Int -> Int |
| 19:00:46 | <ski> | pattern Double x <- ((`divMod` 2) -> (x,0)) |
| 19:00:48 | <ski> | where |
| 19:00:54 | <ski> | Double x = 2 * x |
| 19:00:57 | <ski> | and then you can say |
| 19:01:07 | <ski> | foo (Double x) = x + 1 |
| 19:01:11 | <ski> | SrPx ^ |
| 19:01:32 | <SrPx> | how it compiles that, though? like double can be an arbitrary function and arbitrary functions can't be reversed |
| 19:01:37 | <SrPx> | so it is just doing unification at runtime as I said? |
| 19:01:39 | <ski> | (you also need `ViewPatterns' for that) |
| 19:01:41 | <SrPx> | or is it something different? |
| 19:02:41 | <ski> | SrPx : Mercury or Haskell (GHC) ? |
| 19:02:46 | <SrPx> | both :) |
| 19:03:16 | <ski> | it doesn't work for arbitrary functions, of course |
| 19:03:36 | <ski> | but it works in more circumstances in Mercury, i'd say |
| 19:04:26 | <ski> | anyway, it works above because double/1 has a reverse mode, saying that if `double(X)' is input, then `X' can be output (and there's at most one such `X') |
| 19:04:30 | <ski> | that's what |
| 19:04:35 | <ski> | :- mode double(out) = in is semidet. |
| 19:04:36 | <ski> | says |
| 19:04:56 | <ski> | (`semidet' means "semi-deterministic", means "at most one solution") |
| 19:05:11 | <monochrom> | Basically you are right that it comes down to unification. |
| 19:05:38 | → | falafel joins (~falafel@2a00:23c6:4812:c301:4277:cef8:5cc2:c442) |
| 19:06:26 | × | Maxlelyonai quits (~Maxlelyon@19.red-88-23-210.staticip.rima-tde.net) (Ping timeout: 250 seconds) |
| 19:07:04 | <ski> | (i'm not sure if Mercury allowed multi-deterministic matches in the head .. i guess you have to then make sure that the overall number of solutions for the defined function (in forward mode) is at most one (total or partial) .. or else, maybe use committed-choice nondeterminism. that's used when matching on quotient types (types with non-canonical representation, with user-defined equality), e.g. rationals, |
| 19:07:10 | <ski> | or maps implemented by some type of balancing trees) |
| 19:07:55 | <SrPx> | I'm not sure I get it, reverse mode means that you provide an inverse? |
| 19:07:59 | <ski> | similarly, with the pattern synonyms, you must declare `Double' as a pattern synonym, it doesn't work for some arbitrary function (either defined in a module, or being a parameter or intermediate result, say) |
| 19:08:26 | <ski> | "reverse mode" meaning that you can run the function backwards, computing the argument(s) from the result |
| 19:08:39 | <SrPx> | ah makes sense |
| 19:08:47 | <ski> | by "sideways mode", i mean, computing some of the argument(s) from the result, and the remaining argument(s) |
| 19:08:56 | <SrPx> | cool! |
| 19:09:41 | <ski> | e.g. you can do `foo([2,3] ++ Xs) = ..Xs..' here `[2,3] ++ Xs' and `[2,3]' are input, and `Xs' is output (if it matches, there's no failure) |
| 19:11:22 | <ski> | > let foo (stripPrefix [2,3] -> Just xs) = Just xs; foo _ = Nothing in foo [2,3,5,7] |
| 19:11:23 | <lambdabot> | Just [5,7] |
| 19:11:55 | <ski> | i'd like to be able to say something like |
| 19:12:14 | <ski> | pattern Append :: Eq a => [a] -> () => [a] -> [a] |
| 19:12:32 | <ski> | pattern Append xs ys = (stripPrefix xs -> Just ys) |
| 19:12:36 | <ski> | where |
| 19:12:39 | <ski> | Append xs ys = xs ++ ys |
| 19:12:55 | <ski> | (er, s/pattern Append xs ys =/pattern Append xs ys <-/) |
| 19:13:12 | <ski> | where `xs' is input, `Append xs ys' is input, while `ys' is output |
| 19:13:23 | <ski> | then one would be able to say |
| 19:13:37 | <ski> | foo (Append [2,3] xs) = Just xs |
| 19:13:47 | <ski> | foo _ = Nothing |
| 19:14:21 | <SrPx> | ah I see now, in Haskell, to do something like `foo (double x) = x + 1`, you need to explicitly construct the inverse of `double` somewhere. same in mercury. so the compiler isn't doing it "automatically" via unification |
| 19:14:35 | <ski> | .. as it is, one must use a view pattern, currently, for this (or else move the stripping of the prefix out of the pattern-matching in the definiendums (left-hand sides) of the defining equations) |
| 19:15:10 | <ski> | SrPx : well, only because we needed to employ different algorithms at this point. but you can say |
| 19:15:17 | <ski> | pattern Quadruple :: Int -> Int |
| 19:15:27 | <ski> | pattern Quadruple x = Double (Double x) |
| 19:16:00 | <ski> | without having to provide different algorithms for the two directions here. it's just that when we get down to `Double' itself, we select between one of the two modes (directions) |
| 19:16:07 | <ski> | (and the same in Mercury) |
| 19:16:16 | <SrPx> | I see what you mean, so basically it is composable |
| 19:16:20 | <EvanR> | would pattern synonym help here |
| 19:16:41 | <EvanR> | bidirectional pattern synonym |
| 19:16:49 | <SrPx> | so I wonder if it would be possible to have a language with primitives and axioms so that every function is invertible. I think I asked that a few years ago on SO, let me check |
| 19:17:16 | <ski> | however, the constructs you can use in (implicitly) bidirectional pattern synonyms are restricted (e.g. can't use `let',`case',..) .. so it's somewhat more impoverished |
| 19:18:08 | <ski> | EvanR : that's what `Quadruple' is |
| 19:18:13 | <EvanR> | oh |
| 19:18:54 | <ski> | SrPx : how do you invert `const 0', say ? or `(* 0)' ? |
| 19:19:04 | <ski> | let's say the type is `Int -> Int', for concreteness |
| 19:19:30 | <EvanR> | that would not be one of the primitives, or derivable |
| 19:19:35 | <ski> | even if you can enumerate all possible `Int's (Mercury could do this. pattern synonyms in GHC wouldn't), you probably wouldn't want to |
| 19:20:01 | <SrPx> | ski: it wouldn't be expressive in such a language. how haskell patterns deal with that? i suppose you can't implement "const" as a pattern |
| 19:20:42 | <EvanR> | unitary haskell, all functions you can write don't gain or lose information |
| 19:21:17 | <ski> | (for the same reason, `:- mode append(out,out,out) is nondet.' is *not* a declared mode of append/3 in <https://www.mercurylang.org/information/doc-latest/mercury_library/list.html> .. rather useless to start enumerating infinitely many solutions. escpecially if all of them later fail a test, you now are stuck in an infinite loop) |
| 19:21:52 | <ski> | (in Prolog, though, this kind of mistake happens relatively often. because it doesn't have a static mode (and inst) and determinism system, as Mercury has) |
| 19:22:35 | <ski> | SrPx : "i suppose you can't implement \"const\" as a pattern" -- right, you don't |
| 19:23:05 | <ski> | EvanR : reminds me of some paper about a reversible lambda calculus |
| 19:24:17 | <ski> | "every function is invertible" could be taken to mean "every function has an inverse *function*", or just to mean "every function has an inverse (computable) *relation*" |
| 19:25:03 | <ski> | in Prolog, and even more so in Mercury, predicates are quite often "invertible", in the sense that you can run them "forwards, backwards, and sideways" |
| 19:26:37 | <SrPx> | hmm |
| 19:27:13 | <ski> | (even more so in Mercury, because it keeps track of instantiation state, and, if needed, reorders goals according to data dependencies .. while Prolog just always executes goals (conjuncts) in the same order, regardless. you have to do case analysis yourself on the instantiation state, to avoid this, which is verbose/repetitious, and also errorprone (easy to accidentally define a "predicate" which doesn't |
| 19:27:19 | <ski> | behave logically at all)) |
| 19:27:53 | <monochrom> | I saw some reversible computing papers decades ago, too. (Not my cup of tea.) |
| 19:27:57 | <ski> | (a predicate is "steadfast" if, when you provide more information upfront, it can't suddenly give more (or more general |
| 19:29:30 | <ski> | ) solutions than before. specifically, conjunction is commutative. `append(Front,Back,[2,3,5,7]),Front = [_|_],Back = [_|_]' is equivalent to `Front = [_|_],Back = [_|_],append(Front,Back,[2,3,5,7])', but the latter is more efficient, it's "constrain-and-generate", rather than "generate-and-test") |
| 19:30:11 | <ski> | (logically speaking, a non-steadfast predicate isn't a predicate/relation at all. it has no declarative semantics, just a procedural/operational one) |
| 19:32:48 | <SrPx> | I think I've never seen a reversible computing paper fro ma functional programming point of view |
| 19:33:59 | → | wroathe joins (~wroathe@50.205.197.50) |
| 19:33:59 | × | wroathe quits (~wroathe@50.205.197.50) (Changing host) |
| 19:33:59 | → | wroathe joins (~wroathe@user/wroathe) |
| 19:34:31 | × | Simikando quits (~Simikando@adsl-dyn216.91-127-84.t-com.sk) (Remote host closed the connection) |
| 19:36:02 | → | nate4 joins (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
| 19:41:04 | <ski> | "Information Effects" by Roshan P. James,Amr Sabry in 2012-01-2[5-7] at <https://www.cs.indiana.edu/~sabry/papers/information-effects.pdf>,<https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.364.1460> |
| 19:41:05 | × | nate4 quits (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
| 19:41:14 | <ski> | "The Computational Content of Isomorphisms" (Ph. D. thesis) by Roshan P. James in 2013-04 at <https://web.archive.org/web/20230613084358/https://media.proquest.com/media/hms/ORIG/2/D49uH?_s=rKxUwmbgqKEXAH9RCzAhMuwUWLk%3D> (mentioned at <https://golem.ph.utexas.edu/category/2009/08/the_pi_calculus.html>, linked from <https://lobste.rs/s/brpilp/computational_content_isomorphisms>) |
| 19:41:20 | <ski> | "Embracing the Laws of Physics: Three Reversible Models of Computation" by Jacques Carette,Roshan P. James,Amr Sabry in 2018-(11-08 - 12-10) at <https://arxiv.org/abs/1811.03678v2> |
| 19:41:31 | <ski> | (i've only read the first one, just noticed the other two now) |
| 19:41:50 | → | jargon joins (~jargon@184.101.69.217) |
| 19:42:02 | <ski> | SrPx ^ |
| 19:42:47 | <ski> | (i guess lenses, boomerang is also relevant here) |
| 19:43:03 | <SrPx> | so an even weirder concept: first-class unification "solve X in A == B". so, for example, `f(x) = x/2+1` could be implemented in a λ-calculus syntax as: `f = λx (S (solve K in (double K) == 10))` |
| 19:43:13 | <SrPx> | ski: will have al ook, thanks |
| 19:44:02 | <ski> | `10' ? |
| 19:44:16 | ChanServ | sets mode +o monochrom |
| 19:44:42 | <ski> | f(X) = Y + 1 :- X = double(Y). % in Mercury, with the above double/1 |
| 19:45:03 | <SrPx> | oops, should be `== x` |
| 19:45:10 | <ski> | ok (as i thought) |
| 19:45:38 | → | thyriaen joins (~thyriaen@2a01:aea0:dd4:7550:6245:cbff:fe9f:48b1) |
| 19:45:44 | <SrPx> | mercury seems to be the closest |
| 19:46:33 | <thyriaen> | SrPx, hmm ? |
| 19:47:54 | <zzz> | is there any sensible way of doing `import Relude hiding ( everything_from_mtl )`? |
| 19:47:57 | <SrPx> | thyriaen: what? |
| 19:48:12 | × | Jackneill quits (~Jackneill@20014C4E1E1AA2000F2D4B0C673AE70E.dsl.pool.telekom.hu) (Ping timeout: 268 seconds) |
| 19:50:08 | → | shailangsa joins (~shailangs@host109-152-9-157.range109-152.btcentralplus.com) |
| 19:52:49 | × | thyriaen quits (~thyriaen@2a01:aea0:dd4:7550:6245:cbff:fe9f:48b1) (Quit: Leaving) |
| 19:56:06 | × | jargon quits (~jargon@184.101.69.217) (Remote host closed the connection) |
| 19:57:54 | <ddellacosta> | zzz: assuming you're only doing it in specific namespaces, just import only the things you want from Relude? Otherwise I feel like you're getting dimishing returns on using an alternative prelude, and you'd be better off making your own |
| 19:58:02 | <ddellacosta> | namespaces -> modules |
| 19:58:53 | → | misterfish joins (~misterfis@84-53-85-146.bbserv.nl) |
| 20:02:29 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 20:02:58 | → | myxos joins (~myxos@065-028-251-121.inf.spectrum.com) |
| 20:06:52 | <zzz> | ddellacosta: yes, just a specific module |
| 20:07:14 | <zzz> | another question: do i need fromList when using list comprehensions with OverloadedLists? |
| 20:15:10 | × | ChanServ quits (ChanServ@services.libera.chat) (shutting down) |
| 20:18:35 | × | Tlsx quits (~rscastilh@189.61.140.215) () |
| 20:19:39 | → | ChanServ joins (ChanServ@services.libera.chat) |
| 20:19:39 | tungsten.libera.chat | sets mode +o ChanServ |
| 20:24:57 | × | trev quits (~trev@user/trev) (Quit: trev) |
| 20:30:00 | ← | MonsoonSecrecy parts (f78c86e960@2604:bf00:561:2000::f99) () |
| 20:35:35 | <zzz> | i was under the impression i didn't but apparently i do |
| 20:36:01 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) (Remote host closed the connection) |
| 20:36:57 | × | _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
| 20:39:00 | <ski> | depends on whether you want to convert from `[a]' to `l' where `IsList l' and `Item l = a' |
| 20:40:12 | <ski> | hm, i guess maybe you want `MonadComprehensions' ? |
| 20:40:55 | <geekosaur> | I was wondering about that too, but it wouldn't help if they're using OverloadedLists with e.g. a set |
| 20:41:09 | <geekosaur> | or Map |
| 20:42:46 | <zzz> | yes, Set and Map in this instance |
| 20:43:20 | <zzz> | weird that comprehensions are not supported |
| 20:45:42 | <geekosaur> | what's the Monad instance for a Map? |
| 20:45:51 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
| 20:47:06 | <ski> | hm .. would `instance Monoid k => Monad (Map k)' work ? |
| 20:47:21 | <geekosaur> | you can't specify that constraint |
| 20:47:47 | <geekosaur> | moreover you can't have an Ord instance on the key, but Map requires one |
| 20:47:53 | <ski> | oh, right, add `Ord k' |
| 20:48:28 | <zzz> | i was hoping the extension just built the list and then added fromList. no need for Monad instance, and that's how it's documented to work |
| 20:48:29 | <geekosaur> | there are indexed monads, but not in base and not supported by MonadComprehensions |
| 20:49:52 | <zzz> | s/just built/would just build |
| 20:51:40 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) |
| 20:55:05 | monochrom | sets mode -o monochrom |
| 20:57:08 | <ski> | @let instance (Ord k,Monoid k) => Applicative (M.Map k) where {pure = return; (<*>) = ap}; instance (Ord k,Monoid k) => Monad (M.Map k) where {return x = M.fromList [(mempty,x)]; m >>= k = M.unions (M.mapWithKey (\k0 x -> M.mapKeys (\k1 -> k0 <> k1) (k x)) m)} |
| 20:57:10 | <lambdabot> | Defined. |
| 20:57:13 | <ski> | hm |
| 20:57:20 | <ski> | > join ((M.fromList . (map . second) M.fromList) [("a",[("0",0),("1",1)]),("b",[("0",2)])]) |
| 20:57:21 | <lambdabot> | fromList [("a0",0),("a1",1),("b0",2)] |
| 20:57:27 | <ski> | > join ((M.fromList . (map . second) M.fromList) [("a",[("a",0),("bc",1)]),("ab",[("c",2)])]) |
| 20:57:28 | <lambdabot> | fromList [("aa",0),("abc",1)] |
| 20:57:35 | <ski> | that latter doesn't look good |
| 20:57:53 | <geekosaur> | right, I was under the impression that breaks the laws |
| 20:58:03 | <ski> | i'd expect it does |
| 20:58:19 | <ski> | you'd need `Monoid' on the monadic result, maybe .. but that's not allowed |
| 21:10:10 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 21:13:02 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 21:13:04 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 21:14:06 | <jackdk> | If you think of `Map k` as kinda like a function `k -> Maybe a`, then I start to imagine that it might have to behave similarly to the monad instance for Complex (which is kinda like `Bool -> a`): your `join` might want to take the "diagonal" of the nested maps |
| 21:17:35 | × | CiaoSen quits (~Jura@2a05:5800:27e:b500:2a3a:4dff:fe84:dbd5) (Ping timeout: 256 seconds) |
| 21:22:59 | × | vgtw_ quits (~vgtw@user/vgtw) (Quit: ZNC - https://znc.in) |
| 21:25:26 | × | dhil quits (~dhil@2001:8e0:2014:3100:2371:386b:1960:dc70) (Ping timeout: 256 seconds) |
| 21:26:57 | × | idgaen quits (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.1.1) |
| 21:27:04 | → | Jackneill joins (~Jackneill@20014C4E1E1AA2000F2D4B0C673AE70E.dsl.pool.telekom.hu) |
| 21:29:36 | → | vgtw joins (~vgtw@user/vgtw) |
| 21:47:20 | liamzy__ | is now known as Inst |
| 21:49:10 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 21:50:27 | × | ddellacosta quits (~ddellacos@ool-44c738de.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 21:51:27 | → | ddellacosta joins (~ddellacos@ool-44c738de.dyn.optonline.net) |
| 21:57:32 | → | mokee joins (~mokee@37.228.215.150) |
| 22:17:19 | × | falafel quits (~falafel@2a00:23c6:4812:c301:4277:cef8:5cc2:c442) (Remote host closed the connection) |
| 22:19:55 | × | maturana quits (~maturana@37.218.244.251) (Quit: maturana) |
| 22:22:09 | × | notzmv quits (~zmv@user/notzmv) (Read error: Connection reset by peer) |
| 22:23:16 | → | notzmv joins (~zmv@user/notzmv) |
| 22:23:37 | → | zetef joins (~quassel@5.2.182.98) |
| 22:28:01 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) (Remote host closed the connection) |
| 22:30:25 | × | johnw quits (~johnw@69.62.242.138) (Quit: ZNC - http://znc.in) |
| 22:35:19 | × | fendor quits (~fendor@2a02:8388:1640:be00:8705:c56:c793:802b) (Remote host closed the connection) |
| 22:37:34 | → | qqq joins (~qqq@92.43.167.61) |
| 22:39:32 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 22:50:05 | × | troydm quits (~troydm@user/troydm) (Ping timeout: 240 seconds) |
| 22:50:49 | → | troydm joins (~troydm@user/troydm) |
| 22:51:57 | → | ystael joins (~ystael@user/ystael) |
| 22:52:27 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 22:55:13 | → | jumper149 joins (~jumper149@base.felixspringer.xyz) |
| 22:55:58 | × | acidjnk quits (~acidjnk@p200300d6e72b9399e0d3f8384e141d02.dip0.t-ipconnect.de) (Ping timeout: 276 seconds) |
| 23:02:49 | → | ham joins (~ham@user/ham) |
| 23:04:15 | ham | is now known as hamster |
| 23:06:02 | × | jumper149 quits (~jumper149@base.felixspringer.xyz) (Quit: WeeChat 4.1.1) |
| 23:06:19 | → | jumper149 joins (~jumper149@base.felixspringer.xyz) |
| 23:07:57 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a57c:6e2:236b:24e3) |
| 23:09:13 | × | axeman quits (~quassel@ip5b40ac1e.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds) |
| 23:21:20 | ← | neptun parts (neptun@2607:5300:60:5910:dcad:beff:feef:5bc) (bye) |
| 23:27:44 | × | haskellbridge quits (~haskellbr@069-135-003-034.biz.spectrum.com) (Ping timeout: 268 seconds) |
| 23:33:15 | → | SmirnoffBG joins (~Guest86@2a01:5a8:302:def2:8c8e:534:2c31:3b30) |
| 23:34:41 | → | m257 joins (~maaz@184.147.203.180) |
| 23:34:58 | <m257> | Why div? |
| 23:35:12 | <ski> | `div' is for integral division, division with a remainder |
| 23:35:23 | × | chomwitt quits (~chomwitt@ppp-94-67-189-25.home.otenet.gr) (Ping timeout: 252 seconds) |
| 23:35:24 | <m257> | does it return the remainder? |
| 23:35:33 | <ski> | `/' is for (more or less) exact division, so floating-point (not quite exact), and rationals (exact) |
| 23:35:40 | <ski> | `mod' does |
| 23:35:46 | <ski> | > 17 `divMod` 7 |
| 23:35:47 | <lambdabot> | (2,3) |
| 23:35:49 | <m257> | I thought it would return the result of the division. |
| 23:35:49 | <ski> | > 17 `div` 7 |
| 23:35:51 | <lambdabot> | 2 |
| 23:35:52 | <ski> | > 17 `mod` 7 |
| 23:35:54 | <lambdabot> | 3 |
| 23:35:55 | <m257> | 4 mod 2 |
| 23:36:01 | <ski> | use "> " |
| 23:36:04 | <m257> | mod 4 2 |
| 23:36:13 | <m257> | > mod 4 2 |
| 23:36:14 | <lambdabot> | 0 |
| 23:36:26 | <m257> | > div 4 2 |
| 23:36:27 | <lambdabot> | 2 |
| 23:36:33 | <ski> | > div 11 2 |
| 23:36:34 | <lambdabot> | 5 |
| 23:37:01 | <ski> | n = n `div` d * d + n `mod` d |
| 23:37:06 | <m257> | I need to check if the number is even. |
| 23:37:13 | <ski> | > map even [0 ..] |
| 23:37:15 | <lambdabot> | [True,False,True,False,True,False,True,False,True,False,True,False,True,Fals... |
| 23:37:20 | <EvanR> | @src even |
| 23:37:20 | <lambdabot> | even n = n `rem` 2 == 0 |
| 23:37:22 | <m257> | Really? |
| 23:37:30 | <m257> | You map it to the set? |
| 23:37:34 | <ski> | the list |
| 23:37:35 | <m257> | That is so weird. |
| 23:37:37 | <EvanR> | :t even |
| 23:37:38 | <lambdabot> | Integral a => a -> Bool |
| 23:37:41 | <ski> | (infinite list, here) |
| 23:38:00 | <ski> | > filter even [0 ..] |
| 23:38:02 | <lambdabot> | [0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52... |
| 23:38:07 | <m257> | so map even x? |
| 23:38:14 | <ski> | only if `x' is a list |
| 23:38:18 | <EvanR> | check if a number is even, use the function even |
| 23:38:28 | <m257> | Oh even is just a function. |
| 23:38:33 | <ski> | i was just showing `even' for a bunch of different numbers at the same time |
| 23:38:34 | <ski> | yes |
| 23:38:37 | <m257> | Can I see its definition? |
| 23:38:40 | <ski> | see above |
| 23:38:54 | <m257> | Its seems weird that their would be a function for something so simple. |
| 23:39:23 | <EvanR> | it's good that haskell has some many dumb things defined, and that everyone uses them |
| 23:39:31 | <m257> | How would I check for arbitary mod in idiomatic haskell. |
| 23:39:40 | <m257> | like x % n |
| 23:39:45 | <EvanR> | x `mod` n |
| 23:39:48 | <ski> | (`rem' is the same as `mod', except it behaves slightly differently, with negative numbers. `rem' is probably (very) slightly more efficient. but if your numerator might be negative, you probably want `mod' instead. similarly, if the numerator may be negative, you usually want `div' rather than `quot') |
| 23:40:37 | <m257> | Ambiguous type variable ‘a0’ arising from the literal ‘4’ |
| 23:40:39 | <ski> | (with `div' and `mod', the sign of the denominator controls the sign of the result. with `quot' and `rem', it's the sign of the numerator which controls) |
| 23:40:45 | <m257> | main = print (collatz 4) |
| 23:40:55 | <ski> | (most processors, for some weird reason, seem to go the `quot' and `rem' route ..) |
| 23:40:58 | <m257> | Why is this wrong? |
| 23:41:00 | <EvanR> | not enough type info to know what number type 4 is |
| 23:41:10 | <EvanR> | try print (collatz (4 :: Int)) |
| 23:41:20 | <ski> | collatz :: Int -> Int -- adding this should work |
| 23:41:23 | <EvanR> | or put a type signature on collatz |
| 23:41:30 | <ski> | (or `Integer') |
| 23:41:40 | <m257> | No instance for (Fractional Int) arising from a use of ‘collatz’ |
| 23:41:50 | <m257> | How do I define input type? |
| 23:41:53 | <ski> | don't use `/' |
| 23:41:56 | <EvanR> | sounds like you tried to use / |
| 23:42:00 | <ski> | (yes) |
| 23:42:06 | <m257> | collatz x = if even x then x/2 else 3*x+1 |
| 23:42:14 | <ski> | add, above that line : |
| 23:42:16 | <ski> | collatz :: Int -> Int -- adding this should work |
| 23:42:37 | <ski> | (and replace the / with `div` ..) |
| 23:43:02 | <m257> | It works! |
| 23:43:04 | <m257> | Thanks |
| 23:43:12 | <ski> | np :) |
| 23:43:15 | <EvanR> | slash does this |
| 23:43:20 | <EvanR> | > 7 / 2 |
| 23:43:21 | <m257> | This is a bit of a culture shock. |
| 23:43:21 | <lambdabot> | 3.5 |
| 23:43:26 | <EvanR> | > 7 `div` 2 |
| 23:43:28 | <m257> | For floats? |
| 23:43:28 | <lambdabot> | 3 |
| 23:43:36 | <ski> | > 7 / 2 :: Rational |
| 23:43:38 | <lambdabot> | 7 % 2 |
| 23:43:45 | <ski> | > 14 / 4 :: Rational |
| 23:43:46 | <lambdabot> | 7 % 2 |
| 23:43:55 | <ski> | > 1 % 2 + 1 & 3 |
| 23:43:56 | <ski> | er |
| 23:43:56 | <lambdabot> | error: |
| 23:43:56 | <lambdabot> | • Could not deduce (Integral a0) |
| 23:43:56 | <lambdabot> | from the context: (Integral a, Num (Ratio a -> b)) |
| 23:43:59 | <ski> | > 1 % 2 + 1 % 3 |
| 23:44:00 | <lambdabot> | 5 % 6 |
| 23:44:00 | <EvanR> | slash is for Fractional numbers, div is for Integral numbers |
| 23:44:11 | <ski> | @botsmack |
| 23:44:11 | <lambdabot> | :) |
| 23:44:13 | <m257> | so / is float division and div is integer division. Why make such a distinction? Why not figure out types from input? |
| 23:44:27 | <EvanR> | other languages have the same distinction, though spelled different ways |
| 23:44:55 | <EvanR> | you call them both "division" but it's really not the same operation |
| 23:45:05 | <m257> | I am going to just call div like a function rather use backticks |
| 23:45:13 | <ski> | > pi `divMod'` 2 |
| 23:45:14 | <lambdabot> | (1,1.1415926535897931) |
| 23:45:15 | <m257> | What is the idiomatic way? |
| 23:45:16 | <ski> | > pi `divMod'` 0.5 |
| 23:45:17 | <lambdabot> | (6,0.14159265358979312) |
| 23:45:32 | <ski> | m257 : either prefix or infix, whichever you prefer |
| 23:45:57 | <m257> | Now how do I loop till it hits one? and print out the numbers in between? |
| 23:45:58 | <EvanR> | > let (÷) = div in 7 ÷ 2 |
| 23:45:59 | <lambdabot> | 3 |
| 23:46:18 | <ski> | m257 : you can generate a list of the numbers |
| 23:46:27 | <m257> | Return a list? |
| 23:46:35 | <ski> | yes |
| 23:46:38 | <ski> | so, e.g. |
| 23:46:47 | <ski> | collatz 5 |
| 23:46:54 | <ski> | = [5,16,8,4,2,1] |
| 23:46:55 | <m257> | There is probably some mad optimizations behind the scenes to get this to work. |
| 23:47:06 | <m257> | How do I create and combines list? |
| 23:47:16 | <ski> | > 2 : [3,5,7] |
| 23:47:18 | <lambdabot> | [2,3,5,7] |
| 23:47:22 | <m257> | Alright. |
| 23:47:24 | <ski> | > [2,3] ++ [5,7] |
| 23:47:26 | <lambdabot> | [2,3,5,7] |
| 23:47:27 | → | haskellbridge joins (~haskellbr@069-135-003-034.biz.spectrum.com) |
| 23:47:27 | ChanServ | sets mode +v haskellbridge |
| 23:47:47 | ski | welcomes haskellbridge back |
| 23:48:04 | <m257> | Do I change the type signature of collatz to Int List? |
| 23:48:12 | <ski> | collatz :: Int -> [Int] |
| 23:49:01 | <ski> | collatz 1 = [1] |
| 23:49:07 | <ski> | collatz n |
| 23:49:35 | <ski> | | even n = ... |
| 23:49:40 | <ski> | | otherwise = ... |
| 23:49:57 | <ski> | that's another way to split cases, depending on even or not |
| 23:50:01 | <ski> | @src otherwise |
| 23:50:02 | <lambdabot> | otherwise = True |
| 23:51:47 | <m257> | Anything wrong with this: collatz x = if (x == 1) |
| 23:51:47 | <m257> | [] |
| 23:51:47 | <m257> | if even x then |
| 23:51:47 | <m257> | (div x 2) : (collatz (div x 2)) |
| 23:51:47 | <m257> | else |
| 23:51:50 | <m257> | 3*x+1 : (collatz (3*x+1)) |
| 23:51:52 | <m257> | Woops. |
| 23:52:03 | <m257> | Probably should pastebin next time. |
| 23:52:10 | <m257> | tabs turns into Is |
| 23:52:43 | <m257> | https://pastebin.com/X2fuQicV |
| 23:52:49 | <m257> | Thats a bit better. |
| 23:53:56 | <ski> | no need for the brackets around `x == 1', nor around `div x 2', nor around `collatz (div x 2)' |
| 23:54:10 | <ski> | (nor `collatz (3*x+1)') |
| 23:54:29 | <m257> | I was thinking of lisp... |
| 23:54:36 | <m257> | It looks weird without it. |
| 23:54:51 | <m257> | Haskell seemed very lisp like in syntax. |
| 23:54:53 | <ski> | missing `then' and `else' for first `if' |
| 23:54:54 | <EvanR> | this is not lisp |
| 23:55:06 | <EvanR> | (((x))) is the same thing as x |
| 23:55:07 | × | Jackneill quits (~Jackneill@20014C4E1E1AA2000F2D4B0C673AE70E.dsl.pool.telekom.hu) (Ping timeout: 276 seconds) |
| 23:55:12 | <ski> | (all `if's have both `then' and `else') |
| 23:55:26 | <m257> | Forgot about the else case. |
| 23:55:43 | <Axman6> | m257: regardless of what happens to the tabs, please do not paste code into IRC |
| 23:55:53 | <m257> | Can I not use tabs in Haskell? |
| 23:55:59 | <m257> | It gives errors. |
| 23:56:00 | <ski> | m257 : but see the `collatz' sketch i gave seven minutes ago, above |
| 23:56:49 | <EvanR> | you can use tabs but the indentation of else makes it parse wrong |
| 23:56:51 | <m257> | Axman6: It looked shorter in neovim. Sorry. |
| 23:56:56 | <EvanR> | it has to be indented more than if |
| 23:57:20 | <geekosaur> | that's the problem with tabs: every program has its own interpretation of them |
| 23:57:26 | <Axman6> | You can use tabs in Haskell, but you shouldn't. They're defined to be 8 character tab stops, which is not what most people expect (and because of this it's generally considered a bad idea) |
| 23:57:40 | <m257> | This is what I have currently: https://pastebin.com/e3wvFgFX |
| 23:58:01 | <m257> | I have my neovim config to only tabs. Might have to change tabs to spaces. |
| 23:58:19 | <ski> | m257 : `ghci -Wno-tabs' to shut the tab warning up |
| 23:58:49 | <monochrom> | Or, tell your editor to use spaces :) |
| 23:58:53 | <Axman6> | but just use spaces |
| 23:59:02 | <m257> | yes i need to change that. |
| 23:59:14 | <m257> | The parse error for else is because of tabs right? |
| 23:59:16 | <ski> | m257 : "I mix tabs and spaces" by dmwit at <http://dmwit.com/tabs/> ; <http://ooxx.me/wp-content/uploads/2013/10/TabsSpacesBoth.png> |
| 23:59:29 | <monochrom> | I understand why tabs are better for other languages. That reason breaks with Haskell (and Python). |
| 23:59:41 | <monochrom> | (generally any layout-sensitive language) |
| 23:59:51 | <Axman6> | ski: just the URLs made me angry |
| 23:59:57 | ski | grins |
All times are in UTC on 2023-11-19.