00:23:52 | * | BitPuffin quit (Remote host closed the connection) |
00:29:56 | * | francisl joined #nim |
00:34:03 | * | francisl quit (Ping timeout: 252 seconds) |
00:39:23 | * | zolk3ri quit (Quit: leaving) |
00:49:44 | FromGitter | <zetashift> ah I was having a weird IOError with Nim but seems it's a non Nim issue |
00:51:44 | GitDisc | <spaceghost> dom96: http://luna-lang.org sensors and things. |
00:55:15 | * | arthurz quit (Ping timeout: 256 seconds) |
00:55:25 | * | arthurz joined #nim |
01:30:20 | GitDisc | <spaceghost> I'm having trouble choosing where to start, with my set of libretro cores, or getting them running on rumprun. |
01:44:11 | * | endragor joined #nim |
01:57:52 | * | MJCaley joined #nim |
02:04:07 | * | endragor quit (Remote host closed the connection) |
02:04:36 | * | endragor joined #nim |
02:18:22 | * | endragor quit (Remote host closed the connection) |
02:18:51 | * | endragor joined #nim |
02:18:52 | * | endragor quit (Remote host closed the connection) |
02:20:42 | * | endragor joined #nim |
02:32:05 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
02:37:09 | * | francisl joined #nim |
02:41:47 | * | francisl quit (Ping timeout: 256 seconds) |
02:47:10 | arthurz | I'm curious what is the most frequently requested, but one that does not exist yet unofficial package? |
03:04:21 | GitDisc | <treeform> arthurz, there is a repo for that https://github.com/nim-lang/needed-libraries |
03:05:02 | GitDisc | <treeform> sorted by comments: https://github.com/nim-lang/needed-libraries/issues?q=is%3Aissue+is%3Aopen+sort%3Acomments-desc |
03:05:11 | GitDisc | <treeform> I don't know if there is a clear #1 |
03:05:19 | GitDisc | <treeform> but here are a ton in the top 10ish? |
03:07:37 | * | Pisuke joined #nim |
03:07:45 | * | MyMind quit (Ping timeout: 248 seconds) |
03:20:53 | * | rockcavera joined #nim |
03:23:57 | * | ludocode quit (Ping timeout: 240 seconds) |
03:26:12 | * | vivus quit (Quit: Leaving) |
03:26:52 | * | ludocode joined #nim |
03:28:26 | * | MJCaley quit (Quit: MJCaley) |
03:31:16 | * | francisl joined #nim |
03:35:33 | * | francisl quit (Ping timeout: 240 seconds) |
03:35:33 | * | SenasOzys quit (Ping timeout: 252 seconds) |
03:42:25 | GitDisc | <spaceghost> I think what I'll do first is offer a really nice wegl+v8+wdanilo/basegl along with some libraries for browser and node compatibility as I can manage. |
03:42:42 | GitDisc | <spaceghost> I think what I'll do first is offer a really nice wegl+v8+wdanilo/basegl+libretro system along with some libraries for browser and node compatibility as I can manage. |
03:43:21 | GitDisc | <spaceghost> Then I hope to get a rumprun kernel to run libretro for now. |
03:44:42 | GitDisc | <spaceghost> The goal is to have a sort of next-generation electron system that I'll evolve in a more polyglot manner. |
03:47:02 | GitDisc | <spaceghost> I think what I'll do first is offer a really nice wegl(with google/ANGLE translation for directx support and the such)+v8+wdanilo/basegl+libretro system along with some libraries for browser and node compatibility as I can manage. |
03:47:47 | FromGitter | <zetashift> A solid plan is always a good start |
04:02:10 | * | dddddd quit (Remote host closed the connection) |
04:09:30 | * | vlad1777d quit (Ping timeout: 256 seconds) |
04:23:17 | * | r3d9u11 joined #nim |
04:23:36 | FromGitter | <gogolxdong> Anyone working on FFmpeg? |
04:31:09 | * | francisl joined #nim |
04:35:11 | * | francisl quit (Ping timeout: 245 seconds) |
04:50:45 | * | el_tejon joined #nim |
05:01:03 | * | endragor quit (Remote host closed the connection) |
05:01:57 | * | endragor joined #nim |
05:04:42 | * | arecacea1 quit (Remote host closed the connection) |
05:05:05 | * | arecacea1 joined #nim |
05:22:37 | * | rauss quit (Quit: WeeChat 2.0.1) |
05:23:55 | * | rauss joined #nim |
05:34:41 | * | r3d9u11 quit (Remote host closed the connection) |
05:46:29 | * | endragor quit (Remote host closed the connection) |
05:48:50 | * | CryptoToad joined #nim |
05:49:32 | * | CryptoToad left #nim (#nim) |
05:50:15 | GitDisc | <toad> hey all |
05:50:44 | GitDisc | <toad> curious what the best way to get the content in between two known strings would be in nim |
05:51:10 | GitDisc | <toad> ie: var lookingFor = getBetween("START", "END") |
05:52:39 | FromGitter | <Varriount> toad: You mean slicing? |
05:52:57 | FromGitter | <Varriount> Or do you mean comparing sections of two strings? |
05:53:33 | GitDisc | <toad> Let's say the text was "START_ARBITRARY_END", I would want to grab "_ARBITRARY_" |
05:53:39 | GitDisc | <toad> not sure what the term for that is, it could be slicing |
05:55:08 | GitDisc | <toad> It sounds like it's not, I don't want to trim off the characters on either side as it's used in a large chunk of text, I just want it to return the data between my search characters |
05:56:13 | GitDisc | <toad> I suppose I could use split() at my start, then split the first index at my end, and grab the first index of that |
05:59:11 | GitDisc | <toad> Yeah, basically answered my own question, rubber duck debugging ftw |
06:15:15 | * | endragor joined #nim |
06:18:29 | * | nsf joined #nim |
06:31:35 | * | el_tejon quit (Quit: el_tejon) |
06:53:13 | * | r3d9u11 joined #nim |
07:12:41 | FromGitter | <mratsim> @gogolxdong no one is working on FFmpeg. But if no one does, in the future I will wrap FFMS to be able to load videos in Arraymancer: https://github.com/FFMS/ffms2 |
07:30:07 | FromGitter | <gogolxdong> What are you going to train with this? |
07:50:12 | FromGitter | <dom96> toad: https://nim-lang.org/docs/parseutils.html#captureBetween,string,char,Char,int |
07:50:32 | FromGitter | <dom96> Oh. But that takes chars :( |
07:52:09 | FromGitter | <dom96> Parseutils in general has many procs for these types of things. You should check it out, splitting is generally poor man's parsing but if it works for you feel free to use it :) |
07:58:35 | * | el_tejon joined #nim |
08:04:17 | * | solitudesf joined #nim |
08:19:54 | * | couven92 joined #nim |
08:21:00 | * | el_tejon quit (Quit: el_tejon) |
08:29:26 | * | el_tejon joined #nim |
08:35:17 | * | Senketsu joined #nim |
08:43:55 | * | PMunch joined #nim |
08:54:04 | * | Arrrr joined #nim |
09:01:19 | * | Arrrr quit (Ping timeout: 248 seconds) |
09:03:20 | * | el_tejon quit (Quit: el_tejon) |
09:06:54 | * | xkapastel quit (Quit: Connection closed for inactivity) |
09:09:24 | * | PMunch_ joined #nim |
09:09:36 | * | PMunch quit (Remote host closed the connection) |
09:18:13 | FromGitter | <mratsim> @gogolxdong I want to be able to do deep learning on live video feed: for object detection for example for drones, self driving car, video game AI (that uses an image as input), CCTV security, etc. Currently the only opensource library that allows this is in C and I feel there is a killer application for Nim there |
09:18:25 | * | PMunch__ joined #nim |
09:19:14 | * | Arrrr joined #nim |
09:19:14 | * | Arrrr quit (Changing host) |
09:19:14 | * | Arrrr joined #nim |
09:21:17 | * | PMunch_ quit (Ping timeout: 268 seconds) |
09:22:48 | FromGitter | <gogolxdong> which I am interested in as well, especially for self-driving car , I believe it would come true in 5 years. |
09:25:32 | * | Vladar joined #nim |
09:26:36 | * | PMunch__ is now known as PMunch |
09:26:54 | FromGitter | <mratsim> You can look into darknet: https://github.com/pjreddie/darknet I know people using it for collision detection in drones |
09:27:21 | FromGitter | <mratsim> Example video: https://www.youtube.com/watch?v=VOC3huqHrss |
09:27:31 | FromGitter | <gogolxdong> Do you have the on-site facilities for testing? |
09:27:57 | FromGitter | <mratsim> Also data scientist friends says this course is good: https://www.udacity.com/courses/self-driving-car |
09:29:03 | FromGitter | <mratsim> I try quite hard to have a test for everything I release in Arraymancer. For videos though I will have an issue of Travis processing power and no GPU for testing |
09:42:07 | * | sendell joined #nim |
09:56:41 | * | poopBot joined #nim |
09:57:47 | poopBot | hi this https://nim-lang.org/docs/smtp.html i dont see anywhere options for attachement , am i missing something or what? |
10:04:03 | * | sendell quit (Remote host closed the connection) |
10:08:50 | * | derlafff quit (Remote host closed the connection) |
10:09:08 | * | derlafff joined #nim |
10:16:24 | FromGitter | <gogolxdong> Is this an inspiration for nimble ? ⏎ gx was designed with the following major goals in mind: ⏎ Be language/ecosystem agnostic by providing git-like hooks for adding new ecosystems. ⏎ Provide completely reproducible packages through content addressing. ⏎ Use a flexible, distributed storage backend. [https://gitter.im/nim-lang/Nim?at=5a93de78888332ee3ad2172d] |
10:19:16 | FromGitter | <zetashift> don't know anything about gx but it seems to revolve around IPFS whereas nimble doesn't |
10:27:27 | Zevv | Hi, for debugging I'd like to print an unique ID for object instances (AsyncHTTPClient), implementing |
10:27:30 | Zevv | proc `$`(c: AsyncHttpClient): string = |
10:27:57 | Zevv | I'm trying to get the addr or ref of 'c', but the expression does not have an address |
10:28:27 | Zevv | repr() does know of an address, though |
10:29:37 | dom96 | How are you trying to get the address? |
10:31:11 | Zevv | addr? |
10:31:48 | * | natrys joined #nim |
10:32:24 | Zevv | repr(addr(c)) |
10:32:47 | * | SenasOzys joined #nim |
10:33:35 | * | Amun_Ra quit (Ping timeout: 240 seconds) |
10:33:41 | * | Yardanico_ joined #nim |
10:35:03 | dom96 | Not sure why that wouldn't work, 'AsyncHttpClient' is a ref |
10:35:27 | Zevv | Yeah. The whole proc is |
10:35:27 | Zevv | > proc `$`(c: AsyncHttpClient): string = |
10:35:27 | Zevv | > return $addr(c) |
10:35:38 | Zevv | cts.nim(149, 16) Error: expression has no address |
10:35:40 | Zevv | is the anser |
10:35:57 | * | Amun_Ra joined #nim |
10:39:57 | * | Yardanico_ quit (Read error: Connection reset by peer) |
10:40:06 | dom96 | well, you should be able to use unsafeAddr |
10:45:26 | Araq | and that would be wrong, the ID you seek is cast[int](c) |
10:45:35 | FromGitter | <mratsim> addr returns a pointer, Nim suppose that playing with a pointer to a non-var parameter is unsafe so it asks you to make extra sure that is what you want |
10:45:38 | Araq | since it's a ref object and you don't care about the stack addresses |
10:45:51 | Zevv | yes, that's the one |
10:45:54 | Zevv | thanks |
10:47:21 | * | floppydh joined #nim |
10:57:03 | poopBot | hi this https://nim-lang.org/docs/smtp.html i dont see anywhere options for attachement , am i missing something or what?? |
10:58:37 | PMunch | poopBot, doesn't seem to have any way to build MIME formatted messages no, but you can do it yourself: https://www.alibabacloud.com/help/faq-detail/51584.htm |
11:02:29 | poopBot | hmm form what i see this Phyton script uses some Mimemultypart |
11:02:34 | dom96 | Araq: ahh, still learning new things :) |
11:03:06 | dom96 | poopBot: yeah, you will likely have to implement this MIME protocol. |
11:03:16 | dom96 | smtp is pretty barebones |
11:03:27 | poopBot | oh i think i am too much newb for that |
11:03:33 | * | rokups joined #nim |
11:04:37 | poopBot | not lazy just newb :) |
11:07:01 | FromGitter | <mratsim> @zacharycarter Tell this guy to use Nim for his next game / game engine ;): https://github.com/SSYGEN/blog/issues/31 (also good read about the pifalls of solo game development) |
11:08:58 | poopBot | i plan to duplicate evry smaller project in do in c# godot to do in Nim too |
11:10:04 | FromGitter | <zetashift> I like that plan |
11:11:22 | dom96 | One of you game devs needs to write a definitive "Why Nim is the perfect language for game development" article |
11:15:18 | FromGitter | <Bennyelg> My Nimmy :) ⏎ @dom96 any online shop to buy stickers & mugs , shirts |
11:16:57 | dom96 | not yet |
11:17:35 | FromGitter | <Bennyelg> Ok, thanks. |
11:18:32 | * | solitudesf quit (Ping timeout: 245 seconds) |
11:21:54 | * | PMunch_ joined #nim |
11:22:14 | * | PMunch quit (Disconnected by services) |
11:22:18 | * | PMunch_ is now known as PMunch |
11:23:40 | * | pwntus is now known as Pwntus |
11:24:28 | FromGitter | <mratsim> I’ve added my Nim propaganda here: https://github.com/SSYGEN/blog/issues/31#issuecomment-368469949 |
11:25:53 | dom96 | Nice :) |
11:26:37 | dom96 | You should add this link as well: https://ldjam.com/users/impbox/games |
11:26:40 | poopBot | nice dident know there are UE4 bindings for nim |
11:27:01 | dom96 | and mention that Smalltrek won one of the Ludum Dares |
11:28:06 | FromGitter | <mratsim> added neverwinter nights and impbox link, who is smalltrek, any link? |
11:28:17 | FromGitter | <zetashift> @poopBot the bindings are currently unmaintained, the company switched from UE4 to Godot; They did mention that they'd offer any help for those who want to update it |
11:29:09 | dom96 | mratsim: it's one of impbox's games |
11:29:12 | FromGitter | <zetashift> @mratsim one of impbox's games : https://ldjam.com/events/ludum-dare/38/smalltrek |
11:29:23 | FromGitter | <zetashift> :D |
11:29:31 | poopBot | am not using UE4 anyway my pc is week :( , plan to use godot |
11:30:15 | FromGitter | <zetashift> I am probably gonna use Godot too for the 7drl next week |
11:30:47 | FromGitter | <mratsim> updated |
11:31:05 | poopBot | sux only export dont work stil for bindings |
11:31:56 | FromGitter | <zetashift> what do you mean? |
11:32:34 | poopBot | you cant meke game if you use bindings like c# or other |
11:33:00 | poopBot | it will work only from editor , you cant realise android or anything else from waht i understand |
11:33:42 | FromGitter | <zetashift> The export function is indeed temporarily broken; but only for C# |
11:33:49 | FromGitter | <zetashift> C# doesn't use GDNative |
11:33:54 | poopBot | it works for nim? did you try it? |
11:34:15 | poopBot | i think sombody told me that all bindings use GDNative |
11:37:08 | FromGitter | <zetashift> according to https://godotengine.org/article/introducing-csharp-godot " In order to bring C# programming to Godot, we are embedding the Mono runtime into the engine. As of alpha2, Godot is using Mono 5.2 and C# 7.0 is supported. " |
11:38:20 | FromGitter | <zetashift> I'm 99% sure a previous godot version had C# exporting disabled because of bugginess |
11:38:41 | poopBot | did you try Nim , does it work? |
11:38:43 | FromGitter | <zetashift> @Calinou who is a Godot maestro could tell you more |
11:38:57 | FromGitter | <zetashift> I'll try and export the godot-nim-stub with the latest version |
11:39:09 | poopBot | ok report back :) |
11:42:15 | * | vlad1777d joined #nim |
11:52:29 | * | poopBot quit (Remote host closed the connection) |
11:58:29 | FromGitter | <alehander42> can a user create his own effect in nim's effect system ? |
12:00:16 | * | yglukhov joined #nim |
12:02:49 | * | Snircle joined #nim |
12:03:43 | * | Arrrr quit (Ping timeout: 248 seconds) |
12:04:19 | Araq | sure |
12:09:48 | * | yglukhov quit (Remote host closed the connection) |
12:11:16 | * | r3d9u11 quit (Quit: Leaving) |
12:11:48 | * | r3d9u11 joined #nim |
12:14:23 | * | vlad1777d quit (Ping timeout: 252 seconds) |
12:18:28 | * | Arrrr joined #nim |
12:18:28 | * | Arrrr quit (Changing host) |
12:18:28 | * | Arrrr joined #nim |
12:23:52 | FromGitter | <zetashift> @poopBot I succesfully exported to Windows and HTML5, though the HTML5 one had a few errors but I think that's Godot's WIP HTML5 export target |
12:30:32 | FromGitter | <mratsim> @alehander42 You can use the tags |
12:33:12 | FromGitter | <alehander42> so I wonder |
12:33:16 | FromGitter | <alehander42> if I have a tag A |
12:33:42 | FromGitter | <alehander42> and I have a function ⏎ ⏎ ```proc f(a: int) {.tags: [A].} = ⏎ # stuff``` [https://gitter.im/nim-lang/Nim?at=5a93fea535dd17022ef5ea36] |
12:34:22 | FromGitter | <alehander42> does Nim check if actually it is `A` ? (e.g. if the body is just `discard`, does it tell me "this function is not A") |
12:34:33 | * | SenasOzys quit (Ping timeout: 240 seconds) |
12:34:38 | FromGitter | <alehander42> (obviously it works for the other case when I want `not A`) |
12:37:24 | FromGitter | <mratsim> no, you are tagging the function as A. The compiler trusts your tag. (I’ve not used the effect system extensively but I tried with OpenMP which is tagged “SideEffects”) |
12:42:50 | FromGitter | <alehander42> hm, I see, when I tried to imagine how it would work, I imagined it like `{.A: true / false / trust.}` |
12:43:23 | FromGitter | <alehander42> but probably that's not needed in most cases |
12:47:41 | * | francisl joined #nim |
12:52:09 | * | francisl quit (Ping timeout: 252 seconds) |
12:53:03 | * | poopBot joined #nim |
12:53:09 | * | SenasOzys joined #nim |
13:08:18 | * | BitPuffin joined #nim |
13:15:35 | * | jsn- quit (Ping timeout: 240 seconds) |
13:16:00 | * | jsn- joined #nim |
13:21:00 | Araq | well it is inferred if you don't write the .tags |
13:21:02 | * | jsn- quit (Ping timeout: 245 seconds) |
13:21:26 | Araq | and if you write the .tags it's checked not to lie |
13:21:38 | Araq | but "superfluous" tags are not an error |
13:21:45 | Araq | which is how you can introduce a new effect |
13:22:23 | Araq | works well in my experience, no true/false/trust required |
13:22:31 | * | jsn- joined #nim |
13:28:26 | * | Jesin quit (Quit: Leaving) |
13:30:47 | * | francisl joined #nim |
13:32:05 | * | Arrrr quit (Read error: Connection reset by peer) |
13:34:57 | * | francisl quit (Ping timeout: 240 seconds) |
13:45:01 | * | floppydh quit (Quit: WeeChat 2.0.1) |
13:46:22 | FromGitter | <zacharycarter> @dom96 - I'm not sure if I agree that Nim is the BEST language for game engine development |
13:46:59 | dom96 | really? Why? |
13:47:13 | FromGitter | <zacharycarter> I have a quick stand up - I'll explain after that |
13:48:17 | * | poopBot quit (Remote host closed the connection) |
13:51:15 | FromGitter | <zacharycarter> @dom96 - I think Nim's GC makes it difficult to implement certain subsystems that modern engines exhibit - like parallelized job / task systems. |
13:53:51 | dom96 | That's a shame :/ |
13:54:01 | dom96 | What would you consider the best language? |
13:54:16 | dom96 | Is there something we could to make it easier to implement these subsystems? |
13:54:21 | dom96 | *could do |
13:54:57 | FromGitter | <zacharycarter> C/C++ - the ecosystem is huge and you don't have a GC to deal with when writing multi-threaded code |
13:55:41 | FromGitter | <zacharycarter> having said that - I still think Nim is useful for game development. I plan on writing most of the engine code for my project in C/C++ and then exposing a C interface to bind to with Nim to write gameplay code - similar to what godot does. |
13:56:49 | dom96 | Couldn't you still use Nim without a GC to write the engine? |
13:57:14 | dom96 | I know the ecosystem isn't there, but surely the language itself is far better than dealing with C/C++ |
13:58:15 | dom96 | But I wonder what of the C/C++ ecosystem you would use |
13:58:39 | dom96 | Most game engines seem to re-write almost everything, including networking |
13:58:53 | * | francisl joined #nim |
13:59:26 | FromGitter | <zacharycarter> Fibers for instance - not really a clear way to use those with Nim at the moment. |
13:59:46 | Araq | you're supposed to use .async instead :P |
14:00:23 | FromGitter | <zacharycarter> well there's no clear example of this anywhere |
14:00:33 | FromGitter | <zacharycarter> at least that I've stumbled upon |
14:00:48 | Araq | the manual contains an example of a tasking system with closure iterators |
14:00:58 | Araq | wasn't helpful? |
14:01:03 | Araq | or did you miss it? |
14:01:54 | Araq | https://nim-lang.org/docs/manual.html#iterators-and-the-for-statement-first-class-iterators |
14:02:17 | FromGitter | <zacharycarter> oh - I see - using the async module... hrmm... yeah I guess this could work but then you're using a single thread |
14:02:40 | Araq | you can move tasks to a different thread but it copies |
14:03:25 | Araq | but you can use a 'ptr' to the real data and then it only copies little |
14:04:35 | FromGitter | <zacharycarter> okay - thank you for explaining that to me, and linking the example - I'll play around with this. |
14:05:05 | Araq | Nim's multi threading doesn't win any prices in the elegance department but it's workable until the shiny v2 features get production ready |
14:05:33 | * | francisl quit (Ping timeout: 240 seconds) |
14:06:25 | Araq | *prizes |
14:08:14 | * | salewski joined #nim |
14:08:16 | Araq | dom96, yeah EA has a custom version of the STL |
14:09:58 | salewski | Araq, do you think it is wise to mention v2 at all? So 1.0 will come out, but no one will be interested any more. |
14:10:07 | * | francisl joined #nim |
14:10:12 | salewski | All will say: lets wait for 2.0 |
14:10:28 | Araq | ah damn, good point |
14:11:02 | salewski | But indeed, v2 without GC may make nim really popular. |
14:11:20 | FromGitter | <zacharycarter> I just need to play around with Nim's async stuff more - maybe it will be the perfect solution for what I'm trying to do |
14:15:18 | FromGitter | <mratsim> I’m pretty sure lots of people will say “aww, too bad, I really don’t want to manage my own memory, gimme a GC" |
14:15:35 | dom96 | zacharycarter: Yeah, please do, and feel free to ping me if you have any questions about Nim's async. |
14:15:47 | dom96 | mratsim: yep, I'm one of those people |
14:17:05 | dom96 | I know that Araq is excited about his new ideas but this v2 talk is even turning me off. I like the GC, I don't want it to go away, I doubt we will be able to pick off enough Rust users with a v2 that enables GC-less Nim usage. |
14:17:12 | FromGitter | <zacharycarter> thanks @dom96 - I will |
14:17:30 | dom96 | There is plenty of Python, Go, and Swift users that we should be focusing on |
14:17:53 | Araq | you mean the Swift which lacks a GC? :P |
14:18:03 | FromGitter | <krux02> Araq: what's your problem with my fix for `proc write(File, float)`? |
14:18:20 | livcd | also how exactly is swift usable on Windows and Linux ? :-X |
14:19:05 | dom96 | It might not have a "GC" but it surely has "automatic memory management" |
14:19:10 | dom96 | Which to most people means "GC" |
14:19:32 | Araq | so in other words you don't understand my v2 stuff and yet it puts you off, got it |
14:20:15 | dom96 | Indeed, I don't. 99% of people who read these IRC logs won't either. |
14:20:44 | dom96 | They'll just dismiss Nim as trying to be too many things |
14:20:56 | Araq | ignorance is a weak position to argue from. |
14:21:04 | FromGitter | <mratsim> I thought it was just trying to be the best ;) |
14:21:11 | Araq | why should I take your objections seriously? |
14:21:30 | livcd | araq just needs to find a big corporation for backing :d |
14:21:34 | FromGitter | <mratsim> for marketing it actually makes sense to argue from ignorance, we ar supposed to educated potential users about Nim’s benefits |
14:21:53 | dom96 | Yep, I always look at these things from the perspective of marketing |
14:22:02 | * | athenot joined #nim |
14:22:24 | Yardanico | livcd, for linux there's official builds |
14:23:13 | FromGitter | <mratsim> Call that “Scope-Based Memory Reclamation” —> SBMR, Does Nim has a GC? no. Do we have to manually managed memory? No but you can. How does it do it? Scope based memory reclamation! |
14:23:20 | Yardanico | for windows - there's one too https://swiftforwindows.github.io/ (it uses mingw though) |
14:23:33 | dom96 | I think it will surprise you to see the amount of times things written in this IRC channel are repeated on HN/Reddit |
14:24:01 | Araq | it surprises me anybody reads HN/Reddit |
14:24:47 | FromGitter | <Vindaar> My impression is that v2 is supposed to be so smart about memory allocations that once all the `sink`, `destroy` etc procs are defined, the compiler is able to handle the memory allocations mostly by itself. So that it basically mostly feels GC'ed, while it actually isn't. I mean Araq's point is obviously not to have all of us go back to calling malloc and free all over the place. Do I understand that correctly, Araq? |
14:25:02 | dom96 | https://nim-lang.org/assets/news/images/survey/nim_found.png |
14:25:03 | livcd | Yardanico: Yeah there are even some frameworks on Linux but nobody seems to care. Also that Windows port is I think an unofficial one done by 1 korean guy ? I am not sure anyone actually uses Swift anywhere else than on iOS/OSX |
14:25:15 | Yardanico | livcd, well I just mean it's available :D |
14:25:45 | livcd | Yardanico: but on Windows it really is not is it ? I am not even sure that one works. But I get your point :D |
14:25:56 | * | dddddd joined #nim |
14:26:05 | FromGitter | <krux02> Araq: you should be happy, because aparently it's the main source of nim users |
14:27:53 | dom96 | Vindaar: That sounds right to me. If so, perhaps saying that Nim v2 will have "no GC" is bad. |
14:28:26 | Araq | Vindaar: That is correct. |
14:28:36 | dom96 | We should instead say that disabling the GC in Nim v2 will be much easier. |
14:29:02 | Yardanico | Yeah, AFAIK Araq mentioned that GC will still be available to use, but stdlib types will prefer to use destructors |
14:30:07 | FromGitter | <mratsim> I still think we should use a new name instead of GC or destructors to avoid both the GC and manual memory management connotations |
14:30:15 | Araq | it's "scope based memory management", implicit but predictable |
14:30:31 | livcd | with all this talk about v2 when is v1 going to be released ? :D |
14:30:31 | Araq | or rather "implicit and works well with foreign libraries" |
14:30:52 | * | endragor quit (Remote host closed the connection) |
14:31:11 | FromGitter | <Vindaar> Good to know :) Then yes, I agree with @dom96 and @mratsim, we should be careful to do proper :D |
14:31:17 | FromGitter | <Vindaar> *marketing |
14:31:56 | * | couven92 quit (Ping timeout: 276 seconds) |
14:33:13 | FromGitter | <survivorm> @dom96 Is there more than 100% users in the survey, or are my eyes failing me? I thought there is only one way to get to know of something, not several. Like no way to make second first impression :) |
14:33:17 | * | endragor joined #nim |
14:33:40 | FromGitter | <krux02> I am not so sure if Nim would hold against a big crowd of new users. It already has over 1111 issues with only a small user base. |
14:34:17 | FromGitter | <survivorm> I think it's more a question of carefully expanding core team |
14:34:31 | * | endragor_ joined #nim |
14:35:58 | FromGitter | <survivorm> ogrammersmore users => more money on community, hopefully, so nim would be able to *afford* more pri on the core team, but the question is, is Araq ready to lead the developer team in nim's core? |
14:36:17 | FromGitter | <data-man> @mratsim: nim-glm isn't binding. It's pure Nim library. :) |
14:36:45 | dom96 | survivorm: that question allowed multiple choices, I interpret it as people seeing Nim in multiple places |
14:36:45 | * | sendell joined #nim |
14:36:53 | FromGitter | <survivorm> No offence meant, of cource |
14:37:23 | dom96 | krux02: more users -> more PRs -> more fixes |
14:37:26 | FromGitter | <survivorm> @dom96 Still, to me it's like second-first impression |
14:38:00 | FromGitter | <survivorm> @dom96 still, that won't work without core team boost |
14:38:15 | * | endragor quit (Ping timeout: 268 seconds) |
14:38:28 | dom96 | What do you mean by "boost"? :) |
14:38:31 | FromGitter | <survivorm> You can only get so far working almost single-handly |
14:38:50 | FromGitter | <survivorm> by people, of cource |
14:38:53 | * | endragor_ quit (Ping timeout: 240 seconds) |
14:40:07 | FromGitter | <survivorm> And i mean people who are doing that not part-time (which is great, of cource, but not enough) |
14:41:51 | * | natrys quit (Ping timeout: 245 seconds) |
14:42:57 | FromGitter | <survivorm> I've had a discussion with my collegue, recently, about using nim in production |
14:43:26 | FromGitter | <survivorm> And i couldn't beat his community argument, sadly |
14:45:47 | Araq | chicken-and-egg |
14:45:55 | FromGitter | <krux02> dom96: more users, more opinions, less time to think about them, more decisions, more bad decisions. |
14:46:17 | Araq | speaking of which |
14:46:37 | FromGitter | <survivorm> Even if ecosystem is great and all, community is friendly, it's small and i don't see it's growing rapidly. So, business will hardly take a risk in using nim, given the alternative. So, no community growth, and so on |
14:46:42 | Araq | krux02: you tend to mix refactorings with bugfixes |
14:46:50 | Araq | and I don't agree with your refactorings |
14:47:01 | FromGitter | <krux02> yea I do mix them up |
14:47:19 | FromGitter | <krux02> I think to fix bug it is essential to clean up the mess a bit. |
14:47:30 | FromGitter | <krux02> what don't you agree about? |
14:47:33 | * | Jesin joined #nim |
14:47:51 | Araq | setLen s, n+procWritingToABuffer |
14:48:35 | FromGitter | <krux02> what is so bad about it? |
14:49:10 | Araq | it's not my style |
14:49:26 | FromGitter | <krux02> what is your style? |
14:49:48 | Araq | use a 'let newLen = ...' at least |
14:49:55 | FromGitter | <krux02> my style it to make bulk operations and try not to write loops, even if they would be fast |
14:50:11 | FromGitter | <krux02> ok I can agree on that |
14:50:12 | Araq | and you use sprintf instead of copyMem etc |
14:50:31 | Araq | your code is hardly an improvement on the original |
14:51:04 | FromGitter | <krux02> http://ix.io/PNU |
14:51:05 | Araq | my style is to use the C library as a last resort since eventually we will be free of libc dependencis |
14:51:29 | * | endragor joined #nim |
14:51:51 | Araq | c_sprintf(result[^1].addr, buffer[0].addr) # another thing which is a small WTF ;-) |
14:52:23 | FromGitter | <krux02> well it is wrong |
14:52:35 | FromGitter | <krux02> because I set the new before |
14:52:49 | Araq | yes, obviously. |
14:53:01 | Araq | but once it's correct, it stays ugly |
14:53:18 | FromGitter | <krux02> http://ix.io/PNW/nim |
14:53:24 | Araq | again, libc won't be around forever. |
14:53:34 | * | yglukhov joined #nim |
14:53:42 | FromGitter | <krux02> all I want is to apend a 0 terminated cstring to a string |
14:53:51 | FromGitter | <krux02> without new memory allocation and without a loop |
14:54:15 | Araq | so use 'add' |
14:54:16 | FromGitter | <krux02> the loop has to be somewhere, I know, but I prefer not to write the loop |
14:54:26 | FromGitter | <krux02> is it overloaded? |
14:55:10 | Araq | proc add*(x: var string, y: cstring) |
14:55:27 | Araq | but probably not available in this position in system.nim |
14:55:43 | * | endragor quit (Ping timeout: 252 seconds) |
14:56:12 | Araq | loop or not, everything is better than C's format strings which are a whole attack vector |
14:56:24 | Araq | by themselves. |
14:56:55 | Araq | it's not a "bulk operation" by any meaningful interpretation of this term. |
14:57:47 | Araq | that C lacks a simple floatToA is also not in its favour |
14:57:57 | * | francisl quit (Remote host closed the connection) |
14:58:36 | * | francisl joined #nim |
14:59:37 | Araq | <survivorm> I'm ready to lead a team of Nim core developers. |
14:59:41 | Calinou | @zetashift C# exporting isn't supported yet but it's being worked on right now. Mono 5.4 is supported (5.8 isn't right now, but it will eventually be) |
15:00:03 | Araq | Calinou, moved from Urho to Godot? |
15:00:14 | Calinou | I've never actually used Urho… |
15:00:24 | Calinou | that said, NinjaSnowWar is the coolest open source engine demo I've ever played :D |
15:00:28 | Araq | oh ok |
15:00:38 | FromGitter | <krux02> Araq: http://ix.io/PO7/nim |
15:01:33 | Araq | krux02: now we're getting somewhere |
15:02:33 | Araq | but we should probably have a proc add(s: var string; buf: cstring; buflen: int) |
15:10:03 | * | natrys joined #nim |
15:11:17 | * | yglukhov quit (Read error: Connection reset by peer) |
15:11:30 | * | yglukhov joined #nim |
15:15:37 | * | MJCaley joined #nim |
15:18:46 | FromGitter | <k0pernicus> Hello friends! |
15:19:50 | FromGitter | <k0pernicus> Do you experience some issues refreshing the package list? |
15:20:34 | FromGitter | <k0pernicus> (using Nimble) |
15:20:54 | FromGitter | <Vindaar> Hello there! Seems to work fine for me |
15:22:39 | FromGitter | <k0pernicus> Ok, I think I have troubles with my OpenSSL config... |
15:22:44 | FromGitter | <k0pernicus> Thanks @Vindaar |
15:28:46 | FromGitter | <krux02> Araq: yes we should have that. Wouldn't that be a good use case for openarray as value thing? |
15:29:12 | Yardanico | btw, I don't know if this was posted before, but Nim shows very good (and expected) performance: https://github.com/cart/godot3-bunnymark#benchmark-run---february-22-2018 |
15:30:05 | salewski | I guess the "Scope based memory management" may attract many people from the area of embedded devices and microcontrollers. |
15:30:23 | salewski | Because there is currently mostly only C and C++. |
15:30:40 | Araq | salewski, it also helps in wrapping GTK3, no? |
15:31:44 | salewski | Araq, I dont know. GC seems to work fine for GTK3, I fear "Scope based memory management" is much new work for me... |
15:32:29 | Araq | currently you use new + finalizers, right? |
15:32:54 | salewski | Yes. |
15:33:24 | Araq | that will easily map to new + destructor |
15:33:45 | salewski | Fine, indeed I hoped that :-) |
15:35:12 | salewski | Bye. |
15:35:15 | Araq | bye |
15:35:19 | * | salewski quit (Quit: WeeChat 1.9.1) |
15:39:57 | FromGitter | <krux02> Araq: http://ix.io/POZ/nim |
15:40:25 | FromGitter | <krux02> but I get the following Error: system module needs 'setLengthStr' |
15:41:36 | Araq | move it to sysstr.nim |
15:46:24 | * | MJCaley quit (Quit: MJCaley) |
15:52:03 | FromGitter | <dom96> @k0pernicus macOS? If so you will likely need to install OpenSSL via homebrew or some other way |
15:52:17 | FromGitter | <krux02> Araq: what is the problem with it in system? there are other procs that use setLen, too. |
15:52:18 | FromGitter | <dom96> Newest Nim devel should give a better error message for this. |
15:53:03 | FromGitter | <krux02> for example insert uses setLen |
15:53:54 | Araq | krux02: insert is in line 3893 |
15:54:04 | Araq | after sysstr has been included |
15:54:36 | Araq | it sucks but it's really not hard to understand |
15:54:54 | FromGitter | <krux02> ok |
15:55:02 | Araq | there is little magic going on, the compiler follows system.nim from top to bottom |
15:56:07 | FromGitter | <krux02> can I move the entire branching block of `add(var string)` to sysstr? |
15:56:31 | Araq | sysstr is not included for JS |
15:56:38 | Araq | so ... unlikely. |
15:56:46 | FromGitter | <k0pernicus> @dom96 Yep, I already installed OpenSSL, had troubles to link it, installed LibreSSL, same thing :-/ |
15:56:53 | Araq | neither is it included in NimScript |
15:57:19 | FromGitter | <k0pernicus> @dom96 Are you using OpenSSL from brew? 1.0.2n ? |
15:59:02 | FromGitter | <dom96> Yep |
15:59:16 | FromGitter | <dom96> You need to make sure it's loaded by nimble |
15:59:41 | FromGitter | <k0pernicus> Yep, I think that’s the issue... |
15:59:45 | FromGitter | <dom96> There is an env v you need to set |
15:59:54 | FromGitter | <dom96> *var |
16:02:45 | FromGitter | <krux02> ok whn sysstr is not included for JS then I don't need to do the branching |
16:02:50 | FromGitter | <krux02> that's good |
16:04:34 | FromGitter | <krux02> Araq, can I create a string from a cstring and a length? |
16:05:05 | FromGitter | <k0pernicus> @dom96 You are talking about `-d:ssl` right ? |
16:05:39 | FromGitter | <k0pernicus> I don’t see anything about OpenSSL issues in the nimble README... |
16:05:54 | Araq | krux02: unfortunately you can't |
16:06:21 | FromGitter | <krux02> that is bad |
16:06:49 | FromGitter | <krux02> buf yea I don't need this proc for the nimvm |
16:07:01 | FromGitter | <krux02> can I prevent a proc for generation on the vm? |
16:09:49 | Araq | when nimvm or whatever it's called |
16:10:14 | Yardanico | https://github.com/nim-lang/Nim/pull/7254#issuecomment-368553888 :D |
16:10:54 | Araq | oh |
16:11:03 | Araq | I forgot about that one :D |
16:12:06 | FromGitter | <krux02> well it doesn't really matter. other proces also can't be generated on the VM and when you never do that, there is no problem at all. |
16:13:28 | FromGitter | <krux02> there is only the {.compileTime.} pragma for procs. maybe the other thing {.runtime.} would be nice, too. |
16:14:06 | Araq | why? if it's not .compileTime, it's .runtime |
16:14:18 | Araq | so ... I made the test |
16:14:24 | Araq | https://nim-lang.org/docs/theindex.html |
16:14:30 | Araq | search for "password" |
16:14:47 | * | kunev quit (Ping timeout: 245 seconds) |
16:14:52 | FromGitter | <krux02> well no, what I mean is, compileTime prevents C code generation. What I mean is preventing VM code generation |
16:14:55 | Araq | 7-9th hits |
16:15:16 | Araq | we all failed to use the index :-( |
16:16:02 | FromGitter | <Vindaar> Well, at least @dom96 wasn't aware about it either anymore :D |
16:16:09 | Araq | though terminal.nim should reference rdstdin.nim |
16:16:27 | Araq | and arguably these modules could be merged but meh |
16:16:41 | * | kunev joined #nim |
16:19:57 | * | xkapastel joined #nim |
16:20:58 | FromGitter | <Vindaar> But merging them would mean termios would become impure, no? I guess that's why they're separate in the first place? |
16:21:01 | * | solitudesf joined #nim |
16:22:12 | FromGitter | <krux02> Araq: when I call `str.setLen(newLen)` is then str[newLen] always set to 0 ? |
16:23:08 | FromGitter | <krux02> ok it is, never mind |
16:24:36 | * | Trustable joined #nim |
16:25:48 | FromGitter | <k0pernicus> @dom96 I recompiled Nim from scratch, the `-d: ssl` option was ok, but I still have troubles with `nimble refresh`... |
16:27:42 | * | r3d9u11 quit (Remote host closed the connection) |
16:28:01 | Araq | vindaar: maybe but terminal.nim does not depend on any DLLs (except the ones from the OS), so it is quite "pure" |
16:28:14 | Araq | it's mostly a historical split |
16:28:23 | * | Jesin quit (Quit: Leaving) |
16:29:00 | * | SenasOzys quit (Ping timeout: 256 seconds) |
16:32:48 | Trustable | Hi Araq, I'm waiting for your feedback on this PR: https://github.com/nim-lang/Nim/pull/7220 |
16:33:24 | FromGitter | <Vindaar> I was referring to rstdin.nim, since that imports the wrapper of linenoise |
16:34:08 | Araq | Vindaar: er ok, but then the password thing should really move to terminal.nim |
16:34:13 | Araq | as it's unrelated |
16:34:30 | Araq | in fact, it should actively avoid the history feature |
16:34:48 | * | PMunch quit (Quit: Leaving) |
16:34:58 | Araq | Trustable, ah, too bad github doesn't tell me about updated PRs |
16:35:08 | FromGitter | <Vindaar> Yeah, I agree, especially because the only part that's actually using linenoise at all are the two normal unix readLineFromStdin procs. Everything else (including the password prompts) are, as you say, unrelated |
16:35:55 | Araq | move them and add this change to changelog.md |
16:36:03 | Araq | I doubt this needs a deprecation period |
16:36:13 | Araq | not hard to adapt the imports, is it? |
16:37:20 | FromGitter | <Vindaar> indeed |
16:37:33 | FromGitter | <krux02> Araq: how do I solve the nimscipt bug? |
16:37:58 | FromGitter | <krux02> writeFloatToBuffer also needs to work in nimvm |
16:38:10 | Araq | krux02: I am not sure :-) |
16:38:15 | FromGitter | <krux02> or nimscipt |
16:38:20 | FromGitter | <krux02> I have an idea |
16:38:33 | Araq | well it used to work and your refactoring broke it :P |
16:38:45 | * | SenasOzys joined #nim |
16:38:52 | Araq | (which is btw bugfixes shouldn't be concerned with refactorings) |
16:40:50 | * | koranza joined #nim |
16:40:52 | Araq | git pull origin devel |
16:40:52 | Araq | FATAL ERROR: Couldn't agree a key exchange algorithm (available: [email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521) |
16:40:52 | Araq | fatal: Could not read from remote repository. |
16:40:55 | Araq | huh? |
16:42:10 | Araq | do I need to update my git? |
16:42:55 | * | floppydh joined #nim |
16:43:08 | FromGitter | <krux02> Araq: But in this case the bug came, because it was (and still is) very unstructured. I just unufied the formating to fix the bug. |
16:47:25 | FromGitter | <krux02> if there a define for native code? |
16:47:34 | FromGitter | <krux02> eg when copymem is available? |
16:49:11 | Araq | when declared(copyMem) ? |
16:49:19 | Araq | but it's 'when nimvm' |
16:49:45 | FromGitter | <krux02> not really |
16:49:55 | FromGitter | <krux02> because javascript |
16:51:19 | Araq | git pull origin devel |
16:51:20 | Araq | FATAL ERROR: Couldn't agree a key exchange algorithm (available: [email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521) |
16:51:20 | Araq | fatal: Could not read from remote repository. |
16:51:24 | Araq | any ideas? |
16:51:31 | Araq | I'm on Windows, it used to work fine |
16:51:46 | Araq | update my git to 2.16.2, makes no difference |
16:51:53 | Araq | did github change things? |
16:51:58 | * | couven92 joined #nim |
16:52:04 | * | fvs joined #nim |
16:53:03 | FromGitter | <krux02> on this linux machine everything works fine |
16:53:14 | FromGitter | <krux02> git version 2.11.0 |
16:55:21 | Araq | updated my putty, no difference |
16:55:35 | FromGitter | <k0pernicus> Works well for me |
16:56:28 | FromGitter | <k0pernicus> macOS - 2.14.3 |
16:56:36 | Araq | https://github.com/gitextensions/gitextensions/issues/4509 probably this one |
16:58:45 | Araq | hmmm my git installation has /usr/bin/[.exe |
16:59:01 | Araq | amateurs can't write portable software and need an Unix emulator |
17:00:53 | FromGitter | <krux02> What is with this backwards index, why did it change? |
17:01:11 | FromGitter | <Bennyelg> guys, how do i parse string to date :] |
17:01:28 | FromGitter | <krux02> depends on the date format |
17:01:43 | Araq | krux02: it is a bugfix |
17:02:01 | FromGitter | <Bennyelg> YYYY-MM-DD |
17:02:03 | FromGitter | <Vindaar> https://nim-lang.org/docs/times.html#parse,string,string ⏎ should be what you want |
17:02:48 | FromGitter | <krux02> Araq: for what bug? |
17:03:09 | FromGitter | <Bennyelg> @Vindaar thanks |
17:03:29 | FromGitter | <Vindaar> be careful about whether to use capital or non capital letters ;) |
17:03:43 | FromGitter | <Bennyelg> Ya, just check the docs :D |
17:04:06 | FromGitter | <Vindaar> 👍 |
17:04:35 | FromGitter | <krux02> because now the documentation for ``template `^` `` is wrong |
17:05:01 | Araq | oh... well fix it |
17:05:23 | FromGitter | <krux02> But really what's the bug that was fixed? |
17:06:23 | FromGitter | <krux02> because in the past I could simpley overload `[]` and `len` and I had perfect backward index support. Now that is not true anymore. I see that as a regression. |
17:07:25 | * | jjido joined #nim |
17:07:40 | Araq | some variant of https://github.com/nim-lang/Nim/issues/6974 |
17:08:13 | Araq | yes, I'm sorry but implementing ^ in the compiler as a magic that can go up in the AST was a tremendous hack |
17:08:28 | Araq | and so a pure library implementation was done instead |
17:08:37 | planetis[m] | this one https://github.com/nim-lang/Nim/issues/6292 |
17:09:00 | FromGitter | <krux02> ok |
17:09:17 | Araq | planetis[m], thank you, that one was it |
17:12:07 | Araq | error: cannot spawn C:\Program Files (x86)\PuTTY\plink.exe: No such file or directory |
17:12:07 | Araq | fatal: unable to fork |
17:12:36 | Araq | yes, you are unable to "fork", you are on Windows. amateurs. |
17:13:16 | FromGitter | <Bennyelg> lol |
17:13:22 | FromGitter | <Bennyelg> Delete Windows. |
17:13:25 | FromGitter | <Bennyelg> rm -rf / |
17:13:26 | Araq | Git on Windows, when you miss the Linux experience. |
17:13:53 | Araq | a clusterfuck of dependencies and wrong assumptions |
17:13:53 | * | koranza quit (Remote host closed the connection) |
17:15:01 | Araq | now new! ships with Perl 5. |
17:15:09 | Araq | and GDB ships with Python. |
17:15:44 | Araq | because we love scripting languages and don't understand type systems. |
17:15:57 | FromGitter | <Varriount> :( |
17:16:57 | Araq | GNU -- helping you to pretend it's 1970 again. |
17:17:59 | FromGitter | <k0pernicus> Araq > you switched from GNU/Linux distro to Windows ? |
17:18:33 | FromGitter | <krux02> he still supports windows for Nim |
17:18:51 | FromGitter | <krux02> I think Araq has everything, Window Linux and Appletosh |
17:19:02 | Araq | that used to be true |
17:19:15 | Araq | now I lack Linux because it wouldn't boot in my VM anymore |
17:19:15 | FromGitter | <krux02> not anymore? |
17:19:22 | FromGitter | <krux02> what do you use mostly? |
17:20:22 | Araq | it's quite even |
17:21:08 | Araq | Windows when I need fast turn-around times, OSX when I program in bed or elsewhere |
17:21:31 | * | floppydh quit (Quit: WeeChat 2.0.1) |
17:21:52 | FromGitter | <Vindaar> @Araq: should I give the readPasswordFromStdin a sensible default (like "Password: ") while I'm at it? |
17:21:58 | FromGitter | <krux02> so your desktop is Windows and your Laptop is Apple |
17:22:07 | Araq | krux02: yes |
17:22:35 | Araq | Vindaar: if it can work out with the parameter's position |
17:22:44 | FromGitter | <krux02> I once had dual boot on both desktop and laptop: horrible to keep everything updated |
17:22:44 | Araq | but meh |
17:22:49 | Araq | seems bad for i18n |
17:22:51 | Araq | bbl |
17:24:22 | FromGitter | <krux02> @Vindaar: yes, but I would write password lower case |
17:24:38 | FromGitter | <Vindaar> fine with me |
17:25:02 | FromGitter | <k0pernicus> Nobody has this weird stuff about `OpenSSL` using `nimble` on macOS? |
17:25:43 | FromGitter | <k0pernicus> I'm really pulling my hair out of it… -_- |
17:26:19 | * | koranza joined #nim |
17:26:58 | koranza | i'm having weird stuff with OpenSSL and Choosenim on (manjaro) linux, if that helps? |
17:27:40 | FromGitter | <k0pernicus> Koranza > `alert handshake failure` right ? |
17:28:53 | koranza | For me it's something different. "Error: unhandled exception: error:140E0197:SSL routines:SSL_shutdown:shutdown while in init [SslError]" |
17:29:16 | Calinou | is there a Nim library to handle truecolor ANSI terminal codes? |
17:29:40 | Calinou | (like https://github.com/ogham/rust-ansi-term) |
17:29:48 | koranza | that happens after I run "choosenim update devel", after the program prints "Downloading Nim devel from GitHub" |
17:29:53 | Yardanico | Calinou, terminal? :) |
17:30:36 | Calinou | Yardanico: what do you mean? I'm not seeing any Nimble package called `terminal` |
17:30:36 | Yardanico | not joking at all |
17:30:41 | Yardanico | Calinou, https://github.com/nim-lang/Nim/commit/7ce38122e8d0a3ce97e2720acaef8ebce2ef90ca#diff-ce51b27013ff02147c2d9740d61704b8 |
17:30:47 | Yardanico | it's in stdlib |
17:30:55 | Calinou | ah, it's built-in now |
17:30:56 | Calinou | nice! |
17:31:06 | Calinou | does it fall back to 16 colors on Windows? |
17:31:07 | FromGitter | <k0pernicus> koranza > Never had this… :-/ |
17:31:34 | Yardanico | koranza, I didn't have errors like that |
17:31:52 | Yardanico | currently on arch, but there were not errors like that on manjaro/antergos :) |
17:32:34 | FromGitter | <k0pernicus> Yardanico > You did not set env var for nimble? |
17:32:34 | koranza | if I run "choosenim stable" then "choosenim update stable" it works as expected, just not with devel.. |
17:32:40 | FromGitter | <ZarsBranchkin> Just got myself an e-reader, obviously one of first things I'll do is try and run application written in Nim on it! |
17:32:57 | Yardanico | k0pernicus: what env var? |
17:33:27 | FromGitter | <k0pernicus> I don’t know - @dom96 mentioned an env var for OpenSSL for Nimble previously... |
17:33:28 | Yardanico | ZarsBranchkin: probably you should firstly try to run linux on it, and if it works you can easily run nim apps :) |
17:33:30 | FromGitter | <Vindaar> @Calinou I'm looking at the code right now (for other reasons). It definitely checks whether true colors are supported or not. So I guess yes? |
17:33:39 | FromGitter | <k0pernicus> I checked the manual - nothing about an env var… :-/ |
17:33:45 | FromGitter | <ZarsBranchkin> It does already run linux and there seems to be neat SDK |
17:33:58 | dom96 | k0pernicus: DYLD_LIBRARY_PATH=/usr/local/opt/openssl/lib |
17:34:03 | FromGitter | <ZarsBranchkin> Before buying it, I had to research if I can write custom apps for it, heh |
17:34:09 | dom96 | That's what I had to set for homebrew's openssl to be used |
17:34:57 | Yardanico | ZarsBranchkin: great! |
17:34:57 | dom96 | koranza: what's your openssl version? |
17:35:07 | dom96 | So much openssl issues... this is why I hate dependencies :( |
17:35:23 | Calinou | @Vindaar it should be possible to manually fallback colors on Windows anyway |
17:35:27 | FromGitter | <ZarsBranchkin> Also has WiFi, so definitely will be fun and maybe even possible to create something practical |
17:35:29 | FromGitter | <k0pernicus> :-O |
17:35:31 | FromGitter | <k0pernicus> It works! |
17:35:35 | FromGitter | <k0pernicus> Thanks @dom96 |
17:35:39 | koranza | "openssl version" returns "OpenSSl 1.1.0g 2 Nov 2017" |
17:35:46 | Calinou | dom96: I just installed choosenim here and am also running into a probable OpenSSL error on Fedora 27 |
17:35:55 | FromGitter | <k0pernicus> But WTF is this env var… Never heard about it before |
17:36:13 | dom96 | k0pernicus: it's the DLL search path on macOS |
17:36:15 | FromGitter | <Vindaar> @Calinou: there's definitely a disableTrueColors proc |
17:36:17 | Calinou | i.e. https://paste.ee/p/zhsMv |
17:37:27 | FromGitter | <k0pernicus> @dom96 Can I add the solution on the Nimble README? Maybe it can help some people... |
17:37:43 | Yardanico | let me try choosenim too |
17:37:43 | FromGitter | <k0pernicus> Add a new troubleshooting section, something like that? |
17:37:46 | dom96 | k0pernicus: yeah, please do, there is a troubleshooting section in there for these things |
17:37:56 | FromGitter | <k0pernicus> Ok, no problem |
17:38:02 | FromGitter | <k0pernicus> Thanks again! |
17:38:46 | dom96 | koranza: weird, you might have to investigate that yourself. Easiest way to reproduce is to use the Nim httpclient module to request https://github.com/nim-lang/Nim/archive/devel.zip |
17:39:25 | dom96 | If you have some time and are not afraid of diving into stdlib source code then it would be much appreciated :) |
17:41:59 | Yardanico | LOL |
17:42:07 | Yardanico | I have the same error with choosenim :) |
17:42:14 | Yardanico | probably related to openssl 1.1 then |
17:46:15 | * | jjido quit (Read error: Connection reset by peer) |
17:46:23 | dom96 | Too new lol |
17:48:14 | FromGitter | <krux02> Araq: what is this template `^^` for in system? |
17:48:45 | dom96 | Yardanico: koranza: can either of your verify whether it still happens with `devel` Nim (using httpclient as I described above)? |
17:49:52 | * | jjido joined #nim |
17:51:38 | * | breakfast1 joined #nim |
17:52:51 | dom96 | *of you |
17:53:13 | Yardanico | dom96, compile choosenim with nim devel? |
17:53:17 | dom96 | no |
17:53:26 | dom96 | Use the httpclient module to request the URL I sent above |
17:55:33 | FromGitter | <Vindaar> @Araq, @dom96 : should the unsetControlCHook from the previous PR still be added? Seems weird if there's no way to revert a Ctrl-C hook |
17:56:05 | Yardanico | dom96, seems to work for me - downloadFile proc works fine on this URL |
17:56:26 | koranza | I didn't see any errors in my test program, which tested 2 overloads of downloadFile |
17:56:33 | Yardanico | and it uses SSL (because it fails at runtime without -d:ssl) |
17:57:02 | dom96 | okay, so that suggests that this issue has been fixed in 'devel' |
17:57:06 | dom96 | probably thanks to federico3's PRs |
17:57:19 | dom96 | so I'll just need to release a new version of choosenim |
17:57:49 | koranza | is there a way to force choosenim to use the stable branch for updating the devel? |
17:59:15 | koranza | because "choosenim update stable" works.. seems to suggest that "update devel" uses devel to update itself |
17:59:48 | * | r3d9u11 joined #nim |
18:00:46 | Calinou | I wonder if mbedTLS could be used in Nim instead of OpenSSL |
18:00:48 | Calinou | (or LibreSSL) |
18:00:59 | Calinou | Godot recently switched to mbedTLS in its development branch, so OpenSSL is no more there |
18:01:29 | * | sendell quit (Remote host closed the connection) |
18:02:34 | Yardanico | hmm, and their license is not too bad - apache 2 :) |
18:03:21 | * | breakfast1 left #nim ("Au revoir") |
18:05:57 | * | d10n-work joined #nim |
18:12:04 | dom96 | koranza: 'update devel' re-downloads devel and rebootstraps |
18:12:09 | dom96 | at least right now, for simplicity |
18:19:12 | * | donotturnoff joined #nim |
18:20:32 | dom96 | My plan is to adopt BearSSL eventually |
18:26:37 | * | Mat4 joined #nim |
18:30:00 | * | Mat4 quit (Read error: Connection reset by peer) |
18:33:34 | * | SenasOzys quit (Ping timeout: 260 seconds) |
18:58:35 | planetis[m] | is it more effiecient to use 'data: seq[tuple[key: A; val: B]]' or two seperate seqs in an object? |
19:01:59 | planetis[m] | i guess it depends... |
19:04:59 | FromGitter | <mratsim> @krux02 `^^` is a template for backwardsIndex compatibility I use it there: https://github.com/mratsim/Arraymancer/blob/a9622052cd1132ef3a035419ab9d6f8f2664eef8/src/tensor/backend/metadataArray.nim#L72-L84 |
19:05:17 | FromGitter | <mratsim> oh there is even the commit reference that introduces it |
19:05:51 | * | geocar joined #nim |
19:06:15 | FromGitter | <mratsim> @planetis[m] use a Table or a TableRef? |
19:06:37 | FromGitter | <krux02> doesn't really matter |
19:06:48 | FromGitter | <krux02> I normally use Table, because I don't like ref types |
19:07:22 | FromGitter | <krux02> tables are value types |
19:07:54 | * | yglukhov quit (Remote host closed the connection) |
19:08:33 | FromGitter | <krux02> @mratsim what do you think about this PR: https://github.com/nim-lang/Nim/pull/7265 |
19:09:03 | FromGitter | <mratsim> The name is wordy: fix for Regression that the introduction of BackwardsIndex introduced ;) |
19:09:34 | FromGitter | <krux02> I could have taken the long way and create an issue first. |
19:12:31 | FromGitter | <mratsim> seems much cleaner |
19:13:02 | FromGitter | <mratsim> how do you check that s has a len proc? |
19:13:11 | FromGitter | <krux02> I don't |
19:13:24 | FromGitter | <mratsim> proc or field* |
19:13:25 | FromGitter | <krux02> I just do it. and when it doesn't it's a compile error |
19:14:05 | FromGitter | <mratsim> I guess we really need a Iterable or FiniteContainer concept |
19:14:08 | planetis[m] | I actually meant smth different |
19:14:42 | FromGitter | <krux02> thes is the error I get when len is not ther: ⏎ ⏎ `````` [https://gitter.im/nim-lang/Nim?at=5a945ca28f1c77ef3a5ac4fc] |
19:14:43 | * | SenasOzys joined #nim |
19:15:21 | planetis[m] | https://gist.github.com/konqoro/baa61e8796d218de4e692b30915d13d0 if its better to have keylist valuelist hashlist or how module tables does it: https://github.com/nim-lang/Nim/blob/devel/lib/pure/collections/tables.nim#L110 |
19:15:26 | FromGitter | <mratsim> I already predict a complaint about obscure error message ;) |
19:18:40 | FromGitter | <mratsim> @planetis[m] If you want the fastest hash tables/dictionary implementations check the libraries that are in this benchmark: http://www.tommyds.it/doc/benchmark |
19:18:45 | FromGitter | <krux02> I can actually suport a custom error message |
19:18:51 | FromGitter | <krux02> ok I have to leave |
19:19:23 | FromGitter | <mratsim> Facebook rocksdb is also very efficient memory and speedwise: https://github.com/status-im/nim-rocksdb |
19:20:01 | Araq | <Vindaar> @Araq, @dom96 : "should the unsetControlCHook from the previous PR still be added?" yeah, that one was nice |
19:20:27 | planetis[m] | thanks but was just experimenting |
19:21:22 | Araq | mratsim: rocksdb doesn't work on Windows, right? |
19:22:02 | FromGitter | <mratsim> @Araq, it does: https://github.com/facebook/rocksdb/wiki/Building-on-Windows |
19:24:21 | * | yglukhov joined #nim |
19:26:08 | Araq | ok. what made you pick it? |
19:28:24 | Araq | yay, https://github.com/nim-lang/Nim/pull/7263 :-) |
19:28:32 | Araq | that is a nice fix |
19:28:53 | FromGitter | <Vindaar> @Araq: ok! |
19:29:17 | * | gangstacat quit (Quit: Ĝis!) |
19:31:57 | * | PMunch joined #nim |
19:32:26 | Zevv | Hi, compling my code with latest develop I get |
19:32:27 | Zevv | Error: invalid control flow: 'yield' within a constructor |
19:32:47 | Zevv | http://paste.debian.net/1012117/ snippet |
19:33:06 | Zevv | The error is on the 'await r.body' line |
19:33:32 | Zevv | What does this mean? |
19:35:31 | Araq | Zevv, use something like 'let b = await r.body' |
19:35:57 | Araq | this error is new and tells you Nim's codegen never really supported 'yield' in this context |
19:36:08 | Araq | that it often worked before was mostly luck :-) |
19:36:21 | Zevv | Ok, that works |
19:36:41 | * | gangstacat joined #nim |
19:36:41 | Zevv | but why is it different when first assigning to a immutable variable instead of using inside an expression? |
19:39:09 | Araq | as I said, it's a current codegen limitation |
19:39:14 | Zevv | ah ok |
19:39:18 | Zevv | thanks again |
19:39:24 | Araq | it always existed but previously we didn't detect it |
19:40:51 | Zevv | Ah, that's gread. I've been scrating my head a few hours why every now and then one of my few hunderd (reused) AsyncHttpClients would fail without a good reason |
19:41:02 | Zevv | I just upgraded to develop to see if the bug would go away |
19:41:10 | Zevv | I now fixed the yield, and the bug is gone on 0.17.2 as well |
19:42:07 | Zevv | oh, dang, it's not. I just took a minute or three to trigger :) |
19:42:20 | Zevv | well, develop fixes my problems, so I'm happy |
19:46:58 | FromGitter | <zetashift> I thought Nim had the almost all of the compilation targets as C? : https://lobste.rs/s/g42xtu/history_spirit_c#c_hqqwqy |
19:49:45 | Araq | Zevv, yeah we fixed a couple of critical bugs :-) |
19:51:06 | Araq | zetashift: not sure what he means, but he wrote it on the internet so it must be true |
19:52:46 | FromGitter | <zetashift> wise words |
19:54:08 | Araq | I used Nim on a Hitachi H8 fwiw which might not be produced anymore |
19:54:24 | Araq | because it compiles to C. |
19:55:06 | livcd | I would really hate to have to wait for any rust project to compile |
19:56:27 | Araq | so ... I repaired my git |
19:56:45 | Araq | what are the failing tests? |
19:59:34 | FromGitter | <zetashift> @livecd they are working on shortening compile times, incremental build was just added last release |
19:59:57 | Araq | so are we btw |
20:00:01 | FromGitter | <zetashift> not sure if they could ever get shorter than Nim seeing how they have different way of handling types |
20:00:04 | Araq | the feature is called "symbol files" |
20:00:06 | FromGitter | <zetashift> what Nim is already short how |
20:00:07 | * | PMunch quit (Quit: leaving) |
20:00:19 | FromGitter | <zetashift> man that turns me on |
20:01:14 | Araq | me too, the compile-times concern me |
20:02:28 | livcd | Well I like short but don't care for "shorter" |
20:02:34 | livcd | in case of Nim/Go |
20:03:03 | Araq | btw are you filwit's brother, zetashift? |
20:03:28 | Araq | probably misremember some nicknames here lol |
20:03:29 | FromGitter | <zetashift> I am not. |
20:03:40 | Yardanico | Araq, are symbol files v2 usable yet? |
20:03:42 | FromGitter | <zetashift> Never heard of him, sorry |
20:03:48 | Araq | no worries |
20:04:06 | Araq | Yardanico, not at all, it's tougher than anticipated |
20:04:26 | Araq | but the theory behind it is sound, so eventually I'll make it work |
20:04:52 | livcd | zetashift: I thought compile times were really "bad". On par with C++ which meant 40minutes for larger projects. |
20:07:12 | FromGitter | <zetashift> @livecd with Rust? nooo unless you use a lot of macros; So compared to C++ you'll be fine; compared to Nim/Go/D it's really slow |
20:07:26 | livcd | zetashift: but then again I would not want to use Rust. I am getting lost in all those sigils used. |
20:08:41 | Yardanico | well, I started using nim only because it looks a lot like python (yes, that was the first impression). rust is like alien language for me |
20:09:11 | FromGitter | <zetashift> @livecd I had the same thing; but you'll get used to it real quick. If you come from Python it's hard to grok but I had some Scala going on for me that really helped |
20:10:14 | Araq | Rust is what happens when you optimize lots of good ideas for the fear mongering hacker news crowd where the guy with the most concerns wins the "fight" |
20:12:13 | * | Amun_Ra quit (Ping timeout: 240 seconds) |
20:12:17 | livcd | zetashift: still feels like too much friction for me I'll stick to simpler things :F. Besides I also care about the ecosystem not just the language itself. |
20:12:35 | * | natrys quit (Ping timeout: 240 seconds) |
20:12:41 | FromGitter | <zetashift> I think Nim and Rust don't really have to compete |
20:12:41 | Araq | livcd, then what are you doing here? :-) |
20:12:55 | FromGitter | <zetashift> I'm more mad about Go getting more popular than Nim :( |
20:13:15 | Araq | that ship sailed long ago and it's not coming back |
20:13:26 | livcd | Araq: I bought dom96's book |
20:13:37 | Araq | but we can still make Nim more popular :-) |
20:13:54 | Araq | popular enough that you don't miss much if anything. |
20:14:12 | Araq | that is my goal. |
20:14:52 | planetis[m] | so whats the plan? |
20:15:08 | FromGitter | <zetashift> I would like that too; Nim is the first lang which I could read without going through the docs because it's that clean |
20:15:37 | Yardanico | we can close https://github.com/nim-lang/Nim/issues/4796 , right ? |
20:15:37 | * | Amun_Ra joined #nim |
20:15:46 | Araq | planetis[m], the upcoming release fixes warts, improves stability and has improved error messages |
20:15:54 | Yardanico | @data-man is going through old issues it seems :) |
20:15:55 | planetis[m] | +1 |
20:16:09 | planetis[m] | readability is a huge plus for me |
20:16:27 | Araq | so ... the concepts tests work for me hmmm |
20:16:34 | * | r3d9u11 quit (Remote host closed the connection) |
20:18:05 | planetis[m] | araq: nice can't wait for the official release |
20:18:23 | Yardanico | yeah, 0.18.0 got a whole lot of fixes |
20:20:22 | Yardanico | I think I'll go through some nimble packages to check if they compile with devel |
20:21:47 | * | rokups quit (Quit: Connection closed for inactivity) |
20:23:26 | Yardanico | oh, I know the easiest way :D - clone all packages from packages.json |
20:24:00 | planetis[m] | another way to promote nim is to port rosseta code tasks and wikibooks |
20:24:09 | Yardanico | there's quite a lot of rosetta tasks for nim |
20:24:23 | Yardanico | although a lot of them are outdated |
20:24:38 | planetis[m] | Yardanico: I don't see what can go wrong with that :p |
20:24:47 | Yardanico | planetis[m], code will not compile :) |
20:25:43 | planetis[m] | how many are they? |
20:26:44 | * | arecacea1 quit (Remote host closed the connection) |
20:26:46 | FromGitter | <tim-st> I sometimes get `Hint: 'Error: unhandled exception: Unknown IO Error [IOError]` on windows when compiling with devel build and the next time I try it always works |
20:27:07 | * | arecacea1 joined #nim |
20:27:16 | Yardanico | yeah, it's a strange issue with vscode |
20:27:19 | Yardanico | only on windows |
20:27:32 | Yardanico | and it regressed in vscode probably |
20:27:40 | FromGitter | <tim-st> ok, thanks! |
20:31:41 | dom96 | A wikibook would be brilliant! :) |
20:32:00 | Yardanico | ok, started cloning nimble packages (but I'll probably start looking at them tomorrow) |
20:32:02 | FromGitter | <mratsim> @Araq Current Ethereum clients use LevelDB and RocksDB is a refinement over LevelDB. Also mobile is one of the main target. |
20:34:14 | Yardanico | dom96, oh, I didn't knew that nimble supports name aliases |
20:35:09 | planetis[m] | dom96: I was talking about that one: https://en.wikibooks.org/wiki/Algorithm_Implementation found it accidentally but I have port some to nim. |
20:35:16 | planetis[m] | *ported |
20:35:34 | dom96 | there are wikibooks on D and Ada IIRC |
20:35:50 | dom96 | Would be an awesome effort if somebody created one for Nim |
20:35:56 | planetis[m] | like tutorials? |
20:41:26 | FromGitter | <mratsim> I think Rust is fine for Mozilla goals actually (having a stronghold-like browser) |
20:42:08 | FromGitter | <mratsim> Regarding it’s compilation time, it may be an LLVM issue as Crystal is also slow to compile |
20:42:22 | Araq | clang uses LLVM and is fast |
20:42:48 | Araq | though we tend to run it in parallel :-) |
20:43:38 | Araq | semantic checking is not trivial for modern languages and can explain the speed differences too. |
20:44:03 | FromGitter | <mratsim> I’m proud to announce the first Ethereum miner in Nim (don’t use it): https://github.com/status-im/nim-ethash/commit/e3ebf7b0e531bb17d61692c2b26ff228d0be1b4d#diff-416f050affdbb262b43ec126b5d7f3d8 |
20:44:14 | Yardanico | mratsim: wow, cool! |
20:44:14 | dom96 | mratsim: :D |
20:44:23 | dom96 | How many giga hashes/s? :) |
20:44:40 | Yardanico | probably mratsim will reuse some code from arraymancer :P |
20:44:44 | FromGitter | <mratsim> dunno it’s just a port of this spec: https://github.com/ethereum/wiki/wiki/Ethash/ef6b93f9596746a088ea95d01ca2778be43ae68f#mining |
20:45:16 | FromGitter | <mratsim> actually in the very near future Ethereum will not use mining anymore |
20:45:38 | Yardanico | proof-of-stake only? |
20:45:48 | planetis[m] | i though they will switch to proof of stake |
20:45:51 | planetis[m] | because the environment |
20:46:03 | FromGitter | <mratsim> yes, but apparently implementation is still not finished so we are in a somewhat strange transition |
20:46:45 | Araq | if modulo == 0.u256: |
20:46:45 | Araq | + result = half_max div (b shr 1) |
20:46:45 | Araq | + else: |
20:46:45 | Araq | + result = high_uint256 div b |
20:46:49 | Araq | rewrite this as |
20:46:54 | Araq | result = if ... else: ... |
20:46:59 | Yardanico | :) |
20:47:16 | Araq | and the codegen should optimize out the initialization |
20:47:24 | Araq | so you don't need the .noInit |
20:47:57 | Araq | but maybe I misremember my optimizer :P |
20:48:16 | Araq | well, I can't call it an "optimizer", it's stupid |
20:50:33 | FromGitter | <mratsim> you need it iirc, UInt256 is an array |
20:51:21 | FromGitter | <mratsim> the change to result = if … else … might help to get conditional moves instead of jumps in assembly |
20:52:19 | FromGitter | <mratsim> but it’s not guaranteed :/ (it’s quite useful for crypto to prevent timing attacks) |
20:53:09 | FromGitter | <mratsim> So now zah wants a GPU miner: https://github.com/status-im/nim-ethash/issues/1 |
20:53:26 | Yardanico | that's why I mentioned arraymancer ;) |
20:53:59 | FromGitter | <mratsim> won’t work, there is no matrices, tensors, or multidimensional stuff ;) |
20:54:25 | * | Amun_Ra quit (Ping timeout: 248 seconds) |
20:54:33 | Yardanico | so almost all nimble packages take ~750 mb of space (but I cloned git repos with --depth 1) |
20:54:42 | * | solitudesf quit (Quit: solitudesf) |
20:55:17 | FromGitter | <mratsim> I’m sure some shipped binaries in nimble because they messed up their gitignore |
20:55:24 | Yardanico | of course |
20:55:31 | * | Amun_Ra joined #nim |
21:01:15 | * | yglukhov quit (Remote host closed the connection) |
21:05:26 | * | yglukhov joined #nim |
21:06:34 | * | fvs left #nim ("ERC (IRC client for Emacs 25.3.1)") |
21:09:47 | * | yglukhov quit (Ping timeout: 245 seconds) |
21:24:01 | * | yglukhov joined #nim |
21:28:55 | * | beatmox quit (Remote host closed the connection) |
21:29:26 | * | beatmox joined #nim |
21:31:56 | * | endragor joined #nim |
21:32:19 | * | koranza_ joined #nim |
21:35:44 | * | koranza quit (Ping timeout: 268 seconds) |
21:36:15 | * | endragor quit (Ping timeout: 256 seconds) |
21:37:05 | * | Vladar quit (Quit: Leaving) |
21:44:27 | * | donotturnoff quit (Ping timeout: 240 seconds) |
21:48:43 | FromGitter | <data-man> @Yardanico: I have an idea: announce TDOTAOAI (The Day Of The Attack On An Issues) :-D |
21:54:43 | * | Trustable quit (Remote host closed the connection) |
22:00:34 | FromGitter | <Vindaar> read password proc moved: https://github.com/nim-lang/Nim/pull/7266 |
22:03:56 | * | couven92 quit (Ping timeout: 245 seconds) |
22:10:53 | * | koranza_ quit (Ping timeout: 268 seconds) |
22:13:05 | * | yglukhov quit (Remote host closed the connection) |
22:17:05 | * | jjido quit (Ping timeout: 240 seconds) |
22:19:58 | * | nsf quit (Quit: WeeChat 2.0.1) |
22:30:22 | * | koranza joined #nim |
22:35:12 | * | couven92 joined #nim |
22:55:34 | * | geocar quit (Quit: Connection closed for inactivity) |
23:23:19 | * | athenot quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
23:29:29 | * | couven92 quit (Quit: Client Disconnecting) |
23:42:36 | * | vlad1777d_ joined #nim |