00:01:45 | * | chun quit (Remote host closed the connection) |
00:12:35 | FromGitter | <Varriount> @ratiotile the combination of its parameter and return types. |
00:13:22 | FromGitter | <ratiotile> it's a bit confusing because the iterator type is the same as that of an instance, when printed out |
00:14:03 | FromGitter | <Varriount> @ratiotile Implementation-wise, a closure and a closure iterator is represented through a structure containing two pointers. |
00:26:23 | * | stefanos82 quit (Quit: Quitting for now...) |
00:43:10 | FromGitter | <ratiotile> I reimplemented my benchmark using closures, and got similar results. I think that the GC is killing perf. Now I should try removing all `ref`s. |
00:57:15 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
01:15:25 | FromDiscord_ | <SychoRyn> I want to do some nim stuff but my computer just |
01:15:27 | FromDiscord_ | <SychoRyn> Doesn’t work |
01:40:14 | FromDiscord_ | <treeform> just throw the computer way, get new one. |
01:44:40 | * | Tanger quit (Ping timeout: 268 seconds) |
01:46:15 | FromDiscord_ | <demotomohiro> SychoRyn:How about to use online Nim compiler. |
01:46:16 | FromDiscord_ | <demotomohiro> https://play.nim-lang.org/ |
01:46:16 | FromDiscord_ | <demotomohiro> https://wandbox.org/ |
01:46:16 | FromDiscord_ | <demotomohiro> https://github.com/demotomohiro/nim4colab |
02:08:36 | disruptek | Araq: i setup klee and it successfully identifies the pointer error in the test case from your stream, complete with the line number in the nim source. it doesn't like nim's memory alloc though. i have to dig into what's going on there. maybe a guard is needed just to comfort the analysis. |
02:08:52 | * | Tanger joined #nim |
02:45:50 | * | laaron- joined #nim |
02:47:56 | * | leorize quit (Ping timeout: 260 seconds) |
02:48:50 | * | laaron quit (Quit: ZNC 1.7.1 - https://znc.in) |
02:49:37 | * | leorize joined #nim |
03:03:29 | * | lritter quit (Ping timeout: 248 seconds) |
03:30:03 | FromGitter | <zacharycarter> question I think I already know the answer to - would it be possible to have a module name passed as a command line arg and then import that module and use it with HCR? |
03:30:17 | FromGitter | <zacharycarter> I know I've imported modules at runtime via macros before - but that's not really at runtime |
03:40:39 | * | smitop quit (Quit: Connection closed for inactivity) |
03:42:27 | FromGitter | <awr1> what is this for |
03:47:42 | FromGitter | <zacharycarter> my game engine |
03:50:26 | * | Jesin quit (Ping timeout: 272 seconds) |
04:16:14 | * | xet7 quit (Remote host closed the connection) |
04:18:36 | * | laaron- quit (Remote host closed the connection) |
04:22:31 | * | laaron joined #nim |
04:44:49 | * | xet7 joined #nim |
05:05:42 | * | dddddd quit (Remote host closed the connection) |
05:22:38 | * | BaldEagleX02_ quit (Ping timeout: 252 seconds) |
05:56:56 | * | solitudesf joined #nim |
06:01:14 | * | nsf joined #nim |
06:10:03 | * | brakmic joined #nim |
06:14:32 | * | brakmic_ joined #nim |
06:14:46 | * | brakmic quit (Ping timeout: 268 seconds) |
06:18:42 | * | narimiran joined #nim |
06:23:39 | * | brakmic joined #nim |
06:26:32 | * | absolutejam4 joined #nim |
06:27:30 | * | brakmic_ quit (Ping timeout: 272 seconds) |
06:43:52 | * | traviss joined #nim |
06:48:22 | traviss | when i want to run all my tests files which are in a tests directory and all start with 't' with `nimble test`, I get 'cannot open file' errors due to not being able to find nimble packages. I see that --noNimblePath is being passed to nim. How can I disable the parameter? I really like the nimble test task otherwise... could be really convenient. |
06:49:18 | * | absolutejam4 quit (Ping timeout: 268 seconds) |
06:54:00 | traviss | oops, i just needed to add to the `requires` variable in my .nimble file for each package i want to use. |
06:59:17 | * | Trustable joined #nim |
07:00:00 | * | gmpreussner quit (Quit: kthxbye) |
07:04:31 | * | gmpreussner joined #nim |
07:22:55 | * | Trustable quit (Remote host closed the connection) |
07:24:30 | * | couven92 joined #nim |
07:25:04 | * | narimiran quit (Ping timeout: 268 seconds) |
07:39:13 | * | solitudesf quit (Ping timeout: 248 seconds) |
07:50:07 | * | traviss quit (Quit: Leaving) |
07:50:41 | * | dwdv joined #nim |
07:58:15 | lqdev[m] | zacharycarter: you can do this using dynamic libraries, but not HCR afaik |
07:58:25 | lqdev[m] | see the `dynlib` module |
07:59:35 | * | Perkol joined #nim |
08:05:31 | FromDiscord_ | <Skaruts> hi |
08:05:49 | FromDiscord_ | <Skaruts> what's a good site for sharing code snippets? |
08:06:02 | FromDiscord_ | <Skaruts> (one that doesn't require an account) |
08:06:32 | kungtotte | https://paste.rs/ |
08:10:00 | FromDiscord_ | <Skaruts> thanks |
08:11:41 | FromDiscord_ | <Skaruts> can anyone tell me why this code isn't working as intended: https://paste.rs/uX8 |
08:12:32 | FromDiscord_ | <Skaruts> I pass the value of `i` to the proc, but in the end it's like I passed `9` to all of them |
08:13:40 | FromDiscord_ | <Skaruts> I tested creating a button outside the loop and gave it a literal and it printed that number, as it should, it just seems to not work in the loop |
08:13:56 | FromDiscord_ | <Skaruts> (an int literal) |
08:13:57 | leorize | play.nim-lang.org can also be used to share snippet |
08:14:29 | FromDiscord_ | <Skaruts> oh nice, thanks |
08:23:54 | Araq | use closureScope |
08:26:26 | FromDiscord_ | <Skaruts> you mean like `act_button.add_action( proc( code in here ) )` ? |
08:27:19 | FromDiscord_ | <Skaruts> I made a small example of my code here: http://ix.io/1NPC/nim |
08:29:16 | FromDiscord_ | <Skaruts> hopefully it's not confusing |
08:31:27 | lqdev[m] | also, termbin.com and ix.io |
08:37:17 | FromDiscord_ | <Skaruts> hmm, if I share the address https://play.nim-lang.org/#ix=1NPE, other people can see the code and edit it? |
08:40:30 | * | nsf quit (Quit: WeeChat 2.4) |
08:43:45 | * | disruptek quit (Ping timeout: 248 seconds) |
08:45:53 | * | disruptek joined #nim |
09:00:27 | * | Perkol quit (Quit: Leaving) |
09:04:24 | * | stefanos82 joined #nim |
09:09:54 | FromDiscord_ | <Travis> A solution is to use closureScope and also make a copy of the loop var `let j = i` |
09:09:54 | FromDiscord_ | <Travis> https://play.nim-lang.org/#ix=1NPP |
09:10:58 | FromDiscord_ | <Travis> This doesn't work unless you make a copy of the loop var. |
09:14:47 | FromDiscord_ | <Skaruts> didn't know about that closureScope thing |
09:15:41 | * | tjmac joined #nim |
09:16:51 | FromDiscord_ | <Skaruts> but it seems to not work in my real project because I'm initializing an object |
09:17:33 | * | alexander92 joined #nim |
09:18:09 | FromDiscord_ | <Skaruts> because I have to move all the code into the closureScope, and it gives me this error: |
09:18:12 | FromDiscord_ | <Skaruts> layers_panel.nim(32, 38) Error: 'result' is of type <LayersPanel> which cannot be captured as it would violate memory safety, declared here: layers_panel.nim(16, 0) |
09:21:10 | FromDiscord_ | <Skaruts> wait, no actually I don't need to do that |
09:21:33 | FromDiscord_ | <Skaruts> just moved the lines where I add the actions to the buttons |
09:21:39 | FromDiscord_ | <Skaruts> now it's working properly |
09:21:44 | FromDiscord_ | <Skaruts> thanks |
09:26:23 | alexander92 | hmm |
09:26:42 | FromDiscord_ | <Skaruts> out of curiosity, though, why can't it work with the loop var? |
09:27:49 | FromDiscord_ | <Skaruts> (and without closureScope) |
09:29:15 | Araq | it used to work but we liked the speed and JS interop of the current model better |
09:37:34 | * | jjido joined #nim |
09:38:12 | FromDiscord_ | <Travis> glad its working for you. anyone know of a shorthand for making a copy? i tried `i.deepCopy` but that didn't seem to do the trick in the closureScope example above. i thought there might be a shorthand something like `i.copy`... |
09:43:49 | FromDiscord_ | <Skaruts> I see |
09:45:28 | * | narimiran joined #nim |
09:46:52 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
09:54:14 | FromDiscord_ | <Skaruts> I suppose the copy of an int is always by value? |
09:55:45 | * | clyybber joined #nim |
09:56:22 | lqdev[m] | Travis: see the docs for shallowCopy and deepCopy in the system module |
09:58:26 | lqdev[m] | also, you can make a proc like `proc myCopy[T](x: T) = var y = x; result = y` and it will copy |
09:58:58 | lqdev[m] | Skartus: yes |
09:59:20 | * | chun joined #nim |
10:04:18 | FromGitter | <zacharycarter> lqdev[m]: thanks - yeah I know this was possible with dynamic libs but I was hoping (not expecting) I'd be able to achieve something similar for HCR |
10:04:23 | FromGitter | <zacharycarter> doh well |
10:07:08 | federico3 | the "used by" button on GH works even for elixir but not for Nim |
10:16:27 | alexander92 | hmm it seems |
10:16:32 | alexander92 | its because of npm |
10:16:45 | alexander92 | e.g. for phoenix it shows 'npm i phoenix' |
10:17:02 | alexander92 | so they dont really support mix |
10:17:12 | alexander92 | they just happen to have package.json |
10:35:08 | * | Vladar joined #nim |
10:37:04 | alexander92 | btw Araq, why do i get invalid type: 'KeyValuePairSeq[system.string, proc (id: int): tuple of (HttpCode, string){.locks: <unknown>.}]' for var |
10:37:16 | alexander92 | what does "for var" mean here |
10:38:11 | alexander92 | it happens when i initTable with a proc |
10:38:16 | alexander92 | but not when i set a key |
10:39:56 | alexander92 | praise the Lord, fixed my erro |
10:40:05 | alexander92 | now i need to use a logging lib |
10:40:17 | alexander92 | do you guys use logger mostly? |
10:42:18 | * | lf-araujo joined #nim |
10:43:26 | alexander92 | hm, async errors are nice |
10:43:39 | * | absolutejam4 joined #nim |
10:48:48 | * | solitudesf joined #nim |
10:49:42 | Zevv | dom96: In case you're interested in linking to it: I feel my nim memory writup is kind of finished for now, although I might add more stuff later. The definitive location is http://zevv.nl/nim-memory/ |
10:49:52 | * | drewr quit (Ping timeout: 264 seconds) |
10:51:03 | narimiran | Zevv: you style-stealer! :P :D |
10:51:10 | Zevv | alexander92: I use logger but with some extensions to do color output |
10:51:27 | Zevv | narimiran: yeah, I'm a absolute style nitwit, so stealing is usually the best option |
10:51:32 | * | dddddd joined #nim |
10:51:55 | Zevv | And as your docs are marked "MIT", you can whine but you can't sue me :) |
10:52:00 | narimiran | but you chose to widen your lines.... and now they're too long ;) |
10:52:08 | alexander92 | Zevv, i use chronicles, but its not a very classical logger |
10:52:17 | Zevv | nah, much better. The original was nastily narrow |
10:52:41 | alexander92 | but it seems ok for now |
10:52:55 | * | narimiran puts his typography hat on and is ready to fight |
10:53:34 | Zevv | Oh yeah? You kernings sucks and your ligatures are wider then yo mama! |
10:53:49 | narimiran | my keming? :P |
10:53:55 | Zevv | Ghehe |
10:54:14 | Zevv | that made me laugh out and scare the dog off the couch |
10:54:25 | narimiran | :) |
10:54:47 | narimiran | i'll count that as my win for this round. |
10:54:56 | Zevv | I'll grant you that |
10:55:44 | alexander92 | oh nice blog |
10:56:25 | narimiran | Zevv: on a serious note: nice topic there and i plan to read it after the lunch |
10:56:29 | alexander92 | when i had a blog, finally i changed my theme and split the screen in two: in the one half i had links to prog articles in english, in the other to small stories in bulgarian |
10:56:53 | narimiran | (thankfully i can use reader mode on my browser, to have reasonable line lengths :P) |
10:56:55 | alexander92 | it was great lesson in horrible UX |
10:57:33 | alexander92 | do you use firefox's eader |
10:57:35 | alexander92 | ? |
10:57:38 | alexander92 | reader |
10:58:17 | Zevv | more and more often |
10:58:24 | narimiran | alexander92: i'm using vivaldi (i think it had it before firefox got it), it is the successor of opera, which i used back in the day and was big fan of it |
10:58:26 | Araq | alexander92: it was a regression in 0.20, fixed on devel |
10:58:27 | Zevv | I used to have extensions for that, but reader is ok |
10:58:49 | Zevv | narimiran: please do, any comments much appreciated. |
10:59:22 | Zevv | it's pretty basic, target audience is beginners comming from higher level languages like python/JS |
10:59:31 | enthus1ast | can i force nimble to always download the newest dependency version, based on commit hash? |
11:00:40 | FromGitter | <zacharycarter> is there a good 32-bit floating point linalg library out there? |
11:00:44 | alexander92 | Araq amazing, good |
11:01:27 | alexander92 | narimiran, oh so .. is it a browser? interesting, a choice out of the big 3 |
11:01:34 | alexander92 | big 2 |
11:01:55 | leorize[m] | enthus1ast: add @#head to the dep |
11:02:07 | leorize[m] | <alexander92 "narimiran, oh so .. is it a brow"> tbh, it's still chromium inside |
11:02:29 | kungtotte | Vivaldi isn't that much of a choice, it's still the same engine as the Chrome family but with all the Google privacy invasion ripped out. |
11:02:46 | enthus1ast | leorize[m]: the issue is than i must go through the nimble file of the module i want to install |
11:02:54 | kungtotte | It's also closed source, if that matters to you. |
11:03:28 | kungtotte | I like it, as a fan of the old-time Opera I think they're doing a great job of bringing back the classic Opera feeling, and since the Internet is designed to cater to Chrome every webpage ever will work for you |
11:03:43 | enthus1ast | leorize[m]: i thought of a thing like: ignore the tag, just download and install all dependencys again |
11:03:56 | leorize[m] | ah, then you can't do that |
11:04:54 | alexander92 | love this |
11:05:03 | alexander92 | my mother was a huge fan of opera, but i never really got it |
11:05:09 | alexander92 | but i still meet people that love it |
11:05:34 | alexander92 | i installed firefox on my android yesterday and it seemed fine, good sign |
11:06:01 | enthus1ast | until you open the developer console alexander92; it can't even list ws frames .... |
11:07:03 | kungtotte | There's a big difference between classic Opera and the current Opera. I forget which version it was but it was around v13 or something that Opera became essentially a reskinned Chrome. They had their own in-house engine and the GUI was fairly unique as well, they also had a lot of features prior to everyone else. |
11:07:07 | alexander92 | there was an expandmacros switch, right ..? |
11:07:57 | kungtotte | It was a kitchen sink kind of browser and included an IRC client, email client, etc. and they had a "MDI" interface which allowed for tabs before anyone else had even considered tabs, mouse gestures were built in etc. before anyone else had them. |
11:09:17 | * | lf-araujo quit (Ping timeout: 250 seconds) |
11:12:14 | leorize[m] | doesn't mozilla internet suite also a kitchen sink? |
11:12:21 | leorize[m] | not sure if before or after opera |
11:13:32 | kungtotte | It came after Opera, but yeah it was the same way |
11:13:46 | narimiran | opera was ahead of its time in lots of things, others were copying it |
11:13:52 | kungtotte | A lot of people refused to switch to Firefox (or Phoenix as it was called then) because it lacked an e-mail client or IRC |
11:14:14 | kungtotte | Then came Thunderbird and a bunch of people switched over |
11:21:48 | alexander92 | oh God good |
11:21:59 | alexander92 | yeah sounds like a normal development |
11:22:21 | alexander92 | i wonder if people are able to write a good new renderer these days from zero |
11:22:47 | alexander92 | after all chromium/firefox are open source iirc (are they? is firefox's renderer actually open) |
11:23:29 | enthus1ast | afaik yes its called gecko |
11:27:44 | enthus1ast | i must say, i to often find myself helping nimble to work, or try and error on the pkg structure, or copy pasting pkg examples in an editor, it would be super nice if it would be more idk. "less magical" |
11:28:09 | enthus1ast | or deleting pkgs from the pkg directory |
11:30:17 | enthus1ast | it all breaks down if one forgets to inc the version number |
11:34:10 | enthus1ast | mpd |
11:34:25 | enthus1ast | ncm |
11:34:52 | enthus1ast | lol sorry |
11:37:04 | clyybber | someone wanted to open ncmpcpp :) |
11:37:32 | enthus1ast | idk what happend but terminator just writes to all terminals at once... |
11:37:42 | clyybber | huh, thats weird |
11:38:45 | enthus1ast | ah its a feature called broadcast ;) |
11:45:42 | Araq | clyybber: |
11:46:58 | * | absolutejam4 quit (Ping timeout: 258 seconds) |
11:50:51 | dom96 | Zevv, nice, we should add it to our tutorials list |
11:51:02 | dom96 | narimiran tweet about it :) |
11:51:07 | dom96 | and submit to HN/Reddit |
11:51:27 | narimiran | dom96: will do, but first i'll send Zevv some my remarks about typos and similar things ;) |
11:56:08 | clyybber | Araq: Hmm? |
12:06:03 | alexander92 | glory to the Father |
12:06:17 | alexander92 | oh man, i really need to research more on validation libs |
12:06:48 | alexander92 | i've used those maybe years ago , no idea how people do this these days |
12:07:22 | alexander92 | or where do they even put that (in orm declarative defs? as middleware? as form-dsls?) |
12:07:53 | alexander92 | so hot here today |
12:08:57 | FromDiscord_ | <Generic> Zevv: ARM is not big endian. It's configurable pre ARMv8 and little endian on ARMv8 |
12:09:41 | FromDiscord_ | <Generic> maybe you confused it with PowerPC which is big endian |
12:17:49 | federico3 | urgh, parseJson is being slower than Python |
12:21:24 | Zevv | yeah i know, but I cant tell it all can I :) |
12:21:44 | Zevv | in practice, its nearly always BE |
12:22:51 | Zevv | "gross simplifications ahead" is my ticket out |
12:27:13 | * | brakmic quit (Ping timeout: 258 seconds) |
12:30:13 | * | brakmic joined #nim |
12:35:17 | * | laaron quit (Remote host closed the connection) |
12:37:34 | * | laaron joined #nim |
12:37:43 | FromDiscord_ | <Generic> really? From what I know the opposite is true |
12:43:53 | clyybber | Araq: Fixed some bugs, tySink by address works now, but move calls generate this: "eqmove__jRxUrAfjudolXPsxKTlFXg(result, rawNewString(((NI) 32)))" |
12:44:07 | clyybber | should the rawNewString be first assigned to a temporary? |
12:44:58 | clyybber | Because in the CPP backend the above doesn't work, since =move's var parameters compile to references and not pointers |
12:45:08 | stefanos82 | partial off-topic, but hilarity ensues: when I first heard the term "big endian", I thought it was the name of an Indian tribal Chief and that was the name of a project...I was so exhausted that day because I was studying the C code base of Hiawatha web server, meh...you get the idea LOL! |
12:45:42 | stefanos82 | sometimes our minds play funny jokes with us |
12:45:47 | alexander92 | hehe |
12:46:00 | alexander92 | big endian and little endian still confuse me |
12:47:38 | stefanos82 | yeah, I always have to look for it |
12:47:41 | stefanos82 | which one is which |
12:49:26 | * | absolutejam4 joined #nim |
12:51:42 | * | laaron quit (Remote host closed the connection) |
12:54:25 | * | laaron joined #nim |
12:55:25 | * | abm joined #nim |
12:55:30 | * | jjido joined #nim |
13:04:29 | * | Snircle joined #nim |
13:07:55 | Araq | clyybber: yes, via temp |
13:09:45 | alexander92 | can i require devel in my nimble? |
13:09:51 | alexander92 | how do i say that i depend on devel |
13:09:58 | alexander92 | because probably my lib doesnt work with 0.20 |
13:10:17 | alexander92 | e.g. certian commit |
13:10:22 | narimiran | alexander92: does it work with the HEAD of `version-0-20` branch? |
13:10:32 | alexander92 | i think so |
13:10:41 | alexander92 | i mean, if this is devel? |
13:10:45 | alexander92 | which it is not |
13:10:49 | alexander92 | so probably no? |
13:10:52 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
13:11:15 | narimiran | that branch is currently 98% the same as devel |
13:11:37 | alexander92 | but does it have backported fixes? |
13:11:38 | narimiran | the only differences are some features in devel which are not backported |
13:11:45 | alexander92 | ah ok |
13:11:48 | narimiran | yeah, fixes are backported |
13:11:50 | alexander92 | i forgot fixes are there |
13:12:03 | narimiran | back to the original question, i think then that `>= 0.20.2` should be enough |
13:12:05 | * | abm quit (Quit: Leaving) |
13:13:09 | narimiran | (devel is 0.20.99, and the current version of `version-0-20` branch is 0.20.1) |
13:13:37 | * | absolutejam4 quit (Ping timeout: 248 seconds) |
13:15:25 | alexander92 | btw Araq, i get got: <T> |
13:15:28 | alexander92 | but expected: <T> |
13:15:39 | alexander92 | in devel trying to build tools (and my own project) |
13:15:48 | alexander92 | in asyncfuture's newFuture def |
13:16:19 | Araq | bootstrap to get a Nim that can compile newFuture |
13:17:18 | alexander92 | ah so i need build_all.sh ? ok |
13:24:02 | * | jjido joined #nim |
13:27:41 | * | tjmac left #nim ("-bye") |
13:28:23 | * | zyklon quit (Ping timeout: 245 seconds) |
13:38:38 | alexander92 | works |
13:38:42 | alexander92 | thankk |
13:39:34 | alexander92 | github .. "Great repository names are short and memorable. Need inspiration? How about fantastic-system?" |
13:39:49 | alexander92 | i just imagine people using such a project |
13:41:03 | alexander92 | https://github.com/alehander42/http |
13:41:11 | alexander92 | i need a better name |
13:41:28 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
13:45:31 | Araq | clyybber: you need to bind a temporary/lvalue to a 'sink' parameter, read the spec... |
13:50:23 | * | jjido joined #nim |
13:50:55 | stefanos82 | alexander92: what is supposed to do? is it a web framework? |
13:51:24 | alexander92 | yea, but its like just a first dump |
13:51:31 | alexander92 | of small code |
13:51:52 | stefanos82 | give it a goofy, memorable name |
13:51:58 | stefanos82 | it does not have to match its usage |
13:52:44 | alexander92 | yeah, but i am just lazy at names |
13:53:09 | alexander92 | so i just think somebody will come up with a ok name and thats it |
13:53:39 | stefanos82 | how about wool? |
13:54:23 | * | eterps joined #nim |
13:54:55 | alexander92 | not bad, is it just random |
13:55:35 | stefanos82 | well, it's textile fiber from sheep, so...you know, fibers |
13:55:55 | stefanos82 | web crawlers are also known as spiders |
13:56:02 | stefanos82 | they crawl the "net" |
13:56:30 | * | solitudesf- joined #nim |
13:57:05 | alexander92 | wow interesting connection :P and i like the sheep connection as well |
13:59:04 | * | solitudesf quit (Ping timeout: 272 seconds) |
13:59:09 | * | jmiven quit (Quit: reboot) |
13:59:56 | * | jmiven joined #nim |
14:00:57 | * | solitudesf joined #nim |
14:02:38 | stefanos82 | alexander92: and for logo you could use a sheep with dark glasses |
14:02:48 | stefanos82 | like Men in Black kind of look lol |
14:03:02 | lqdev[m] | alexander: your readme is badly formatted, links in markdown go the other way around `[some link text](http://example.com)` |
14:03:16 | * | solitudesf- quit (Ping timeout: 246 seconds) |
14:06:11 | alexander92 | go figure.. |
14:06:14 | * | vegax87 left #nim ("Leaving") |
14:06:46 | alexander92 | how could i confuse that |
14:08:16 | * | laaron quit (Remote host closed the connection) |
14:08:48 | alexander92 | stefanos82 sounds very wool |
14:09:12 | alexander92 | ill think about it :P but still not convinced , i also like flock |
14:09:42 | stefanos82 | so each project out of it could be considered a hand-made sweater hahaha ^_^ |
14:10:19 | stefanos82 | you could get some people confused |
14:10:20 | stefanos82 | https://en.wikipedia.org/wiki/Flock_(messaging_service) |
14:10:30 | * | laaron joined #nim |
14:11:41 | alexander92 | sounds too nice to call a framework like that :P |
14:14:52 | alexander92 | ill think about it today, but thanks :P |
14:16:21 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
14:17:13 | stefanos82 | you could also use "ines" |
14:17:23 | stefanos82 | it's a Greek word for fibers |
14:17:37 | stefanos82 | you have so many options, really |
14:21:04 | * | chun quit (Remote host closed the connection) |
14:21:25 | * | chun joined #nim |
14:21:39 | clyybber | Araq: Sure, but =move doesn't have a sink parametere |
14:22:18 | Araq | well obviously you need a 'var' for a 'var T' parameter |
14:22:30 | Araq | that's where the name comes from... |
14:24:49 | * | nsf joined #nim |
14:30:04 | * | chun quit (Remote host closed the connection) |
14:30:25 | * | chun joined #nim |
14:44:29 | * | eterps quit (Quit: WeeChat 2.5) |
14:45:32 | * | eterps joined #nim |
14:45:47 | disruptek | you're blowing my mind right now. |
14:47:12 | clyybber | bbl |
14:47:13 | * | clyybber quit (Quit: WeeChat 2.5) |
14:47:16 | disruptek | spawn passes refs across threads? threadsafe newruntime? |
14:53:50 | * | lritter joined #nim |
15:00:15 | FromGitter | <ratiotile> How do I initialize a generic array member to all nil? `data: array[S, T]` |
15:04:16 | FromGitter | <ratiotile> noInit seems like the right approach, but it's invalid in this place `data {.noInit.}: array[S, T]` |
15:17:00 | * | eterps quit (Ping timeout: 252 seconds) |
15:17:16 | * | uvegbot joined #nim |
15:18:42 | * | laaron quit (Remote host closed the connection) |
15:19:39 | * | laaron joined #nim |
15:23:59 | Zevv | Generic: you were right and I was wrong |
15:26:49 | * | smitop joined #nim |
15:32:59 | Araq | ratiotile: the array is inited to all-nil for you automatically |
15:36:06 | FromGitter | <ratiotile> I must be doing something wrong with my generic array maker: `proc makeArrays:int (): array[s, int]` |
15:37:19 | Zevv | what is `s`? |
15:37:41 | * | natrys joined #nim |
15:37:52 | FromGitter | <ratiotile> used as follows: `var a = makeArraymax_size ()` |
15:38:02 | FromGitter | <ratiotile> max_size is const int |
15:40:14 | FromGitter | <ratiotile> Nim accepts it, the cpp compiler chokes: |
15:40:28 | FromGitter | <ratiotile> `error C2070: 'tyArray_IuQRNEzLUjCusHJOTGH5xQ': illegal sizeof operand` |
15:41:30 | * | brakmic_ joined #nim |
15:41:30 | * | brakmic quit (Read error: Connection reset by peer) |
15:43:16 | * | brakmic_ quit (Read error: Connection reset by peer) |
15:43:22 | * | brakmic joined #nim |
15:44:24 | FromGitter | <ratiotile> seems to make a massive array:`typedef NI tyArray_IuQRNEzLUjCusHJOTGH5xQ[4294967296];` |
15:45:10 | FromGitter | <arnetheduck> araq ping https://github.com/nim-lang/Nim/pull/11623 (compile fails unrelated) |
15:47:04 | * | chun quit (Remote host closed the connection) |
15:47:11 | Araq | can you please rebase anyway? just yesterday I changed the posix module for OSX/BSD |
15:47:25 | * | chun joined #nim |
15:47:51 | FromGitter | <ratiotile> see here: jdoodle.com/a/1kVu |
15:48:27 | FromGitter | <arnetheduck> sure, though it still applies clean |
15:48:27 | Araq | don't create array types that have 4 billion elements, use a seq instead |
15:48:36 | FromGitter | <ratiotile> size should be 3 |
15:49:14 | Araq | ratiotile: use 'static int' for the generic indexing type (known compiler bug) |
15:50:06 | FromGitter | <arnetheduck> done |
15:50:13 | FromGitter | <kaushalmodi> anybody who also does "here debug"? https://play.nim-lang.org/#ix=1NRm |
15:51:44 | disruptek | cool idea, thanks. |
15:51:52 | Araq | when declaredInScope() |
15:52:09 | * | nsf quit (Quit: WeeChat 2.4) |
15:52:24 | disruptek | nice. |
15:52:24 | FromGitter | <ratiotile> @Araq, cool that works |
15:53:17 | disruptek | Araq: did you get my comment about klee? i lost link. |
15:53:52 | Araq | probably not, we discussed klee after my "nil checker" online course |
15:53:58 | FromGitter | <kaushalmodi> Araq: thanks.. so replace `compiles` with `declaredInScope`? |
15:54:17 | Araq | kaushalmodi: yeah but no guarantee it works |
15:54:25 | FromGitter | <kaushalmodi> I still need to use the `{.dirty.}` pragma right.. to "leak" the declaration out of the template |
15:54:30 | FromGitter | <kaushalmodi> yep, that works |
15:54:43 | FromGitter | <kaushalmodi> https://play.nim-lang.org/#ix=1NRn |
15:55:30 | disruptek | your nil checker test fails under klee and it reports the nim source line number. so it could be a good way to measure nim and nim's dfa as it is developed. but there's a catch: |
15:56:34 | disruptek | nim code old oldruntime (and default gc) fails, so may need to find and guard/fix whatever memory alloc stuff is causing klee to error. |
15:59:16 | Araq | what's the error message? |
16:08:04 | * | chun quit (Remote host closed the connection) |
16:08:25 | * | chun joined #nim |
16:11:40 | disruptek | it's from system/alloc line 460; says the result.next=nil is an oob ptr read. |
16:11:49 | disruptek | iirc |
16:14:44 | Araq | "oob"? |
16:14:58 | Araq | by construction 'result' cannot be nil here |
16:15:48 | disruptek | right. |
16:15:53 | disruptek | out-of-bounds |
16:17:17 | disruptek | here's a gist that could be helpful if you decide you want to try it. or i can try to guard some stuff and submit it as a pr if you think that's useful. https://gist.github.com/disruptek/bb875a27a1024e642bfc8e4827c67015 |
16:18:17 | disruptek | Error: target STRING not available |
16:18:56 | disruptek | i swear as soon as i think alacritty might've learned how to paste from my clipboard, it pukes on me. |
16:19:18 | disruptek | it's truly unbelievable. |
16:19:29 | * | Perkol joined #nim |
16:24:09 | disruptek | apparently, a known issue. |
16:29:45 | * | xace joined #nim |
16:33:05 | Zevv | ratiotile: you found your problem? |
16:33:49 | FromGitter | <ratiotile> @Zevv which one? |
16:34:05 | Zevv | tyArray_IuQRNEzLUjCusHJOTGH5xQ[4294967296] :) |
16:34:27 | FromGitter | <ratiotile> @Zevv, yeah that was missing `static int` |
16:34:32 | Zevv | right :) |
16:38:27 | * | xace quit (Quit: leaving) |
16:41:09 | * | xace joined #nim |
16:45:18 | * | nsf joined #nim |
16:45:58 | * | xace quit (Client Quit) |
16:47:48 | * | ofelas joined #nim |
16:48:29 | * | xace joined #nim |
16:58:18 | * | lf-araujo joined #nim |
17:13:34 | * | stefanos82 quit (Quit: Quitting for now...) |
17:13:44 | * | jjido joined #nim |
17:16:49 | * | lf-araujo quit (Ping timeout: 246 seconds) |
17:36:15 | * | Perkol quit (Quit: Leaving) |
17:46:20 | * | smitop quit (Quit: Connection closed for inactivity) |
17:51:05 | * | oprypin quit (Quit: No Ping reply in 180 seconds.) |
17:52:31 | * | oprypin joined #nim |
17:56:56 | * | absolutejam4 joined #nim |
18:08:09 | FromGitter | <zacharycarter> Araq: is it possible atm to add support for loading modules with hcr support at runtime? Would it ever be feasible if the answer is no? |
18:08:32 | Araq | what do you mean? |
18:09:35 | FromGitter | <zacharycarter> Like passing a path to the program as an argument and loading that module and then reloading it with hotcode reloading |
18:09:50 | FromGitter | <zacharycarter> Path to a nim module* |
18:10:48 | FromGitter | <zacharycarter> I've loaded modules dynamically with macros before but obviously that's at compile time |
18:12:10 | * | arecaceae quit (Remote host closed the connection) |
18:12:29 | * | arecaceae joined #nim |
18:14:09 | narimiran | how do i put `-d:nimCallDepthLimit=4000` in my `foo.nim.cfg`? whatever i tried, it gave me some error.... |
18:14:34 | Araq | only possible with config.nims I guess |
18:14:44 | narimiran | bleh, ok |
18:14:47 | Araq | zacharycarter: I think it would be very hard |
18:15:36 | * | gangstacat quit (Ping timeout: 252 seconds) |
18:17:45 | FromGitter | <zacharycarter> Gotcha, I thought that might be the case. I can use configuration to specify a path anyway I think. Thanks for the answer! |
18:20:55 | FromDiscord_ | <GooseFairy> Completely new to nim here and I'm getting an exception when trying to run `finish.exe` |
18:20:55 | FromDiscord_ | <GooseFairy> ``` |
18:20:55 | FromDiscord_ | <GooseFairy> \Desktop\Code\nim\nim-0.20.0>finish.exe -help |
18:20:56 | FromDiscord_ | <GooseFairy> \build\nim-lang\nightlies\nim\e7471cebae2a404f3e4239f199f5a0c422484aac\tools\finish.nim(311) finish |
18:20:56 | FromDiscord_ | <GooseFairy> \build\nim-lang\nightlies\nim\e7471cebae2a404f3e4239f199f5a0c422484aac\tools\finish.nim(206) main |
18:20:58 | FromDiscord_ | <GooseFairy> \build\nim-lang\nightlies\nim\e7471cebae2a404f3e4239f199f5a0c422484aac\lib\pure\os.nim(1851) expandFilename |
18:21:00 | FromDiscord_ | <GooseFairy> Error: unhandled exception: file .nimble\bin' does not exist [OSError] |
18:21:00 | FromDiscord_ | <GooseFairy> ``` |
18:21:02 | FromDiscord_ | <GooseFairy> I tried adding the bin folder to path without any luck. |
18:21:11 | FromDiscord_ | <GooseFairy> couldn't find anything online about it either |
18:36:54 | Araq | GooseFairy: never heard of this error before, congrats |
18:37:45 | Araq | however, finish.exe doesn't support '-help', just double click on it |
18:44:07 | FromGitter | <kaushalmodi> Araq: 7's in nim file names get parsed to `/` during compilation |
18:44:23 | FromGitter | <kaushalmodi> with t7975.nim , I see: ⏎ ⏎ > CC: t/9/5.nim |
18:44:54 | Araq | so what |
18:45:11 | FromGitter | <kaushalmodi> checking if that is intended |
18:45:53 | FromGitter | <kaushalmodi> that CC: message looks confusing |
18:47:09 | Araq | that's actually impossible. what you mean is "I'm confused" and since that's the usual state of mind of a programmer ... I know. |
18:47:53 | lqdev[m] | @kaushalmodi this is a recent change made to the compiler, older versions (0.19.4) used `__` iirc |
18:48:10 | lqdev[m] | not sure if it's `__` or `_` |
18:48:49 | * | absolutejam4 quit (Ping timeout: 244 seconds) |
18:50:22 | FromGitter | <kaushalmodi> lqdev: yes, I am aware of that change.. though I thought that that was to convert `/` to 7's and _'s in some combination to allow compilation of same named nim modules |
18:50:45 | FromGitter | <kaushalmodi> looks like the displays always convert all 7's in file/dir names to `/` |
18:51:25 | FromGitter | <kaushalmodi> there should have been some escape mechanism to differentiate between a literal 7 and the one introduced by the compiler |
18:52:51 | FromDiscord_ | <GooseFairy> @Araq yeah I tried running it with -help after running it normally just to see if there was any more info |
19:06:32 | * | junland quit (Quit: %ZNC Disconnected%) |
19:07:22 | * | absolutejam4 joined #nim |
19:08:11 | * | junland joined #nim |
19:08:57 | * | gangstacat joined #nim |
19:18:08 | kungtotte | Man I love working with Nim. If there was ever a language I wanted to use the word 'ergonomic' about it's Nim. Everything just clicks in my brain and most of the time things just work the way I think they will. It's also trivial to build solutions from the ground up instead of shoehorning your ideas into the given mold of the language/framework like so many other languages force you to do. |
19:22:13 | Araq | we're collecting quotes about Nim. |
19:22:18 | Araq | can I use yours? |
19:22:35 | kungtotte | Absolutely |
19:22:57 | lqdev[m] | GooseFairy: the Unix standard is `--help` not `-help` anyway |
19:23:11 | Araq | kungtotte: PM me your real name then please |
19:24:10 | FromDiscord_ | <GooseFairy> ignoring my attempt to self-help, and ideas on the cause of the error? haven't been able to use nim yet |
19:24:18 | FromDiscord_ | <GooseFairy> ignoring my attempt to self-help, any ideas on the cause of the error? haven't been able to use nim yet |
19:24:23 | FromDiscord_ | <GooseFairy> any* |
19:24:37 | kungtotte | lqdev[m]: actually long options are a GNU extension if you want to get technical about it :P POSIX only has short options |
19:24:52 | FromGitter | <kayabaNerve> ... why does Nim have a module name conflict issue? |
19:25:15 | FromGitter | <kayabaNerve> I understand the issue with importing two modules with the same name into the same file without `as` but for the entire project? |
19:26:43 | * | ibutra joined #nim |
19:28:13 | Araq | GooseFairy: what does finish.exe say? |
19:28:43 | Araq | before the " Error: unhandled exception: file .nimble\bin' does not exist [OSError]" |
19:28:47 | Araq | what step does fail? |
19:30:19 | FromDiscord_ | <GooseFairy> expandFilename |
19:30:38 | FromDiscord_ | <GooseFairy> `\build\nim-lang\nightlies\nim\e7471cebae2a404f3e4239f199f5a0c422484aac\lib\pure\os.nim(1851) expandFilename` |
19:30:45 | FromGitter | <arnetheduck> Araq, there's a bug when `.nimble` doesn't exist |
19:31:12 | Araq | finish doesn't deal with nimble |
19:32:06 | FromGitter | <arnetheduck> well, I tried running finish recently and couldn't because I didn't have it there.. |
19:32:47 | FromGitter | <arnetheduck> but I didn't really dig into it |
19:33:48 | FromDiscord_ | <GooseFairy> I don't see a .nimble in anything I extracted from the download |
19:37:56 | * | ibutra quit (Quit: Textual IRC Client: www.textualapp.com) |
19:40:53 | lqdev[m] | try creating a folder called `.nimble` in your home directory |
19:41:02 | lqdev[m] | I had the same issue when I tried installing Nim on Windows, btw |
19:44:28 | * | absolutejam1 joined #nim |
19:45:44 | FromDiscord_ | <GooseFairy> that worked |
19:45:55 | FromDiscord_ | <GooseFairy> a bit annoying that nim can only be installed there but oh well |
19:46:17 | FromDiscord_ | <GooseFairy> where's the "standard location" for mingw64? |
19:46:53 | FromGitter | <ratiotile> didn't Nim used to have a windows installer? |
19:47:19 | * | absolutejam4 quit (Ping timeout: 246 seconds) |
20:00:05 | * | chun quit (Remote host closed the connection) |
20:00:26 | * | chun joined #nim |
20:10:37 | FromGitter | <zetashift> I thin it had a self extracting archive but not a full installer |
20:11:27 | federico3 | https://github.com/nim-lang/Nim/pull/6664 any hint on the errors ? |
20:11:32 | * | moigagoo quit (Quit: Connection closed for inactivity) |
20:11:53 | federico3 | somebody who understands shared libraries under osx and windows could help :) |
20:14:15 | FromGitter | <phrmoy> Hey guys, any plan to support OpenACC with Nim? |
20:14:30 | FromGitter | <phrmoy> Btw, super excited about the prospect of v1.0 coming out soon! |
20:16:10 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
20:27:21 | Araq | lqdev[m]: that's bad, please report it properly |
20:28:11 | FromGitter | <ratiotile> Does Nim have typedef/ type alias? I'm getting tired of typing out generic parameters |
20:28:51 | Araq | type Alias = Foo[int, string] |
20:30:44 | FromGitter | <zetashift> still the easiest way imho to install Nim on Windows is using choosenim + those DLLs |
20:30:52 | * | brakmic quit (Read error: Connection reset by peer) |
20:33:53 | Araq | phrmoy: OpenACC can be done with a template that uses some .emit, I think |
20:34:48 | Araq | oh finish.exe got Nimble support, that's why :-( |
20:35:14 | FromGitter | <phrmoy> thanks, that's good to hear |
20:38:02 | * | kuon joined #nim |
20:38:45 | kuon | hello, is there a way to specify the compiler command that is run when doing "nimble install" in a project directory with a myproject.nimble file? |
20:40:52 | FromDiscord_ | <GooseFairy> So I'm trying to compile my first program but I've run into a lot of issues. At first it was because even with my bin in PATH I could not call nim.exe, after renaming the `.nimble` folder to `nimble and changing my path the system was able to find it, but now it can't find the compiler since it still expects it to be in `.nimble` despite my path being correct |
20:41:38 | FromDiscord_ | <GooseFairy> I think none of this would have been an issue if `finish.exe` didn't require nim to be installed in C:/users/user/.nimble |
20:41:55 | FromGitter | <zetashift> @GooseFairy maybe try installing nim using choosenim? |
20:42:59 | FromGitter | <zetashift> or follow along these instructions: https://github.com/nim-lang/Nim#compiling |
20:44:37 | FromGitter | <ratiotile> you can also modify the nim/config/nim.cfg's `cc =` line to force compiler |
20:45:02 | FromDiscord_ | <GooseFairy> oh I'll try that then |
20:46:47 | FromGitter | <ratiotile> @GooseFairy: I was referring to @kuon 's question |
20:47:00 | FromDiscord_ | <GooseFairy> hah well I think it'll work for me too |
20:47:46 | * | brakmic joined #nim |
20:48:01 | FromDiscord_ | <GooseFairy> yeah haha it did |
20:49:05 | Araq | it's a regression, will be fixed in 0.20.2 |
20:49:52 | Araq | sorry this passed my review :-/ |
20:55:54 | kuon | ratiotile I mean the nim command, not the underlining compiler |
20:57:10 | kuon | I want to call nim cc with --passL argument but only in my project |
20:58:03 | FromGitter | <ratiotile> @kuon: you can add a nim.cfg in the root of your project then, which will override the system nim.cfg |
21:01:36 | kuon | ok |
21:01:40 | kuon | thanks |
21:11:00 | FromGitter | <ratiotile> Using the nim profiler --stacktrace:on breaks asyncdispatch. It exits my program after only 1 loop |
21:11:45 | FromGitter | <ratiotile> with --profiler:on, but no stacktrace, it works normally, but I don't get any useful profile results. |
21:14:38 | * | Vladar quit (Remote host closed the connection) |
21:14:40 | FromGitter | <ratiotile> nevermind, that only happened once, now it's working |
21:16:48 | * | nsf quit (Quit: WeeChat 2.4) |
21:19:39 | kuon | I added a nim.cfg to my project, and it is used, but I tried to add options, like --define:foo but the nim compiler is not passed those options |
21:20:06 | kuon | it says it "used config file" with the correct path |
21:20:09 | FromGitter | <ratiotile> try `d=foo` |
21:21:36 | kuon | nop |
21:22:38 | * | jjido joined #nim |
21:23:03 | FromGitter | <ratiotile> are you calling nim, or nimble? |
21:23:33 | kuon | nimble build |
21:24:54 | FromGitter | <ratiotile> I'm pretty sure the global nim.cfg would work, I suppose the project one doesn't |
21:25:28 | * | narimiran quit (Remote host closed the connection) |
21:28:36 | kuon | aaaah it works, but it's nim compiler reading the config, not nimble |
21:29:00 | kuon | I was seeing Command: "/usr/bin/nim" c --noBabelPath ..... in the nimble output, without my configuration |
21:29:23 | kuon | but the compiler was actually reading the cfg and applying it, it's just not verbose |
21:35:55 | rayman22201 | I am tempted to argue with sixte on the forum, but I'm tired of arguing about new runtime. I need to do more productive things lol.... :/ |
21:48:59 | * | laaron- joined #nim |
21:49:20 | * | laaron quit (Remote host closed the connection) |
21:50:11 | * | brakmic_ joined #nim |
21:50:21 | * | brakmic_ quit (Read error: Connection reset by peer) |
21:50:51 | * | brakmic_ joined #nim |
21:51:05 | kuon | I am trying to use sizeof, http://dpaste.com/29MZNSE |
21:51:15 | * | brakmic quit (Read error: Connection reset by peer) |
21:51:35 | kuon | but I get this error Error: type mismatch: got <int literal(0)> but expected 'NimNode = ref NimNodeObj' |
22:00:55 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
22:03:45 | * | solitudesf quit (Ping timeout: 258 seconds) |
22:06:07 | Araq | learn the basics of Nim's macro system? |
22:06:21 | rayman22201 | Macros don't take values as arguments they take AST nodes. |
22:06:29 | FromGitter | <kayabaNerve> ```code paste, see link``` ⏎ ⏎ Is this my fault or part of the new GC? [https://gitter.im/nim-lang/Nim?at=5d211b65ed8ed058b596a3ab] |
22:06:49 | FromGitter | <kayabaNerve> *a bug from the GC; I'm not using the new GC. |
22:07:18 | FromGitter | <kayabaNerve> Since I have a working example already and I don't have a line number for FileB, my guess is it may be a GC bug. |
22:08:01 | kuon | I am trying to use https://github.com/zacharycarter/nuklear-nim/blob/master/nuklear.nim |
22:08:18 | kuon | And it uses this syntax, I guess it's deprecated |
22:08:21 | FromGitter | <ratiotile> I've done that to myself with arrays @kayabaNerve |
22:09:07 | kuon | But I found out about the quote thing for AST |
22:09:38 | kuon | Now I have another problem is that nuklear has circular references for types, and it seems nim cannot find types declared later in the file |
22:09:45 | rayman22201 | @kuon, yell at @zacharycarter. I think that is a bug in his code. He is on irc often though, so he can help. |
22:10:03 | FromGitter | <kayabaNerve> Yeah, I'm setting to an uninitiated ref. |
22:10:18 | FromGitter | <kayabaNerve> Weird error message though. The line before newB is called, but nothing in newB is called. |
22:10:27 | FromGitter | <kayabaNerve> I'd assume newB would execute before crashing. |
22:10:43 | kuon | ok rayman, I will try to catch him |
22:11:26 | kuon | at line 811, window references the table type defined at line 926 |
22:11:55 | Araq | I don't understand how this macro ever compiled, must be really old code |
22:12:20 | kuon | Aaah no I guess that's because I split the type definition to put my macro at a different place |
22:14:45 | kuon | The C code is (((NK_MAX(sizeof(struct nk_window),sizeof(struct nk_panel)) / sizeof(nk_uint))) / 2) |
22:14:58 | kuon | I don't really understand his nim macro logic |
22:18:06 | FromGitter | <ratiotile> Not sure what RootObj does, but my code doesnt use inheritance and gets slightly faster without it |
22:19:59 | * | natrys quit (Quit: natrys) |
22:23:07 | lqdev[m] | kuon: your macro task can be achieved with templates, no need for quote do |
22:24:07 | lqdev[m] | always use the simplest construct that can do the task, proc being the simplest, template being in the middle, and macro being the most complex |
22:24:22 | kuon | yeah it seems template is what I need |
22:39:07 | * | brakmic_ quit () |
22:51:43 | * | absolutejam1 quit (Ping timeout: 245 seconds) |
22:54:27 | * | noonien quit (Quit: Connection closed for inactivity) |
23:03:50 | * | dwdv quit (Quit: quit) |
23:08:00 | * | couven92 quit (Quit: Client Disconnecting) |
23:38:51 | * | dddddd quit (Remote host closed the connection) |