Logs on 2023-01-25 (liberachat/#haskell)
| 00:00:02 | <unit73e> | we need I mean |
| 00:00:11 | <unit73e> | like mathematics |
| 00:00:33 | <dsal> | I've got into arguments with people I'm happy I no longer work with about how things like `MonadIO` are really bad because it's *possible* to make `liftIO` do something unexpected. |
| 00:01:01 | <unit73e> | so the code of conduct didn't work |
| 00:01:05 | <unit73e> | eh |
| 00:01:27 | <dsal> | You seem to be expressing unhappiness with something you don't understand well. |
| 00:01:53 | <unit73e> | it's not actually unhappiness, it's more of a pebble in the shoe, I don't care really that much |
| 00:02:03 | <unit73e> | more of an observation |
| 00:02:24 | <dsal> | OK. Your commentary on your observations suggest you don't understand what you're observing. |
| 00:02:33 | <dsal> | People can disagree on ideas that's just fine. |
| 00:02:37 | <unit73e> | perhaps, I never managed such large projects |
| 00:03:17 | <unit73e> | still, I would be stubborn to not have it, until I was proven wrong |
| 00:03:35 | <dsal> | I don't dislike that person because he doesn't like `MonadIO`. I don't like him *and* he doesn't like `MonadIO`. And his argument was kind of bad, but he decided nobody else's opinions mattered and everyone had to do whatever he believed on every topic even when someone could demonstrate it was in violation with his own principles. |
| 00:04:49 | <unit73e> | well that's why voting or hierarchies were created. it's not that easy to solve these management problems. |
| 00:05:22 | <monochrom> | No no no, that is why unfriending was invented. >:) |
| 00:05:50 | <dsal> | Heh. Yeah. Now I work with reasonable people. I disagree with work folks all the time, but nobody is unreasonable. |
| 00:06:01 | <monochrom> | Or alternatively but equivalently /ignore, /part, /quit |
| 00:06:48 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 00:07:53 | <dsal> | One thing that's come up recently at work is a function `:: A -> A` for a sum type that is represented in a different system that might be lagging behind, so they need some kind of backwards compatibility. Some folks think the best way to do this is to have a `case` over every input type explicitly. So there are these giant swaths of code that are just `x -> x` with more moving parts because it gives some feeling of safety. |
| 00:08:15 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 00:08:36 | <dsal> | Except like, I'm not familiar with the lagging system. I don't know what to put there. So I just replaced all those things with `x -> x`. |
| 00:09:33 | <unit73e> | so they rather have more code just to feel safe? |
| 00:09:38 | <dsal> | Now, it *did* break a thing, but it broke the same way it would've broken if I put `MyNewThing -> MyNewThing` like all the others in the file. Since the two types are theoretically different they either need to be different types or you need a test of what's actually downstream. |
| 00:10:30 | <dsal> | Yeah. Because when I add a new `A` constructor, I have to go touch that and maybe I have to know that instead of doing what all the rest of the code in that area does, I need to like, figure out who knows about downstream effects and get that person involved and make a guess as to what an equivalent value might be in the short term to make the other system happy. |
| 00:10:58 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 00:11:14 | <unit73e> | you know, it's not that weird, but I always see the same problems, over and over again in software engineering, no matter the framework or programming language, and guys who want to do the good old thing just because that's always why we did it is one of those, even when proven to be flawed |
| 00:11:16 | <dsal> | It makes sense in an `:: A -> B` type scenario. Or even in `:: A -> A` where there's a sort of "dual" value. |
| 00:12:08 | <unit73e> | and then I come up with "you know, that would be easier in haskell" and the answer is "here comes the haskell salesman" |
| 00:12:31 | <dsal> | My work is all Haskell, so it's usually "you know, that would be easier with lens" |
| 00:13:05 | <unit73e> | I avoid lens |
| 00:13:18 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 00:13:33 | <dsal> | Lots of people avoid lens. And then write a ton of code to do trivial things. |
| 00:14:09 | <geekosaur> | if I wanted to write Perl, I'd write Perl |
| 00:14:31 | <unit73e> | I just don't need lens most of the time, but I guess this is still a debate in haskell world |
| 00:14:38 | <unit73e> | it's relatively recent |
| 00:15:30 | <dsal> | You can do weird things with lens, of course, but I was just showing a coworker around a bit of code he's starting to work on which includes a test that validates some stuff found in a deeply nested set of a field in a non empty list of a type-specific field of non empty list of a sum type (which speciifes the previous type-specific field) of non empty lists of lists of nonempty lists. |
| 00:16:17 | <dsal> | It's just something like `x ^.. a . folded . b . folded . _whatever . folded . someThing . folded . someField` -- writing that out by hand is possible, but… tedious to write and much harder to read. |
| 00:17:26 | <dsal> | There were more fields than that, but the thing that made it complicated isn't the lens, it's this complicated data structure that I had to build out. So if the reader doesn't understand something, it's not lens' fault. :) |
| 00:18:30 | <dsal> | (this particular test was "the set of all `someField` values in this data structure is the thing we expect") |
| 00:19:47 | × | Tuplanolla quits (~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) (Quit: Leaving.) |
| 00:19:53 | <unit73e> | lens do make some code simpler imo, I just didn't need much yet |
| 00:20:06 | <unit73e> | btw perl is in my top worst programming languages of all times I've ever used |
| 00:20:10 | <dsal> | Some of it's only mildly gimmicky. Today I had a `modify' (\s -> s { field = something })` which could just be `field .= something` |
| 00:20:30 | <dsal> | I had a codebase with, literally, millions of lines of code in the 90s. I've used up all my perl. |
| 00:23:36 | <jackdk> | dsal: `setOf (template . someField)`? |
| 00:24:37 | <jackdk> | aside: I think lens' operators are carefully chosen to create a beautiful and compact visual language that would be much worse if it was only offered as wordy function names |
| 00:26:35 | <dsal> | Yeah, I'm not using `setOf`, but I could there. I'm not even aware of all of the `Of` functions. heh |
| 00:28:54 | <jackdk> | Neither was I - I had to go digging around to find module `Data.Set.Lens`. I was more pointing at `template` and friends, which was very useful when I had to do deep traversals and rewrites of complex structures. |
| 00:31:03 | <dsal> | Ohh. Yeah, I didn't do anything plated here. |
| 00:32:25 | × | mei quits (~mei@user/mei) (Remote host closed the connection) |
| 00:33:02 | <mauke> | unit73e: your opinion is wrong, of course, but what do you think are the worst aspects of perl? |
| 00:33:15 | × | td_ quits (~td@i53870917.versanet.de) (Ping timeout: 255 seconds) |
| 00:34:27 | <unit73e> | mauke, it's too cryptic. hard to read. I had trouble figuring out my own code written in perl. you can say yeah you didn't code simple and documented good enough, but it's hard to do that in perl. |
| 00:34:45 | → | mei joins (~mei@user/mei) |
| 00:34:54 | <unit73e> | not that I have that much experience in perl mind you |
| 00:35:05 | → | td_ joins (~td@i53870917.versanet.de) |
| 00:35:13 | <unit73e> | so take my wrong opinion with a grain of salt |
| 00:36:21 | <mauke> | oh, by that metric Haskell is absolutely abysmal |
| 00:36:25 | <dsal> | No instance `Data.Data.Data` – heh |
| 00:36:34 | <unit73e> | that's the funny thing, I have zero trouble reading haskell |
| 00:36:43 | <unit73e> | I have a harder time reading java |
| 00:36:43 | <c_wraith> | daa |
| 00:36:55 | <c_wraith> | oops, sorry. failure to operate my keyboard |
| 00:37:31 | <unit73e> | much harder time reading java... and then I ask my minions to write javadoc and they only get why after trying to read their own code... |
| 00:38:08 | → | mizlan joins (~mizlan@131.179.76.137) |
| 00:41:35 | <dsal> | Yeah, I can't read java anymore. |
| 00:41:40 | × | Lears quits (~Leary]@user/Leary/x-0910699) (Remote host closed the connection) |
| 00:42:23 | → | [Leary] joins (~Leary]@user/Leary/x-0910699) |
| 00:42:52 | <geekosaur> | I've been writing and reading Perl since the first public release. I've seen some pretty abysmal Perl code, true |
| 00:43:31 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
| 00:44:11 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 246 seconds) |
| 00:45:14 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds) |
| 00:45:31 | <mauke> | the thing is, I have no trouble "reading" Perl on a basic level, statement by statement, expression by expression |
| 00:46:22 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 00:46:22 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 00:46:22 | → | wroathe joins (~wroathe@user/wroathe) |
| 00:46:44 | × | jmorris quits (uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 00:47:17 | <mauke> | the point where I may have problems is figuring out the bigger picture of what the code is doing |
| 00:47:29 | <mauke> | but that's not really language dependent |
| 00:48:21 | × | wombat8756 quits (~wombat875@2600:4041:5bea:f800:da64:71f6:cfa2:558) (Quit: WeeChat 3.6) |
| 00:48:37 | <apache2> | sometimes perl programmers document their perl, then it's not so bad. |
| 00:48:47 | <mauke> | that's why "you can say yeah you didn't code simple and documented good enough" is so unexpected to me |
| 00:49:22 | <mauke> | I don't need documentation at the single statement level; that's not helpful |
| 00:49:29 | <apache2> | I think the scalar reference stuff is hard to get used to |
| 00:49:42 | <apache2> | but that's because I'm not used to it anymore, I used to be able to follow pretty well. |
| 00:50:07 | <mauke> | eh, that part should be obvious to any C programmer :-) |
| 00:51:58 | <unit73e> | experience does make a lot of difference. in haskell I can easily understand what I wrote or others wrote because it's usually short code. java is too verbose. perl to me is very cryptic and I feel like I would have to get used to it (it's easy to learn though). |
| 00:52:24 | <unit73e> | and javascript I facepalm more than code |
| 00:52:45 | <apache2> | mauke: sure, PHP is also easy if you're a C programmer and you go internalize the Zen engine thing |
| 00:53:10 | <mauke> | I would disagree with that |
| 00:54:00 | <unit73e> | python is my prefered I don't care if it's good code or not language |
| 00:54:51 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 252 seconds) |
| 00:55:20 | <mauke> | my point is that Perl's data model is based on how C does data structures |
| 00:55:27 | <mauke> | it has nothing to do with implementation details |
| 00:55:35 | <apache2> | so is PHP's? |
| 00:55:42 | <apache2> | they just took the scenic route |
| 00:55:51 | <apache2> | it's all expressible in C |
| 00:56:16 | <mauke> | I don't think it is expressible in C, short of writing a custom interpreter |
| 00:56:20 | → | fanatichd joins (fanatichd@cpc76960-warw17-2-0-cust137.3-2.cable.virginm.net) |
| 00:58:10 | <apache2> | I just think the combination of pointer types and heteregenous container types and dynamic typing makes for a confusing experience, especially if you're not fluent to the point where you've memorized all the weird symbols |
| 00:58:25 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 00:58:51 | × | Guest75 quits (~Guest75@178.141.149.12) (Quit: Client closed) |
| 00:59:10 | <mauke> | PHP lets you put (dynamic) arrays in arrays, it treats arrays as value types (so copying an array of arrays makes recursive copies of everything), and it considers "arrays" to be finite maps that can be indexed by strings |
| 00:59:15 | <mauke> | none of that is a C thing |
| 00:59:16 | × | fanatichd quits (fanatichd@cpc76960-warw17-2-0-cust137.3-2.cable.virginm.net) (K-Lined) |
| 00:59:49 | <apache2> | it also makes it harder to see what's going on when you don't have a clear overview of which parameters (or how many, even) a function takes |
| 01:00:37 | <apache2> | all of which you can arguable emulate in C, it's just not what good C looks like |
| 01:00:42 | → | Guest75 joins (~Guest75@178.141.149.12) |
| 01:00:47 | <apache2> | arguably* |
| 01:02:23 | <apache2> | mauke: heh yeah, php arrays are a thing of beauty. the "last in, last out" iteration order thing is also pretty amusing |
| 01:02:47 | <mauke> | on the other hand, consider ideas like: data structures are built out of pointers. (de)referencing is an explicit operation. there is no such thing as an "array value" (use a pointer instead). |
| 01:03:03 | <mauke> | pointers are first-class values |
| 01:03:17 | <mauke> | these are things that Perl and C have in common |
| 01:03:24 | × | mizlan quits (~mizlan@131.179.76.137) (Ping timeout: 260 seconds) |
| 01:04:32 | <apache2> | named function parameters would have gone a long way |
| 01:05:00 | <geekosaur> | hashes emulate them fairly well though |
| 01:05:08 | <mauke> | do you mean stuff like sub foo($x, $y, $z) { ... }? |
| 01:05:18 | <mauke> | i.e. formal parameter lists? |
| 01:05:33 | <geekosaur> | unless you mean that |
| 01:08:50 | <mauke> | because I've been using those in perl for 10 years |
| 01:12:04 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:13:12 | <yushyin> | i used to use a more fancy variant of parameter lists with the help of a module, written by mauke ;) |
| 01:13:13 | → | barzo joins (~hd@31.223.41.44) |
| 01:16:22 | <mauke> | :-D |
| 01:18:12 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:18:56 | → | mizlan joins (~mizlan@2607:f010:2e9:21:d18b:842e:d3ec:9398) |
| 01:20:07 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 252 seconds) |
| 01:22:53 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 01:28:13 | × | xff0x_ quits (~xff0x@2405:6580:b080:900:ece5:bb89:923a:51c8) (Ping timeout: 252 seconds) |
| 01:36:54 | × | zeenk quits (~zeenk@2a02:2f04:a014:8700::7fe) (Quit: Konversation terminated!) |
| 01:39:15 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 01:44:48 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Quit: ZNC 1.8.2 - https://znc.in) |
| 01:49:59 | × | son0p quits (~ff@181.136.122.143) (Ping timeout: 246 seconds) |
| 01:52:27 | × | mizlan quits (~mizlan@2607:f010:2e9:21:d18b:842e:d3ec:9398) (Ping timeout: 255 seconds) |
| 02:00:54 | × | finsternis quits (~X@23.226.237.192) (Read error: Connection reset by peer) |
| 02:07:55 | × | mei quits (~mei@user/mei) (Ping timeout: 260 seconds) |
| 02:11:56 | → | mei joins (~mei@user/mei) |
| 02:14:40 | → | mizlan joins (~mizlan@2607:f010:2a7:1005:f921:fb99:8d3a:9d1) |
| 02:14:41 | → | xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
| 02:15:44 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 260 seconds) |
| 02:24:59 | <apache2> | mauke: oh, yeah, that is exactly what I meant |
| 02:25:13 | <apache2> | :o learn something every day |
| 02:33:32 | × | mizlan quits (~mizlan@2607:f010:2a7:1005:f921:fb99:8d3a:9d1) (Quit: mizlan) |
| 02:43:39 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 02:44:35 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 264 seconds) |
| 02:48:25 | → | razetime joins (~Thunderbi@117.193.1.37) |
| 02:48:27 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 02:49:58 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 02:55:35 | × | mcglk quits (~mcglk@2601:600:9f7f:e300:4cfa:364e:e1e4:69ad) (Quit: (zzz)) |
| 02:55:41 | × | Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 03:05:54 | → | mcglk joins (~mcglk@2601:600:9f7f:e300:4cfa:364e:e1e4:69ad) |
| 03:06:19 | × | unit73e quits (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 248 seconds) |
| 03:08:26 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) |
| 03:11:10 | × | mcglk quits (~mcglk@2601:600:9f7f:e300:4cfa:364e:e1e4:69ad) (Quit: (zzz)) |
| 03:15:22 | → | mcglk joins (~mcglk@2601:600:9f7f:e300:4cfa:364e:e1e4:69ad) |
| 03:15:23 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 248 seconds) |
| 03:15:38 | → | hueso joins (~root@user/hueso) |
| 03:16:10 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds) |
| 03:16:45 | <mauke> | apache2: yeah, those have been available (albeit as "experimental") since 5.20 and as a normal feature since 5.36. |
| 03:18:18 | → | harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 03:25:56 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 03:28:31 | → | bilegeek joins (~bilegeek@2600:1008:b018:3e3e:3230:f753:2573:58ce) |
| 03:28:45 | × | mcglk quits (~mcglk@2601:600:9f7f:e300:4cfa:364e:e1e4:69ad) (Quit: (zzz)) |
| 03:30:05 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 03:34:45 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 256 seconds) |
| 03:45:48 | × | Guest75 quits (~Guest75@178.141.149.12) (Ping timeout: 260 seconds) |
| 03:47:54 | × | td_ quits (~td@i53870917.versanet.de) (Ping timeout: 260 seconds) |
| 03:48:38 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds) |
| 03:49:14 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Read error: Connection reset by peer) |
| 03:49:24 | → | td_ joins (~td@i53870930.versanet.de) |
| 03:50:26 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 03:51:23 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 03:54:40 | × | razetime quits (~Thunderbi@117.193.1.37) (Ping timeout: 252 seconds) |
| 03:56:17 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds) |
| 03:57:18 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 04:02:54 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 04:03:22 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 04:03:46 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 04:08:19 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 260 seconds) |
| 04:10:21 | × | oldfashionedcow quits (~Rahul_San@user/oldfashionedcow) (Quit: WeeChat 3.8) |
| 04:13:20 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 04:13:52 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 04:16:40 | × | mikoto-chan quits (~mikoto-ch@2001:999:784:4cb8:d8e9:51ca:a70:b0e5) (Quit: WeeChat 3.6) |
| 04:18:43 | × | jero98772 quits (~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c) (Remote host closed the connection) |
| 04:24:02 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 04:30:29 | → | mcglk joins (~mcglk@2601:600:9f7f:e300:9190:e0f8:c28e:3eed) |
| 04:38:04 | × | heartburn quits (~gass@2a00:d880:3:1::b1e4:b241) (Ping timeout: 252 seconds) |
| 04:39:08 | → | razetime joins (~Thunderbi@117.193.1.37) |
| 04:40:58 | → | heartburn joins (~gass@2a00:d880:3:1::b1e4:b241) |
| 04:49:47 | × | harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 04:54:16 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 04:58:36 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 252 seconds) |
| 05:01:31 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 05:03:23 | → | elevenkb joins (~elevenkb@105.184.125.233) |
| 05:05:52 | → | Guest75 joins (~Guest75@178.141.149.12) |
| 05:09:57 | × | thegeekinside quits (~thegeekin@189.180.66.244) (Ping timeout: 256 seconds) |
| 05:13:43 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 05:17:24 | → | ddellacosta joins (~ddellacos@143.244.47.100) |
| 05:23:29 | → | jinsun__ joins (~jinsun@user/jinsun) |
| 05:23:29 | jinsun | is now known as Guest5124 |
| 05:23:29 | jinsun__ | is now known as jinsun |
| 05:26:15 | × | Guest5124 quits (~jinsun@user/jinsun) (Ping timeout: 260 seconds) |
| 05:26:16 | × | Vajb quits (~Vajb@2001:999:78d:d7:457c:7773:573e:6903) (Read error: Connection reset by peer) |
| 05:26:31 | × | CiaoSen quits (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 05:27:37 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) |
| 05:28:38 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 05:32:54 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 260 seconds) |
| 05:45:53 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds) |
| 05:47:35 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 05:53:39 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
| 05:58:14 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 05:59:46 | → | Vajb joins (~Vajb@2001:999:78d:d7:457c:7773:573e:6903) |
| 06:00:22 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 06:04:36 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 252 seconds) |
| 06:11:55 | × | johnw_ quits (~johnw@2600:1700:cf00:db0:ed68:6ce8:98a1:2c83) (Quit: ZNC - http://znc.in) |
| 06:12:18 | → | bgs joins (~bgs@212-85-160-171.dynamic.telemach.net) |
| 06:20:05 | × | Guest75 quits (~Guest75@178.141.149.12) (Quit: Client closed) |
| 06:21:46 | → | Guest75 joins (~Guest75@178.141.149.12) |
| 06:25:20 | × | bilegeek quits (~bilegeek@2600:1008:b018:3e3e:3230:f753:2573:58ce) (Quit: Leaving) |
| 06:26:27 | × | bgs quits (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
| 06:28:27 | × | perrierjouet quits (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Ping timeout: 248 seconds) |
| 06:29:41 | → | perrierjouet joins (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) |
| 06:32:09 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 06:33:51 | → | mechap2 joins (~mechap@user/mechap) |
| 06:34:57 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 256 seconds) |
| 06:36:35 | × | mechap1 quits (~mechap@user/mechap) (Ping timeout: 246 seconds) |
| 06:37:31 | × | mcglk quits (~mcglk@2601:600:9f7f:e300:9190:e0f8:c28e:3eed) (Ping timeout: 260 seconds) |
| 06:39:16 | → | mcglk joins (~mcglk@2601:600:9f7f:e300:c97:c704:43b8:7bc7) |
| 06:43:25 | → | mcglk_ joins (~mcglk@2601:600:9f7f:e300:997b:556a:42cb:8050) |
| 06:47:07 | × | mcglk quits (~mcglk@2601:600:9f7f:e300:c97:c704:43b8:7bc7) (Ping timeout: 248 seconds) |
| 06:49:03 | × | haritz quits (~hrtz@user/haritz) (Ping timeout: 265 seconds) |
| 07:10:45 | → | zeenk joins (~zeenk@2a02:2f04:a014:8700::7fe) |
| 07:11:03 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:2283:b41:5476:a828) |
| 07:12:20 | × | sloorush quits (~sloorush@52.187.184.81) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
| 07:16:42 | → | sloorush joins (~sloorush@52.187.184.81) |
| 07:18:38 | × | shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 246 seconds) |
| 07:23:12 | × | mei quits (~mei@user/mei) (Ping timeout: 255 seconds) |
| 07:25:15 | × | use-value quits (~Thunderbi@2a00:23c6:8a03:2f01:1128:5091:e8f3:b17a) (Read error: Connection reset by peer) |
| 07:28:40 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 07:33:29 | → | opticblast joins (~Thunderbi@secure-165.caltech.edu) |
| 07:41:39 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 07:44:53 | × | Vajb quits (~Vajb@2001:999:78d:d7:457c:7773:573e:6903) (Ping timeout: 246 seconds) |
| 07:45:03 | → | califax joins (~califax@user/califx) |
| 07:45:20 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds) |
| 07:45:52 | × | sloorush quits (~sloorush@52.187.184.81) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
| 07:46:15 | × | carbolymer quits (~carbolyme@dropacid.net) (Remote host closed the connection) |
| 07:46:40 | → | sloorush joins (~sloorush@52.187.184.81) |
| 07:47:30 | → | carbolymer joins (~carbolyme@dropacid.net) |
| 07:47:37 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 07:50:05 | → | Vajb joins (~Vajb@2001:999:585:8d90:8bc4:5564:7d08:18a) |
| 07:52:06 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 07:53:32 | × | sloorush quits (~sloorush@52.187.184.81) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
| 07:53:52 | → | sloorush joins (~sloorush@52.187.184.81) |
| 08:00:05 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 08:00:43 | → | mei joins (~mei@user/mei) |
| 08:13:27 | → | mmhat joins (~mmh@p200300f1c7123c88ee086bfffe095315.dip0.t-ipconnect.de) |
| 08:18:08 | × | ubert quits (~Thunderbi@p548c9ce5.dip0.t-ipconnect.de) (Quit: ubert) |
| 08:18:23 | → | ubert joins (~Thunderbi@p200300ecdf264eae508459a626a67f13.dip0.t-ipconnect.de) |
| 08:20:35 | → | Guest3777 joins (~Guest37@110.235.233.57) |
| 08:22:37 | × | mmhat quits (~mmh@p200300f1c7123c88ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.8) |
| 08:24:12 | → | freeside joins (~mengwong@122.11.214.172) |
| 08:24:15 | Guest3777 | is now known as Enigmage |
| 08:26:00 | × | Enigmage quits (~Guest37@110.235.233.57) (Quit: Client closed) |
| 08:28:46 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 08:29:35 | × | anthezium quits (~ted@75.164.81.158) (Ping timeout: 264 seconds) |
| 08:35:59 | → | fserucas joins (~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) |
| 08:36:11 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds) |
| 08:42:18 | → | acidjnk_new joins (~acidjnk@p200300d6e715c41591073076158b9e8c.dip0.t-ipconnect.de) |
| 08:43:46 | → | nschoe joins (~q@141.101.51.197) |
| 08:46:02 | → | anthezium joins (~ted@97-120-70-39.ptld.qwest.net) |
| 08:48:42 | → | elevenkb63 joins (~elevenkb@105.184.125.233) |
| 08:48:53 | × | elevenkb63 quits (~elevenkb@105.184.125.233) (Write error: Broken pipe) |
| 08:49:38 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) (Remote host closed the connection) |
| 08:49:43 | → | Major_Biscuit joins (~MajorBisc@145.15.244.234) |
| 08:57:31 | × | Vajb quits (~Vajb@2001:999:585:8d90:8bc4:5564:7d08:18a) (Ping timeout: 260 seconds) |
| 08:58:14 | × | jonathanx quits (~jonathan@h-178-174-176-109.a357.priv.bahnhof.se) (Ping timeout: 260 seconds) |
| 08:59:13 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:2283:b41:5476:a828) (Quit: WeeChat 2.8) |
| 08:59:30 | × | carbolymer quits (~carbolyme@dropacid.net) (Quit: No Ping reply in 180 seconds.) |
| 08:59:49 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 09:00:05 | → | michalz joins (~michalz@185.246.207.200) |
| 09:00:10 | → | Vajb joins (~Vajb@2001:999:505:948d:ba9e:dbca:9a0a:eac6) |
| 09:01:12 | → | carbolymer joins (~carbolyme@dropacid.net) |
| 09:04:17 | × | ft quits (~ft@p4fc2a257.dip0.t-ipconnect.de) (Quit: leaving) |
| 09:04:18 | → | Kuttenbrunzer joins (~Kuttenbru@2a02:8108:8b80:1d48::f617) |
| 09:07:54 | → | boxscape_ joins (~boxscape_@213.52.37.155) |
| 09:08:03 | × | Major_Biscuit quits (~MajorBisc@145.15.244.234) (Ping timeout: 255 seconds) |
| 09:10:25 | <Inst__> | gah |
| 09:10:29 | <Inst__> | i had this code working last night |
| 09:10:34 | Inst__ | is now known as Inst |
| 09:11:31 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 260 seconds) |
| 09:11:52 | → | sammelweis joins (~quassel@mobile-166-170-23-171.mycingular.net) |
| 09:13:07 | × | waleee quits (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) (Ping timeout: 252 seconds) |
| 09:17:06 | → | coot joins (~coot@213.134.171.3) |
| 09:22:13 | → | avicenzi joins (~avicenzi@2a00:ca8:a1f:b004::c32) |
| 09:47:40 | × | freeside quits (~mengwong@122.11.214.172) (Read error: Connection reset by peer) |
| 09:48:05 | × | acidjnk_new quits (~acidjnk@p200300d6e715c41591073076158b9e8c.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 09:48:56 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 09:50:06 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) |
| 09:50:12 | → | kenran joins (~user@user/kenran) |
| 09:50:38 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:2283:b41:5476:a828) |
| 09:51:45 | → | freeside joins (~mengwong@122.11.214.172) |
| 09:52:55 | × | razetime quits (~Thunderbi@117.193.1.37) (Remote host closed the connection) |
| 09:53:53 | → | acidjnk_new joins (~acidjnk@p200300d6e715c415694b102f8bcbc4be.dip0.t-ipconnect.de) |
| 09:54:35 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) (Ping timeout: 260 seconds) |
| 10:00:10 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 10:00:18 | × | elevenkb quits (~elevenkb@105.184.125.233) (Ping timeout: 260 seconds) |
| 10:03:17 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 10:05:55 | × | xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 252 seconds) |
| 10:18:23 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 10:19:28 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 10:20:02 | → | turlando joins (~turlando@user/turlando) |
| 10:24:34 | → | ubert1 joins (~Thunderbi@2a02:8109:abc0:6434:dc1d:737c:6633:78c1) |
| 10:27:50 | × | the_proffesor quits (~theproffe@user/theproffesor) (Ping timeout: 260 seconds) |
| 10:27:52 | → | theproffesor joins (~theproffe@user/theproffesor) |
| 10:32:44 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds) |
| 10:34:04 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 10:36:38 | → | chele joins (~chele@user/chele) |
| 10:37:02 | × | sammelweis quits (~quassel@mobile-166-170-23-171.mycingular.net) (Ping timeout: 246 seconds) |
| 10:37:25 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 10:38:06 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
| 10:41:25 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 10:44:05 | × | fserucas quits (~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Ping timeout: 246 seconds) |
| 10:51:06 | × | troydm quits (~troydm@user/troydm) (Ping timeout: 255 seconds) |
| 10:56:46 | → | elevenkb joins (~elevenkb@105.184.125.233) |
| 10:58:10 | → | gurkenglas joins (~gurkengla@dynamic-046-114-177-155.46.114.pool.telefonica.de) |
| 10:58:24 | × | elevenkb quits (~elevenkb@105.184.125.233) (Client Quit) |
| 11:00:23 | × | turlando quits (~turlando@user/turlando) (Read error: Connection reset by peer) |
| 11:00:52 | → | fserucas joins (~fserucas@2001:8a0:6d00:2500:4717:7619:c4e9:3aa2) |
| 11:01:39 | × | gurkenglas quits (~gurkengla@dynamic-046-114-177-155.46.114.pool.telefonica.de) (*.net *.split) |
| 11:01:51 | → | gurkenglas joins (~gurkengla@dynamic-046-114-177-155.46.114.pool.telefonica.de) |
| 11:02:03 | × | gurkenglas quits (~gurkengla@dynamic-046-114-177-155.46.114.pool.telefonica.de) (Max SendQ exceeded) |
| 11:03:09 | → | gurkenglas joins (~gurkengla@dynamic-046-114-177-155.46.114.pool.telefonica.de) |
| 11:05:36 | × | michalz quits (~michalz@185.246.207.200) (Read error: Connection reset by peer) |
| 11:05:54 | → | michalz joins (~michalz@185.246.207.193) |
| 11:06:05 | × | boxscape_ quits (~boxscape_@213.52.37.155) (Ping timeout: 246 seconds) |
| 11:06:41 | → | xff0x joins (~xff0x@2405:6580:b080:900:871a:e40b:4f89:8da5) |
| 11:08:11 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
| 11:08:24 | → | jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 11:12:10 | → | oldfashionedcow joins (~Rahul_San@user/oldfashionedcow) |
| 11:12:22 | → | turlando joins (~turlando@user/turlando) |
| 11:16:22 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 11:17:17 | × | turlando quits (~turlando@user/turlando) () |
| 11:17:31 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
| 11:17:34 | → | CiaoSen joins (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 11:20:22 | → | turlando joins (~turlando@user/turlando) |
| 11:22:58 | → | Tomx joins (~Tomx@88-119-11-136.static.zebra.lt) |
| 11:26:13 | × | cheater quits (~Username@user/cheater) (Ping timeout: 256 seconds) |
| 11:27:55 | × | CiaoSen quits (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
| 11:27:55 | × | nschoe quits (~q@141.101.51.197) (Ping timeout: 260 seconds) |
| 11:31:04 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 260 seconds) |
| 11:32:33 | × | Tomx quits (~Tomx@88-119-11-136.static.zebra.lt) (Quit: Client closed) |
| 11:33:10 | → | teo joins (~teo@user/teo) |
| 11:34:42 | × | opticblast quits (~Thunderbi@secure-165.caltech.edu) (Quit: opticblast) |
| 11:34:54 | → | opticblast joins (~Thunderbi@secure-165.caltech.edu) |
| 11:39:00 | × | freeside quits (~mengwong@122.11.214.172) (Read error: Connection reset by peer) |
| 11:45:29 | × | acidjnk_new quits (~acidjnk@p200300d6e715c415694b102f8bcbc4be.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
| 11:45:53 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 11:45:54 | → | cheater joins (~Username@user/cheater) |
| 11:57:41 | × | mei quits (~mei@user/mei) (Quit: mei) |
| 11:59:36 | → | boxscape_ joins (~boxscape_@213.52.37.155) |
| 12:02:23 | → | CiaoSen joins (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 12:05:26 | × | Kuttenbrunzer quits (~Kuttenbru@2a02:8108:8b80:1d48::f617) (Quit: Where is it) |
| 12:08:14 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 12:14:09 | → | freeside joins (~mengwong@103.252.202.170) |
| 12:18:39 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
| 12:19:38 | × | CiaoSen quits (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 12:20:48 | × | _mokee_ quits (~mokee@37.228.215.106) (Remote host closed the connection) |
| 12:25:04 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 12:25:51 | pja_ | is now known as pja |
| 12:28:34 | → | mei joins (~mei@user/mei) |
| 12:37:23 | × | kenran quits (~user@user/kenran) (Remote host closed the connection) |
| 12:45:11 | × | gurkenglas quits (~gurkengla@dynamic-046-114-177-155.46.114.pool.telefonica.de) (Ping timeout: 264 seconds) |
| 12:45:24 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 12:48:11 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds) |
| 12:48:23 | → | pragma- joins (~chaos@user/pragmatic-chaos) |
| 12:49:03 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 12:53:00 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 13:05:04 | × | pragma- quits (~chaos@user/pragmatic-chaos) (Quit: Bye!) |
| 13:05:06 | × | coot quits (~coot@213.134.171.3) (Quit: coot) |
| 13:05:36 | → | pragma- joins (~chaos@user/pragmatic-chaos) |
| 13:07:48 | → | acidjnk_new joins (~acidjnk@p200300d6e715c415694b102f8bcbc4be.dip0.t-ipconnect.de) |
| 13:10:52 | → | segfaultfizzbuzz joins (~segfaultf@172.58.122.111) |
| 13:13:36 | → | rustisafungus joins (~segfaultf@108.211.201.53) |
| 13:14:56 | × | segfaultfizzbuzz quits (~segfaultf@172.58.122.111) (Ping timeout: 246 seconds) |
| 13:17:01 | → | nschoe joins (~q@141.101.51.197) |
| 13:17:23 | → | gurkenglas joins (~gurkengla@dynamic-046-114-177-155.46.114.pool.telefonica.de) |
| 13:22:42 | → | thyriaen joins (~thyriaen@2a01:aea0:dd4:4fa4:6245:cbff:fe9f:48b1) |
| 13:23:52 | × | nschoe quits (~q@141.101.51.197) (Quit: Switching off) |
| 13:25:11 | → | haritz joins (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) |
| 13:25:11 | × | haritz quits (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host) |
| 13:25:11 | → | haritz joins (~hrtz@user/haritz) |
| 13:29:16 | Philonous_ | is now known as Philonous |
| 13:30:31 | × | gurkenglas quits (~gurkengla@dynamic-046-114-177-155.46.114.pool.telefonica.de) (Ping timeout: 252 seconds) |
| 13:40:12 | → | kuttenbrunzer joins (~kuttenbru@2a02:8108:8b80:1d48:e8b7:ebaf:ed8d:6e4b) |
| 13:40:30 | → | coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 13:41:11 | → | use-value joins (~Thunderbi@2a00:23c6:8a03:2f01:4828:8948:882f:20e0) |
| 13:46:03 | → | Shaeto joins (~Shaeto@94.25.234.173) |
| 13:48:07 | × | rustisafungus quits (~segfaultf@108.211.201.53) (Ping timeout: 252 seconds) |
| 13:48:52 | → | razetime joins (~Thunderbi@117.193.1.37) |
| 13:51:25 | → | nschoe joins (~q@141.101.51.197) |
| 13:52:53 | → | shon joins (~shon@gateway/tor-sasl/shon) |
| 13:53:53 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds) |
| 13:56:31 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 13:59:43 | → | cheater_ joins (~Username@user/cheater) |
| 14:00:23 | × | cheater quits (~Username@user/cheater) (Ping timeout: 246 seconds) |
| 14:00:29 | cheater_ | is now known as cheater |
| 14:01:32 | × | razetime quits (~Thunderbi@117.193.1.37) (Quit: See You Space Cowboy) |
| 14:01:55 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 260 seconds) |
| 14:02:22 | × | acidjnk_new quits (~acidjnk@p200300d6e715c415694b102f8bcbc4be.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 14:02:37 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 14:06:36 | → | CiaoSen joins (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 14:06:49 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds) |
| 14:09:51 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 14:10:11 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 14:12:51 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 14:14:15 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 14:15:12 | → | thegeekinside joins (~thegeekin@189.180.66.244) |
| 14:15:33 | → | shriekingnoise joins (~shrieking@186.137.175.87) |
| 14:16:40 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 268 seconds) |
| 14:17:07 | → | akegalj joins (~akegalj@89-164-101-255.dsl.iskon.hr) |
| 14:20:06 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 14:20:44 | × | CiaoSen quits (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 14:21:12 | → | CiaoSen joins (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 14:25:17 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
| 14:25:31 | <eldritchcookie[4> | is there a library similar to sympy for haskell? |
| 14:30:39 | → | troydm joins (~troydm@user/troydm) |
| 14:32:07 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 252 seconds) |
| 14:33:49 | <boxscape_> | I suspect you'll find some proofs of concept but nothing nearly as fully featured as sympy |
| 14:35:37 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 14:39:19 | <raehik> | to use the index of a constructor in some generics code, it seems I must thread it through `l:+:r` instances such that `l` returns its "total" index (after the rightmost element in its sum tree), then increment for `r`. is there a way around this? it feels clunky/slow |
| 14:40:00 | <raehik> | I looked at how the binary serializing pkg does things, and it seems to take a different approach using GHC's guarantee of decently-balanced sum trees (? I think anyway) |
| 14:40:26 | <raehik> | but in my case I need the actual index. do I have to do all the counting manually |
| 14:40:46 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:2283:b41:5476:a828) (Quit: WeeChat 2.8) |
| 14:47:39 | × | coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
| 14:48:37 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds) |
| 14:52:00 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 14:53:04 | → | acidjnk_new joins (~acidjnk@p200300d6e715c415694b102f8bcbc4be.dip0.t-ipconnect.de) |
| 14:54:33 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) |
| 14:59:03 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) (Ping timeout: 255 seconds) |
| 14:59:04 | → | kurbus joins (~kurbus@user/kurbus) |
| 15:07:16 | <raehik> | glguy_, does the generic deriving in cereal (and adapted by binary) work based on the assumption that GHC balances its generic sums & products rep? |
| 15:13:25 | × | kuttenbrunzer quits (~kuttenbru@2a02:8108:8b80:1d48:e8b7:ebaf:ed8d:6e4b) (Quit: Leaving) |
| 15:15:29 | → | zer0bitz_ joins (~zer0bitz@196.244.192.58) |
| 15:18:53 | × | Luj quits (~Luj@2a01:e0a:5f9:9681:5880:c9ff:fe9f:3dfb) (Quit: The Lounge - https://thelounge.chat) |
| 15:19:19 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Remote host closed the connection) |
| 15:19:41 | × | zer0bitz quits (~zer0bitz@2001:2003:f443:d600:a4e6:fd8f:f654:94ad) (Ping timeout: 256 seconds) |
| 15:20:21 | → | Luj joins (~Luj@2a01:e0a:5f9:9681:a800:fa55:60bb:e167) |
| 15:22:56 | → | beteigeuze joins (~Thunderbi@bl14-81-220.dsl.telepac.pt) |
| 15:25:32 | × | L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer) |
| 15:26:27 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 15:33:17 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 15:34:14 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 15:35:48 | × | Luj quits (~Luj@2a01:e0a:5f9:9681:a800:fa55:60bb:e167) (Quit: The Lounge - https://thelounge.chat) |
| 15:36:46 | → | Luj joins (~Luj@2a01:e0a:5f9:9681:a800:fa55:60bb:e167) |
| 15:44:35 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds) |
| 15:48:25 | × | L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer) |
| 15:48:34 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 15:52:42 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 15:53:25 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 15:54:53 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 15:57:13 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 252 seconds) |
| 15:57:15 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Remote host closed the connection) |
| 15:57:40 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 15:57:47 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 15:59:39 | × | jonathanx quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 268 seconds) |
| 16:00:12 | → | coot joins (~coot@213.134.171.3) |
| 16:00:45 | → | jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 16:02:48 | → | trev_ joins (~trev@109-252-35-99.nat.spd-mgts.ru) |
| 16:06:05 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 16:06:57 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 16:09:13 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 16:10:14 | × | ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 255 seconds) |
| 16:11:15 | → | ec joins (~ec@gateway/tor-sasl/ec) |
| 16:11:45 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) |
| 16:12:12 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 16:15:41 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 268 seconds) |
| 16:21:41 | → | ames joins (~amelia@offtopia/offtopian/amelia) |
| 16:22:31 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) (Remote host closed the connection) |
| 16:28:47 | × | acidjnk_new quits (~acidjnk@p200300d6e715c415694b102f8bcbc4be.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 16:31:33 | → | freeside joins (~mengwong@103.252.202.170) |
| 16:31:55 | → | dunj3 joins (~dunj3@kingdread.de) |
| 16:35:15 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 16:35:38 | × | oldfashionedcow quits (~Rahul_San@user/oldfashionedcow) (Quit: WeeChat 3.8) |
| 16:40:12 | → | jero98772 joins (~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c) |
| 16:40:23 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 264 seconds) |
| 16:40:44 | × | hpc quits (~juzz@ip98-169-35-163.dc.dc.cox.net) (Ping timeout: 255 seconds) |
| 16:42:24 | → | hpc joins (~juzz@ip98-169-35-163.dc.dc.cox.net) |
| 16:42:33 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection) |
| 16:43:06 | → | razetime joins (~Thunderbi@117.193.1.37) |
| 16:43:15 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 16:44:40 | × | CiaoSen quits (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 16:46:59 | × | hpc quits (~juzz@ip98-169-35-163.dc.dc.cox.net) (Ping timeout: 264 seconds) |
| 16:51:35 | <lyxia> | raehik: it shouldn't be slow if inlining works |
| 16:52:57 | × | boxscape_ quits (~boxscape_@213.52.37.155) (Ping timeout: 252 seconds) |
| 16:53:01 | <lyxia> | as for making the code less awkward, you can compute the index in a separate pass, and then just pass it down in the main pass |
| 16:53:22 | <lyxia> | or use generics-sop which relies on more high-level combinators |
| 16:53:49 | → | hpc joins (~juzz@ip98-169-35-163.dc.dc.cox.net) |
| 16:59:51 | → | johnw joins (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) |
| 17:02:38 | <raehik> | lyxia: that's true. I'm curious how the resulting code would really look (still GHC core-averse) |
| 17:02:48 | × | ubert1 quits (~Thunderbi@2a02:8109:abc0:6434:dc1d:737c:6633:78c1) (Quit: ubert1) |
| 17:04:26 | <raehik> | and I think you're right I could probably add another function in the generic deriver class for index. that also feels easier for GHC to optimize |
| 17:07:47 | × | kurbus quits (~kurbus@user/kurbus) (Quit: Client closed) |
| 17:15:02 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds) |
| 17:16:21 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 17:17:12 | <Jadesheit[m]> | when I have a class definition like class Foo a where I can have functions like foo :: forall b. a b but how can I scope this forall to be on the class instead? |
| 17:17:37 | <Jadesheit[m]> | Specifically I want to fix t a on the class scope so I can use a in functions |
| 17:17:50 | <Jadesheit[m]> | * when I have a class definition like class Foo t where I can have functions like foo :: forall b. t b but how can I scope this forall to be on the class instead? |
| 17:18:01 | <Jadesheit[m]> | * when I have a class definition like class Foo t where I can have functions like foo :: forall a. t a but how can I scope this forall to be on the class instead? |
| 17:18:54 | <Jadesheit[m]> | (I might be using wrong terms here) |
| 17:20:07 | <geekosaur> | aren't class-scoped tyvars already visible that way? |
| 17:20:18 | → | kurbus joins (~kurbus@user/kurbus) |
| 17:20:31 | <Jadesheit[m]> | how would that work? |
| 17:20:33 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 17:20:43 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 17:20:50 | <geekosaur> | hm, might need `ScopedTypeVariables` and explicit `forall` for them to be visible within definitions, though |
| 17:21:10 | <Jadesheit[m]> | I want to write `instance Foo (Bar a)` where both the `Bar` and the `a` are independently "visible" in the class |
| 17:21:32 | <geekosaur> | Jadesheit[m], a class-scoped type variable would be pretty useless if methods couldn't use it directly |
| 17:21:56 | × | jonathanx quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
| 17:21:58 | <geekosaur> | % :info fmap |
| 17:21:58 | <yahb2> | type Functor :: (* -> *) -> Constraint ; class Functor f where ; fmap :: (a -> b) -> f a -> f b ; ... ; -- Defined in ‘GHC.Base’ |
| 17:22:02 | <Jadesheit[m]> | how does it work on the syntax level? |
| 17:22:31 | <geekosaur> | should just work |
| 17:22:33 | <Jadesheit[m]> | yeah but here the a and b are local to the method right |
| 17:22:43 | <tomsmeding> | and f is class-global, yes |
| 17:22:54 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Ping timeout: 268 seconds) |
| 17:23:01 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) |
| 17:23:20 | <Jadesheit[m]> | I want the a to be class-global too |
| 17:23:21 | <Jadesheit[m]> | * I want the a to be class-global too in my specific case |
| 17:23:23 | <Jadesheit[m]> | I think |
| 17:23:39 | <geekosaur> | if it';s named in the class header then it should be |
| 17:24:11 | × | avicenzi quits (~avicenzi@2a00:ca8:a1f:b004::c32) (Ping timeout: 264 seconds) |
| 17:25:04 | <Jadesheit[m]> | but how would you do that |
| 17:25:12 | <geekosaur> | as I said earlierm it;d be useless if it weren't |
| 17:25:17 | <Jadesheit[m]> | class Foo (Bar a) where |
| 17:25:20 | <Jadesheit[m]> | does that work? |
| 17:25:25 | <tomsmeding> | then 'a' will be visible |
| 17:25:26 | <geekosaur> | why do you think you need to do something special? |
| 17:25:27 | <geekosaur> | \ |
| 17:25:53 | <geekosaur> | classes would be useless if they didn't already work that way |
| 17:26:28 | → | use-value1 joins (~Thunderbi@2a00:23c6:8a03:2f01:6c1e:f171:b1ec:34de) |
| 17:26:42 | <Jadesheit[m]> | it doesn't work if the inner one is a type variable as well |
| 17:26:50 | <Jadesheit[m]> | class Foo (a b) where |
| 17:27:06 | → | jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 17:27:34 | <tomsmeding> | wait that is nonsense anyhow |
| 17:27:41 | <tomsmeding> | don't you mean 'instance Foo (a b) where'? |
| 17:28:08 | <tomsmeding> | a class declaration always looks like 'class Foo a b c d where', the a/b/c/d cannot be anything but type variables |
| 17:28:17 | <tomsmeding> | (well, technically they can also have kind signatures, but let's not get into that) |
| 17:28:21 | × | remedan quits (~remedan@ip-89-177-74-251.bb.vodafone.cz) (Quit: Bye!) |
| 17:28:26 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) (Ping timeout: 252 seconds) |
| 17:28:31 | <Jadesheit[m]> | that's what I'm trying |
| 17:28:53 | × | use-value quits (~Thunderbi@2a00:23c6:8a03:2f01:4828:8948:882f:20e0) (Ping timeout: 256 seconds) |
| 17:28:53 | use-value1 | is now known as use-value |
| 17:29:09 | <Jadesheit[m]> | I know kind signature stuff a little |
| 17:29:11 | <Jadesheit[m]> | but I want the specific kind to be scoped to the class |
| 17:29:32 | × | barzo quits (~hd@31.223.41.44) (Ping timeout: 252 seconds) |
| 17:29:56 | <tomsmeding> | Jadesheit[m]: do you want something like 'class Foo (a :: Type -> Type) where'? |
| 17:30:05 | Jadesheit[m] | sent a hs code block: https://libera.ems.host/_matrix/media/v3/download/libera.chat/ecf3505f3cec2a71a66c3cb62a2fc4f13a7a8dd3 |
| 17:30:06 | <Jadesheit[m]> | ` |
| 17:30:24 | <tomsmeding> | that's impossible |
| 17:30:35 | <Jadesheit[m]> | tomsmeding: yes but with the specific kind fixed and scoped to the class |
| 17:30:38 | <Jadesheit[m]> | I know+ |
| 17:30:43 | <tomsmeding> | this is unrelated to kinds |
| 17:30:47 | → | econo joins (uid147250@user/econo) |
| 17:30:51 | <Jadesheit[m]> | tomsmeding: hm ok |
| 17:31:01 | <tomsmeding> | what's the purpose? |
| 17:31:14 | <tomsmeding> | there is a workaround I can think of, but it's ugly, and there might be an X-Y problem here |
| 17:31:58 | × | nschoe quits (~q@141.101.51.197) (Quit: Switching off) |
| 17:32:02 | <Jadesheit[m]> | I want to have a general class for a Tree... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/118d932ff39bc767e2efc2286ab83219cb0d436d>) |
| 17:32:27 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 17:32:38 | <Jadesheit[m]> | might just be stupid lmao |
| 17:32:54 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) |
| 17:32:55 | <Jadesheit[m]> | s/data/value/ |
| 17:33:48 | <tomsmeding> | Jadesheit[m]: make it just this: class Tree t a where { data :: a ; children :: [t a] } |
| 17:34:08 | <Jadesheit[m]> | ohhhhhhhhhhhhhh |
| 17:34:20 | <tomsmeding> | works |
| 17:35:39 | <c_wraith> | uh... that definition is sketchy |
| 17:35:56 | <c_wraith> | I mean, you can make it work with -XTypeApplications |
| 17:36:01 | <tomsmeding> | fair point |
| 17:36:08 | <c_wraith> | but it's really awkward to not have data depend on t |
| 17:36:20 | <tomsmeding> | class Tree t a where { data :: t a -> a ; children :: t a -> [t a] } |
| 17:36:26 | <tomsmeding> | this was probably the intent |
| 17:36:32 | <tomsmeding> | though actually |
| 17:36:34 | <c_wraith> | ah, true. that works better |
| 17:36:37 | × | razetime quits (~Thunderbi@117.193.1.37) (Remote host closed the connection) |
| 17:36:41 | <tomsmeding> | class Tree t a where { data :: t -> a ; children :: t -> [t] } |
| 17:36:47 | <tomsmeding> | no reason to force 'a' to be a parameter of 't' |
| 17:37:01 | <c_wraith> | eh, that goes back to needing TypeApplications |
| 17:37:12 | <tomsmeding> | class Tree t a | t -> a |
| 17:37:13 | Jadesheit[m] | uploaded an image: (119KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/vzztGaekuHBTFKPWXtIDhkCu/image.png > |
| 17:37:14 | <Jadesheit[m]> | hm |
| 17:37:20 | <c_wraith> | But even before that, my big question is "why is this a class?" |
| 17:37:28 | <tomsmeding> | Jadesheit[m]: yeah that's what c_wraith spotted |
| 17:38:02 | → | acidjnk_new joins (~acidjnk@p200300d6e715c4378995b0b991253537.dip0.t-ipconnect.de) |
| 17:40:30 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 17:41:05 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 17:42:24 | × | sm quits (~sm@plaintextaccounting/sm) (Excess Flood) |
| 17:42:47 | → | sm joins (~sm@plaintextaccounting/sm) |
| 17:43:07 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 17:43:18 | <tomsmeding> | Jadesheit[m]: another option: class HasValues t a where value :: t -> a ; class HasChildren t where children :: t -> [t] |
| 17:44:09 | <geekosaur> | I'm with c_wraith though: are you sure this isn't handled better by a `data`? |
| 17:44:23 | <geekosaur> | This isn't an OOP language |
| 17:47:08 | <Jadesheit[m]> | The idea was to write functions that act on this "general" tree |
| 17:48:16 | <c_wraith> | The best questions to start with when you are thinking about creating a class are: 1) How many different instances am I going to have? 2) What kind of code will I be writing that treats all of those instances the same? |
| 17:48:25 | <Jadesheit[m]> | otherwise you'd need to have conversion methods from and to other tree types |
| 17:49:06 | → | infinity0_ joins (~infinity0@pwned.gg) |
| 17:49:07 | × | infinity0 quits (~infinity0@pwned.gg) (Killed (mercury.libera.chat (Nickname regained by services))) |
| 17:49:07 | infinity0_ | is now known as infinity0 |
| 17:54:25 | → | cheater_ joins (~Username@user/cheater) |
| 17:57:20 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds) |
| 17:57:26 | × | cheater quits (~Username@user/cheater) (Ping timeout: 268 seconds) |
| 17:57:31 | cheater_ | is now known as cheater |
| 17:57:35 | × | teo quits (~teo@user/teo) (Ping timeout: 260 seconds) |
| 17:57:47 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds) |
| 17:58:03 | × | fserucas quits (~fserucas@2001:8a0:6d00:2500:4717:7619:c4e9:3aa2) (Remote host closed the connection) |
| 17:58:21 | → | fserucas joins (~fserucas@2001:8a0:6d00:2500:4717:7619:c4e9:3aa2) |
| 18:00:23 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 18:01:09 | × | fserucas quits (~fserucas@2001:8a0:6d00:2500:4717:7619:c4e9:3aa2) (Remote host closed the connection) |
| 18:01:27 | → | fserucas joins (~fserucas@2001:8a0:6d00:2500:4717:7619:c4e9:3aa2) |
| 18:01:50 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 18:05:19 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 18:06:25 | <freeside> | I need a bit of intuition, please. Why does [1,2] <|> [3] ==> [1,2,3] and not [1,2]? |
| 18:06:35 | × | fserucas quits (~fserucas@2001:8a0:6d00:2500:4717:7619:c4e9:3aa2) (Ping timeout: 248 seconds) |
| 18:07:46 | <[exa]> | freeside: the list functor/alternative/monad instances kinda represent "all possible results of a computation" |
| 18:08:20 | <freeside> | I was expecting [] <|> [3] to be analogous to Nothing <|> Just 3 |
| 18:08:28 | <[exa]> | so if you have a computation with all possible results [1,2] and another with all possible results [3], all possible results of either one are literally [1,2,3] |
| 18:09:11 | <[exa]> | > (Nothing <|> Just 3, [] <|> [3]) |
| 18:09:13 | <lambdabot> | (Just 3,[3]) |
| 18:09:39 | <freeside> | > (Just 1 <|> Just 2, [1] <|> [2]) |
| 18:09:41 | <lambdabot> | (Just 1,[1,2]) |
| 18:09:44 | × | coot quits (~coot@213.134.171.3) (Quit: coot) |
| 18:10:11 | <[exa]> | yeah, there's the difference, Just can only store 1 result and the semantics is that it's the "leftmost" one |
| 18:10:12 | <freeside> | is there some idiom which is semantically closer to a "if not null x then x else y" |
| 18:10:34 | <[exa]> | :t fromJust |
| 18:10:36 | <lambdabot> | Maybe a -> a |
| 18:10:36 | <freeside> | i seem to be asking for Perl's // operator lol |
| 18:10:50 | <[exa]> | oh no that one just explodes on Nothing |
| 18:11:21 | <[exa]> | > (fromMaybe 3 Nothing, fromMaybe 3 (Just 5)) |
| 18:11:23 | <lambdabot> | (3,5) |
| 18:11:27 | <[exa]> | that's the one. |
| 18:11:33 | <geekosaur> | > (First [1,2] <|> First [3]) |
| 18:11:35 | <lambdabot> | error: |
| 18:11:35 | <lambdabot> | • Couldn't match expected type ‘Maybe a’ with actual type ‘[a0]’ |
| 18:11:35 | <lambdabot> | • In the first argument of ‘First’, namely ‘[1, 2]’ |
| 18:11:41 | <geekosaur> | hm |
| 18:11:57 | <geekosaur> | thought First was general for monoids |
| 18:13:29 | <[exa]> | `First a` is a semigroup on itself, without requiring Semigroup a, right? |
| 18:14:44 | × | opticblast quits (~Thunderbi@secure-165.caltech.edu) (Ping timeout: 260 seconds) |
| 18:14:47 | × | Shaeto quits (~Shaeto@94.25.234.173) (Quit: WeeChat 3.8) |
| 18:14:56 | <[exa]> | freeside: btw it's pretty common to just `head` that list after the computation is done and get whatever first option that gets through :D |
| 18:15:23 | → | Tuplanolla joins (~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) |
| 18:16:00 | <geekosaur> | I think they want [1.2], not 1 |
| 18:16:13 | <geekosaur> | er, [1,2] |
| 18:17:30 | <freeside> | yeah, i want to return all of the lhs if it's not null |
| 18:17:37 | × | acidjnk_new quits (~acidjnk@p200300d6e715c4378995b0b991253537.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
| 18:18:09 | → | remedan joins (~remedan@ip-89-177-74-251.bb.vodafone.cz) |
| 18:18:55 | <freeside> | not seeing anything in Foldable, but boy, Control.Bool has some wacky stuff up its sleeve |
| 18:19:46 | <geekosaur> | > [[1,2]] <|> [[3]] |
| 18:19:48 | <lambdabot> | [[1,2],[3]] |
| 18:19:52 | × | infinity0 quits (~infinity0@pwned.gg) (Remote host closed the connection) |
| 18:19:55 | <monochrom> | Control.Bool and Data.Machine :) |
| 18:20:58 | × | shon quits (~shon@gateway/tor-sasl/shon) (Quit: WeeChat 3.8) |
| 18:24:03 | → | infinity0 joins (~infinity0@pwned.gg) |
| 18:26:32 | <freeside> | call me crazy, but i have just defined x <|||> y = if not (null x) then x else y :: Foldable t => t a -> t a -> t a |
| 18:27:03 | <freeside> | I would have done <||> but that was taken by Text.Parser.Permutation |
| 18:28:33 | <monochrom> | This is related to Prolog's cut. :) |
| 18:29:08 | <freeside> | oh dear, it is. |
| 18:29:18 | <freeside> | how naf of me |
| 18:29:48 | <monochrom> | It is also worth considering to: newtype CutList a = CutList [a], write its Alternative instance to do <|||> |
| 18:30:31 | <freeside> | (brief moment of existential panic wondering if i should go look at how Curry thinks about this) |
| 18:31:08 | × | tv quits (~tv@user/tv) (Quit: derp) |
| 18:31:35 | → | tv joins (~tv@user/tv) |
| 18:33:53 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) (Remote host closed the connection) |
| 18:34:25 | → | acidjnk_new joins (~acidjnk@p200300d6e715c4378952c6d8f1083787.dip0.t-ipconnect.de) |
| 18:35:31 | × | \yrlnry quits (~yrlnry@2600:4040:738e:5400:b8c6:a4da:9f09:51fa) (Remote host closed the connection) |
| 18:36:18 | → | yrlnry joins (~yrlnry@2600:4040:738e:5400:85d2:5b54:72c6:ed3e) |
| 18:39:28 | <Jadesheit[m]> | can't wait for the ultimate `<||||>` |
| 18:40:41 | <geekosaur> | will https://hackage.haskell.org/package/xmonad-contrib-0.17.1/docs/XMonad-Layout-LayoutCombinators.html#v:-42--42--42--124--124--42--42--42--42- do? |
| 18:42:21 | <monochrom> | Haha that's great ascii art to convey what the operators do geometrically |
| 18:43:56 | × | infinity0 quits (~infinity0@pwned.gg) (Remote host closed the connection) |
| 18:44:26 | × | hrberg quits (~quassel@171.79-160-161.customer.lyse.net) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 18:44:48 | → | finsternis joins (~X@23.226.237.192) |
| 18:46:04 | → | infinity0 joins (~infinity0@pwned.gg) |
| 18:47:34 | → | hrberg joins (~quassel@171.79-160-161.customer.lyse.net) |
| 18:51:11 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 264 seconds) |
| 18:52:29 | → | freeside joins (~mengwong@103.252.202.170) |
| 18:53:22 | × | Inst quits (~Inst@2601:6c4:4081:54f0:d621:5cdd:9051:c240) (Ping timeout: 252 seconds) |
| 18:57:15 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 268 seconds) |
| 18:58:15 | → | freeside joins (~mengwong@103.252.202.170) |
| 18:59:01 | × | trev_ quits (~trev@109-252-35-99.nat.spd-mgts.ru) (Remote host closed the connection) |
| 19:02:07 | → | ft joins (~ft@p4fc2a257.dip0.t-ipconnect.de) |
| 19:02:26 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds) |
| 19:04:32 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 246 seconds) |
| 19:09:29 | × | akegalj quits (~akegalj@89-164-101-255.dsl.iskon.hr) (Quit: leaving) |
| 19:09:36 | → | opticblast joins (~Thunderbi@secure-165.caltech.edu) |
| 19:14:05 | → | freeside joins (~mengwong@103.252.202.170) |
| 19:21:11 | → | Inst joins (~Inst@2601:6c4:4081:54f0:dc48:1108:b41f:ce7b) |
| 19:23:31 | → | bgs joins (~bgs@212-85-160-171.dynamic.telemach.net) |
| 19:23:35 | → | jinsun__ joins (~jinsun@user/jinsun) |
| 19:23:35 | × | jinsun quits (~jinsun@user/jinsun) (Killed (osmium.libera.chat (Nickname regained by services))) |
| 19:23:35 | jinsun__ | is now known as jinsun |
| 19:31:41 | → | seriously_ joins (~seriously@2001:1c06:2715:c200:1800:e7f0:57e2:d1cf) |
| 19:34:22 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) |
| 19:35:15 | → | jespada_ joins (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) |
| 19:35:37 | × | jespada quits (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Ping timeout: 265 seconds) |
| 19:38:41 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) (Ping timeout: 252 seconds) |
| 19:38:58 | × | Xeroine quits (~Xeroine@user/xeroine) (Ping timeout: 252 seconds) |
| 19:39:17 | → | Xeroine joins (~Xeroine@user/xeroine) |
| 19:40:27 | <seriously_> | Hey everyone... I'm really stuck on Excercise 1 here on yorgey-hw11, applicatives: https://www.cis.upenn.edu/~cis1940/spring13/hw/11-applicative2.pdf. We wrote an instance of Applicative (and functor) for the Parser type. Basically by understanding is that using <$> and <*>, we can write the "control structure" of a complex parser composed of low |
| 19:40:28 | <seriously_> | level parsers like primitive parsers. So for example if you want to parse a string that you know will always be in the format 'firstname,lastname' and you want to parse it into a data type (Person = Person String String) then you can define a 'complex' parser (p = Person <$> parseLetters <*> parsePipe <*> parseLetters. The "control structure" being |
| 19:40:28 | <seriously_> | the order in which the parsers appear composed with the apply functions. |
| 19:42:05 | <seriously_> | control structure of parser p: parse letters up to non-letter -> parse out non-letter -> parse letters up to non-letter |
| 19:42:12 | → | unit73e joins (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) |
| 19:43:42 | <monochrom> | zeroOrMore and oneOrMore are each recursive. In fact, you can leverage much code reuse by making them mutually recursive to each other. |
| 19:44:19 | <seriously_> | Now excercise 1 here is telling me to define a control structure which continuously runs a given parser until it fails. I don't know how I can do that... I think i can possibly use the repeat function somehow? |
| 19:44:21 | <monochrom> | They will also need <|>. I forgot whether they need empty. |
| 19:44:32 | × | kurbus quits (~kurbus@user/kurbus) (Quit: Client closed) |
| 19:44:34 | <monochrom> | repeat will not help. |
| 19:44:57 | → | beteigeuze1 joins (~Thunderbi@bl14-81-220.dsl.telepac.pt) |
| 19:45:01 | × | beteigeuze quits (~Thunderbi@bl14-81-220.dsl.telepac.pt) (Read error: Connection reset by peer) |
| 19:45:01 | beteigeuze1 | is now known as beteigeuze |
| 19:46:17 | → | kurbus joins (~kurbus@user/kurbus) |
| 19:46:50 | <seriously_> | I might be understanding this inccorectly but the assignment says I cant use details of the Parser type; only the applicative methods provided on the instance of Parser. So I take this to mean I shouldnt use the runParser command or the Parser constructor... is that right? |
| 19:47:09 | <seriously_> | Applicative instance of Parser* |
| 19:47:12 | <monochrom> | When you finally have a solution, it will look like this English description: `oneOrMore p` runs p, and then --- now that we have done p once, we just need to run p zero or more times! `zeroOrMore p` just means attempting p one or more times, but in case that fails, it's OK, just use <|> to say we have a plan B, which is pure []. |
| 19:47:30 | <monochrom> | Right, no runParser. |
| 19:48:23 | <monochrom> | The solution is also a two-liner (one for each) and extremely short. |
| 19:48:47 | <seriously_> | Thanks for the hints let me see if something clicks |
| 19:52:15 | × | mechap2 quits (~mechap@user/mechap) (Ping timeout: 252 seconds) |
| 19:54:09 | → | mechap2 joins (~mechap@user/mechap) |
| 19:56:39 | × | mechap2 quits (~mechap@user/mechap) (Client Quit) |
| 19:57:08 | → | mechap joins (~mechap@user/mechap) |
| 20:00:34 | → | coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 20:02:07 | × | telser quits (~quassel@user/telser) (Ping timeout: 252 seconds) |
| 20:03:16 | → | telser joins (~quassel@user/telser) |
| 20:05:27 | → | waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
| 20:09:34 | → | gmg joins (~user@user/gehmehgeh) |
| 20:13:47 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 256 seconds) |
| 20:15:00 | → | freeside joins (~mengwong@103.252.202.170) |
| 20:15:03 | → | pavonia joins (~user@user/siracusa) |
| 20:18:11 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds) |
| 20:19:23 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 252 seconds) |
| 20:22:54 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 20:24:44 | × | acidjnk_new quits (~acidjnk@p200300d6e715c4378952c6d8f1083787.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 20:27:04 | ← | mechap parts (~mechap@user/mechap) (WeeChat 3.8) |
| 20:32:19 | → | freeside joins (~mengwong@103.252.202.170) |
| 20:32:24 | × | telser quits (~quassel@user/telser) (Ping timeout: 260 seconds) |
| 20:32:28 | → | telser_ joins (~quassel@user/telser) |
| 20:32:33 | → | eggplantade joins (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
| 20:33:33 | × | zeenk quits (~zeenk@2a02:2f04:a014:8700::7fe) (Quit: Konversation terminated!) |
| 20:34:30 | → | acidjnk_new joins (~acidjnk@p200300d6e715c4379da7c174e15005ed.dip0.t-ipconnect.de) |
| 20:37:04 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 260 seconds) |
| 20:38:14 | × | kurbus quits (~kurbus@user/kurbus) (Quit: Client closed) |
| 20:42:26 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 20:42:57 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 20:46:05 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds) |
| 20:47:40 | <unit73e> | one question, because I'm very lazy to try. is emacs better than neovim in haskell nowadays or same thing if you use plugins? |
| 20:47:48 | <unit73e> | spoiler alert I use neovim |
| 20:50:06 | <unit73e> | I tried vscode for a while but eh... nah... it just doesn't feel right |
| 20:51:13 | <geekosaur> | I've largely switched to vscode for Haskell editing at this point |
| 20:51:33 | × | coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
| 20:51:39 | <geekosaur> | otherwise I use *vim for quick stuff and emacs for more involved / long term stuff |
| 20:52:45 | × | nehsou^ quits (~nehsou@c-24-30-76-89.hsd1.ga.comcast.net) (Remote host closed the connection) |
| 20:53:23 | <unit73e> | thanks, I actually might try vscode again despite saying that. the setup was easy. emacs maybe, I always preferred neovim, but I heard good things of emacs. |
| 20:53:37 | <unit73e> | the recent versions at least |
| 20:54:16 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 20:54:18 | <ddellacosta> | I don't know much about neovim but I use emacs with evil-mode with Haskell. It's pretty good. I feel like it has been hard to get everything around Haskell Language Server configured in a way that suits me, but that could be as much about my idiosyncratic emacs configuration as anything else. I found that vscode was WAY easier to set up and have things working in out of the gate, but I just cannot |
| 20:54:20 | <ddellacosta> | move around in it as efficiently as with emacs |
| 20:54:22 | <geekosaur> | emacs is fairly idiosyncratic. I use it because I've been using it since the mid-1980s |
| 20:54:59 | × | yrlnry quits (~yrlnry@2600:4040:738e:5400:85d2:5b54:72c6:ed3e) (Remote host closed the connection) |
| 20:55:35 | <monochrom> | I like emacs so emacs is always better to me. |
| 20:55:43 | <geekosaur> | and I have yet to adapt to the extended functionality of vim/neovim; I still use it like 1980s vi |
| 20:55:57 | <monochrom> | or rather I've spent too much time in emacs, sunk cost policy, too old to learn another editor or IDE. |
| 20:56:11 | <unit73e> | lua scripts easily beat vimscripts, that's for sure |
| 20:56:16 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds) |
| 20:56:20 | <monochrom> | If you like neovim (or more pessimistically sunk too much cost in it) then it is always better. |
| 20:57:01 | <unit73e> | so vscode is still the go to editor if you don't want to waste much time or for newbies |
| 20:57:12 | <monochrom> | If you like your Toyota car then you don't switch to Tesla just because it has a better game console. >:) |
| 20:57:12 | <unit73e> | for any programming language actually |
| 20:58:09 | <monochrom> | "If you like your Myspace account then you don't switch to Facebook just because more people use it >:)" |
| 20:58:12 | <unit73e> | well if you smash your toyota it's not that big of a deal. there's one advantage :p |
| 20:58:17 | <geekosaur> | probably. neither neovim nor emacs is easily configured for language server support, in particular, although the editing modes that come with neovim and emacs are decent out of the box |
| 20:59:07 | → | jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 21:00:01 | <ddellacosta> | I have been thinking about this a lot, and I think it's not _just_ sunk cost, although I wouldn't deny that's a big chunk of it for me--it's also a different paradigm that I don't think vscode can replicate. In emacs it feels like the fundamental abstraction of moving around buffers is the same regardless of the context--whether editing a file, in dired, using magit, etc.--I am just bouncing in |
| 21:00:03 | <ddellacosta> | and out of the minibuffer and moving data in and out of buffers, like searching on the command-line which dumps its results in a buffer which I can then directly open up files from based on the search results, etc...all using evil, it's super fast. I don't know how I'd get anything like that with vscode, not that I'm saying it's not possible |
| 21:00:09 | <ddellacosta> | sorry I wrote a blog post |
| 21:00:59 | <unit73e> | more of a tweet |
| 21:01:01 | <[Leary]> | @tell freeside Consider something like `(<|>) `on` nonEmpty` or `getAlt . foldMap (Alt . nonEmpty)`. They have the advantage that they "parse" rather than "validate". |
| 21:01:01 | <lambdabot> | Consider it noted. |
| 21:01:44 | × | pragma- quits (~chaos@user/pragmatic-chaos) (Quit: Bye!) |
| 21:01:52 | <unit73e> | but thanks, it did answer my question. |
| 21:02:00 | <ddellacosta> | awesome |
| 21:03:07 | × | cheater quits (~Username@user/cheater) (Ping timeout: 248 seconds) |
| 21:03:11 | × | jonathanx quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 260 seconds) |
| 21:03:43 | <[exa]> | ddellacosta: emacs is a unix, just on buffers and commands instead of files and shell |
| 21:03:57 | × | seriously_ quits (~seriously@2001:1c06:2715:c200:1800:e7f0:57e2:d1cf) (Quit: Client closed) |
| 21:04:21 | → | freeside joins (~mengwong@103.252.202.170) |
| 21:04:24 | <ddellacosta> | [exa]: never thought of it like that! Sounds like an old emacs trope I was just ignorant of... |
| 21:05:10 | dysfigured | is now known as dfg |
| 21:05:19 | × | dfg quits (dfg@dfg.rocks) (Changing host) |
| 21:05:19 | → | dfg joins (dfg@user/dfg) |
| 21:07:39 | jinsun | is now known as Guest3805 |
| 21:07:39 | → | jinsun__ joins (~jinsun@user/jinsun) |
| 21:07:39 | × | Guest3805 quits (~jinsun@user/jinsun) (Killed (molybdenum.libera.chat (Nickname regained by services))) |
| 21:07:39 | jinsun__ | is now known as jinsun |
| 21:08:43 | → | cheater joins (~Username@user/cheater) |
| 21:09:13 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 268 seconds) |
| 21:09:46 | × | acidjnk_new quits (~acidjnk@p200300d6e715c4379da7c174e15005ed.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 21:10:16 | → | yrlnry joins (~yrlnry@2600:4040:738e:5400:85d2:5b54:72c6:ed3e) |
| 21:21:57 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 21:24:04 | × | bgs quits (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
| 21:28:59 | × | jonathanx_ quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
| 21:29:24 | → | jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 21:30:26 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Remote host closed the connection) |
| 21:30:50 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 21:30:58 | × | johnw quits (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Quit: ZNC - http://znc.in) |
| 21:31:43 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 21:33:59 | × | beteigeuze quits (~Thunderbi@bl14-81-220.dsl.telepac.pt) (Read error: Connection reset by peer) |
| 21:34:06 | → | beteigeuze1 joins (~Thunderbi@bl14-81-220.dsl.telepac.pt) |
| 21:34:59 | × | jonathanx_ quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
| 21:35:44 | → | jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 21:36:23 | beteigeuze1 | is now known as beteigeuze |
| 21:38:00 | → | freeside joins (~mengwong@103.252.202.170) |
| 21:41:53 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds) |
| 21:42:18 | → | CiaoSen joins (~Jura@p200300c9572d4e002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 21:42:23 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 248 seconds) |
| 21:43:20 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 21:48:52 | → | johnw joins (~johnw@2600:1700:cf00:db0:e8e7:7b37:a447:4fc6) |
| 21:52:25 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 21:54:10 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 21:55:23 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 248 seconds) |
| 21:55:59 | → | freeside joins (~mengwong@103.252.202.170) |
| 22:01:31 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 260 seconds) |
| 22:03:29 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds) |
| 22:03:54 | × | thyriaen quits (~thyriaen@2a01:aea0:dd4:4fa4:6245:cbff:fe9f:48b1) (Remote host closed the connection) |
| 22:10:03 | × | Me-me quits (~me-me@2602:ff16:3:0:1:dc:beef:d00d) (Remote host closed the connection) |
| 22:11:24 | → | Me-me joins (~me-me@2602:ff16:3:0:1:dc:beef:d00d) |
| 22:14:09 | EvanR_ | is now known as EvanR |
| 22:17:29 | × | eggplantade quits (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 22:17:37 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
| 22:17:46 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5dd6:a35b:a6fd:3837) |
| 22:20:18 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 22:25:31 | × | ubert quits (~Thunderbi@p200300ecdf264eae508459a626a67f13.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 22:25:48 | → | ubert joins (~Thunderbi@p200300ecdf264e7816f08ea68d9bd4cc.dip0.t-ipconnect.de) |
| 22:29:23 | → | freeside joins (~mengwong@103.252.202.170) |
| 22:33:35 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 248 seconds) |
| 22:37:15 | → | pragma- joins (~chaos@user/pragmatic-chaos) |
| 22:38:23 | × | unit73e quits (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 260 seconds) |
| 22:40:36 | → | ub joins (~Thunderbi@p548c9ce5.dip0.t-ipconnect.de) |
| 22:41:04 | × | ubert quits (~Thunderbi@p200300ecdf264e7816f08ea68d9bd4cc.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 22:41:04 | ub | is now known as ubert |
| 22:43:01 | → | habib joins (~habib@78-110-166-168.as42831.net) |
| 22:46:11 | × | turlando quits (~turlando@user/turlando) (Read error: Connection reset by peer) |
| 22:48:14 | → | turlando joins (~turlando@user/turlando) |
| 22:49:42 | → | freeside joins (~mengwong@103.252.202.170) |
| 22:57:01 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds) |
| 22:58:19 | × | pavonia quits (~user@user/siracusa) (Read error: Connection reset by peer) |
| 22:59:26 | × | ddellacosta quits (~ddellacos@143.244.47.100) (Ping timeout: 246 seconds) |
| 23:01:36 | → | pavonia joins (~user@user/siracusa) |
| 23:03:31 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 23:05:55 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 23:06:55 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 23:10:29 | × | jonathanx_ quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
| 23:10:47 | → | jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 23:11:40 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 23:16:42 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 23:20:03 | × | Guest75 quits (~Guest75@178.141.149.12) (Ping timeout: 260 seconds) |
| 23:30:08 | × | sayola quits (~sayola@ipservice-092-213-087-211.092.213.pools.vodafone-ip.de) (Read error: Connection reset by peer) |
| 23:30:45 | → | sayola joins (~sayola@ipservice-092-213-087-211.092.213.pools.vodafone-ip.de) |
| 23:32:03 | × | AlexZenon quits (~alzenon@178.34.160.228) (Ping timeout: 255 seconds) |
| 23:32:41 | × | Alex_test quits (~al_test@178.34.160.228) (Ping timeout: 256 seconds) |
| 23:35:34 | × | burakcank quits (burakcank@has.arrived.and.is.ready-to.party) (Killed (NickServ (GHOST command used by burakcank_!B438@free.znc.bg))) |
| 23:35:51 | → | burakcan- joins (burakcank@has.arrived.and.is.ready-to.party) |
| 23:36:30 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds) |
| 23:37:36 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:39:31 | → | Alex_test joins (~al_test@178.34.160.228) |
| 23:40:05 | → | AlexZenon joins (~alzenon@178.34.160.228) |
| 23:40:19 | → | acidjnk joins (~acidjnk@p200300d6e715c43759e8b04853fbd72e.dip0.t-ipconnect.de) |
| 23:41:29 | × | jonathanx_ quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
| 23:41:47 | → | jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 23:43:18 | × | jinsun quits (~jinsun@user/jinsun) (Read error: Connection reset by peer) |
| 23:43:34 | → | jinsun joins (~jinsun@user/jinsun) |
| 23:45:34 | × | mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in) |
| 23:45:45 | × | drewolson quits (~drewolson@user/drewolson) (Remote host closed the connection) |
| 23:45:49 | → | mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) |
| 23:45:57 | → | drewolson joins (~drewolson@user/drewolson) |
| 23:46:54 | × | ario quits (~ario@159.65.220.102) (Ping timeout: 255 seconds) |
| 23:46:59 | × | Me-me quits (~me-me@2602:ff16:3:0:1:dc:beef:d00d) (Ping timeout: 260 seconds) |
| 23:47:02 | → | ario joins (~ario@159.65.220.102) |
| 23:49:45 | → | Me-me joins (~me-me@2602:ff16:3:0:1:dc:beef:d00d) |
| 23:51:23 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 255 seconds) |
| 23:51:24 | × | freeside quits (~mengwong@103.252.202.170) (Ping timeout: 268 seconds) |
| 23:56:59 | × | jonathanx_ quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
| 23:58:23 | → | jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
All times are in UTC on 2023-01-25.