00:10:00 | * | gdelazzari quit (Ping timeout: 276 seconds) |
00:10:27 | * | gdelazzari joined #nim |
00:10:34 | * | gdelazzari quit (Client Quit) |
00:32:34 | * | ftsf_ joined #nim |
00:51:27 | * | xet7 quit (Remote host closed the connection) |
00:58:00 | * | xet7 joined #nim |
01:02:54 | PMunch | ftsf, ftsf_ you there? |
01:03:14 | ftsf_ | good morning! |
01:03:51 | PMunch | Or good night :P |
01:03:55 | PMunch | It's 3AM here |
01:04:28 | PMunch | Just wanted to check in with you if you had tested my pool implementation :) |
01:04:29 | ftsf_ | just arrived at the office here |
01:04:35 | ftsf_ | i haven't had a chance to play with it yet |
01:04:41 | PMunch | Oh wow, timezones eh |
01:04:44 | ftsf_ | went to sleep just after you dropped it last night |
01:05:20 | PMunch | Haha, that was earlier today for me :P |
01:05:33 | PMunch | Didn't realize you were that far away |
01:05:40 | ftsf_ | Sydney, au =) |
01:05:48 | ftsf_ | pretty far from most places |
01:06:08 | PMunch | Nice, Tromsø Norway here. Pretty far from stuff as well :P |
01:06:20 | ftsf_ | indeed, poles apart |
01:07:20 | PMunch | pastebin.com/npv13Hpt |
01:07:27 | PMunch | Added some comments on how the functions work :) |
01:07:34 | PMunch | Thought that might be helpful |
01:11:15 | * | zodiak quit (Read error: Connection reset by peer) |
01:11:19 | * | zodiak_ joined #nim |
01:12:36 | * | ftsf_ quit (Ping timeout: 250 seconds) |
01:17:14 | * | der-landgraf quit (Quit: WeeChat 1.5) |
01:24:11 | * | ftsf_ joined #nim |
01:24:21 | * | der-landgraf joined #nim |
01:28:46 | * | chemist69 quit (Ping timeout: 272 seconds) |
01:30:34 | * | chemist69 joined #nim |
01:35:34 | * | ftsf_ quit (Ping timeout: 250 seconds) |
01:37:39 | * | desophos quit (Ping timeout: 246 seconds) |
01:38:51 | * | xet7_ quit (Read error: Connection reset by peer) |
01:39:13 | * | yglukhov joined #nim |
01:43:57 | * | yglukhov quit (Ping timeout: 260 seconds) |
01:47:13 | * | ftsf_ joined #nim |
01:49:55 | * | PMunch quit (Quit: leaving) |
02:02:28 | * | ephja quit (Ping timeout: 244 seconds) |
02:12:26 | * | xet7_ joined #nim |
02:27:01 | * | kingofoz joined #nim |
02:37:15 | * | shodan45 quit (Quit: Konversation terminated!) |
03:20:56 | * | desophos joined #nim |
03:22:48 | * | perturbation quit (Quit: Leaving) |
03:32:56 | * | ephja joined #nim |
03:40:54 | * | yglukhov joined #nim |
03:45:24 | * | yglukhov quit (Ping timeout: 246 seconds) |
03:46:12 | * | vktec quit (Ping timeout: 272 seconds) |
03:47:15 | * | vktec joined #nim |
03:59:26 | * | kssreeram joined #nim |
04:03:23 | * | Varriount quit (Disconnected by services) |
04:03:23 | * | Varriount_ joined #nim |
04:37:49 | * | kssreeram quit (Read error: Connection reset by peer) |
04:48:11 | * | kssreeram joined #nim |
05:11:55 | * | kssreeram quit (Read error: Connection reset by peer) |
05:31:00 | * | akamaus joined #nim |
05:37:11 | * | fredrik92 joined #nim |
05:38:42 | * | endragor joined #nim |
05:42:48 | * | yglukhov joined #nim |
05:48:15 | * | yglukhov quit (Ping timeout: 246 seconds) |
05:57:09 | * | s4 joined #nim |
06:05:25 | * | kssreeram joined #nim |
06:09:39 | * | ftsf_ quit (Remote host closed the connection) |
06:10:50 | * | ftsf_ joined #nim |
06:12:04 | * | fastrom joined #nim |
06:16:53 | * | endragor_ joined #nim |
06:20:30 | * | endragor quit (Ping timeout: 276 seconds) |
06:27:24 | * | kssreeram quit (Read error: Connection reset by peer) |
06:33:03 | * | endragor_ quit (Remote host closed the connection) |
06:33:32 | * | endragor joined #nim |
06:39:09 | * | Matthias247 joined #nim |
06:58:05 | * | irrequietus joined #nim |
07:03:28 | * | pafmaf joined #nim |
07:05:36 | * | yglukhov joined #nim |
07:05:51 | * | Matthias247 quit (Read error: Connection reset by peer) |
07:10:18 | * | Arrrr joined #nim |
07:10:18 | * | Arrrr quit (Changing host) |
07:10:18 | * | Arrrr joined #nim |
07:12:22 | * | yglukhov quit (Ping timeout: 260 seconds) |
07:29:37 | * | hendi__ joined #nim |
07:39:00 | * | Varriount joined #nim |
07:39:00 | * | GangstaCat joined #nim |
07:40:36 | * | Varriount_ quit (Ping timeout: 246 seconds) |
07:50:41 | * | kssreeram joined #nim |
07:51:28 | * | endragor quit (Remote host closed the connection) |
08:03:47 | * | fastrom quit (Quit: Leaving.) |
08:06:27 | * | irrequietus quit () |
08:10:24 | * | maus joined #nim |
08:12:40 | * | endragor joined #nim |
08:13:42 | * | kssreeram quit (Quit: My Mac has gone to sleep. ZZZzzz…) |
08:14:15 | * | akamaus quit (Ping timeout: 264 seconds) |
08:14:31 | * | maus quit (Ping timeout: 240 seconds) |
08:29:18 | * | yglukhov joined #nim |
08:29:57 | * | nd_ joined #nim |
08:33:27 | * | yglukhov quit (Ping timeout: 246 seconds) |
08:35:21 | * | ftsf_ quit (Quit: :q!) |
08:36:21 | * | fredrik92 quit (Ping timeout: 276 seconds) |
08:41:28 | * | fredrik92 joined #nim |
08:45:31 | * | fastrom joined #nim |
09:02:36 | * | gokr joined #nim |
09:21:24 | * | arnetheduck quit (Ping timeout: 250 seconds) |
09:27:54 | * | afrigginelf joined #nim |
09:58:31 | * | fredrik92 left #nim ("Leaving channel") |
09:58:34 | * | couven92 joined #nim |
09:59:02 | * | couven92 is now known as fredrik92 |
09:59:30 | * | yup joined #nim |
10:01:28 | * | yup quit (Client Quit) |
10:08:09 | * | Demon_Fox quit (Quit: Leaving) |
10:34:25 | * | irrequietus joined #nim |
10:43:17 | * | TheLemonMan joined #nim |
10:56:49 | * | yglukhov joined #nim |
11:41:27 | * | kssreeram joined #nim |
11:48:02 | * | kssreeram quit (Quit: My Mac has gone to sleep. ZZZzzz…) |
11:55:40 | * | kssreeram joined #nim |
12:12:33 | * | afrigginelf quit (Ping timeout: 250 seconds) |
12:16:05 | * | kssreeram quit (Quit: My Mac has gone to sleep. ZZZzzz…) |
12:21:17 | * | fastrom quit (Quit: Leaving.) |
12:31:59 | * | jeffc joined #nim |
12:43:36 | dom96 | https://salt.bountysource.com/teams/nim/updates/3-engaging-with-our-community |
12:48:15 | * | GangstaCat quit (Quit: Leaving) |
12:48:42 | jeffc | Hey Araq: I saw in https://github.com/nim-lang/Nim/issues/4437 something about replacing gc:none with gc:stack? Could you elaborate on that a bit? Are there plans to slim it down? Currently turning it on absolutely destroys the size of my firmware |
12:54:07 | * | afrigginelf joined #nim |
13:08:43 | Araq | jeffc: really? ouch. gc:stack shouldn't really produce much code |
13:09:48 | * | Salewski joined #nim |
13:15:43 | Salewski | Dom, the phrase "is a perfect way to learn Nim" may be a bit of a exaggeration. I would always recommend starting with the tutorial and other resources listed under "learning". I think that is even true for most languages. |
13:18:01 | Salewski | The last chapter was really interesting for me, because I have never done web development before. But that chapter is more about web and databases, not so much about Nim learning :-) |
13:19:53 | * | gdelazzari joined #nim |
13:22:56 | * | Salewski quit () |
13:26:33 | gdelazzari | jeffc: that happens also to me when using gc:stack. In the generated stdlib_system.c I have "typedef NF TY24004[4194304];" and as expected ld complains: "region `RAM' overflowed by 33539740 bytes" |
13:35:13 | * | s4 quit (Quit: Konversation terminated!) |
13:35:34 | * | desophos quit (Read error: Connection reset by peer) |
13:36:12 | Araq | gdelazzari: that only means that you didn't patch osalloc.nim line 154 |
13:39:29 | gdelazzari | Araq could you please explain how do I patch, modify, adapt, etc... all these files? Also, when you said that I need to adapt the core of Nim to my device, what do you mean? Do I have to change these files (what files exactly?) in the Nim compiler source and recompile a different Nim compiler for my platform? |
13:42:15 | Araq | you can copy the stdlib to your project dir, modify it and set --lib so that it's used instead |
13:42:33 | Araq | you can also create PRs against nim devel. |
13:42:52 | cheatfate | Araq, maybe we can get option for compiler to control this? |
13:43:06 | Araq | control what? |
13:43:17 | Araq | some devices have no OS, but plenty of RAM |
13:43:23 | Araq | other devices have no RAM. |
13:43:57 | cheatfate | and we can make control of 1024 |
13:44:00 | cheatfate | `1024` value |
13:44:13 | cheatfate | so people can adjust it without clones of stdlib |
13:44:31 | Araq | yeah, it that would be the only problem, we could read it from an env var |
13:44:44 | Araq | or introduce --define:foo=val |
13:45:17 | gdelazzari | What's exactly that huge value I see? Is that the 'Nim stack' size? |
13:45:43 | gdelazzari | I mean, stack/heap |
13:46:23 | Araq | some arbitrary heap size |
13:49:23 | * | BitPuffin joined #nim |
13:50:27 | gdelazzari | Ok now I see the osalloc line you pointed out, but I don't understand what's PageSize and where it comes from, 4194304/1024 = 4096 means I have a 4k PageSize..? What's that...? My microcontroller has just 16k of RAM so adjusting that would even be better to save memory |
13:55:07 | Araq | so give it a size of 1K |
13:55:07 | cheatfate | Araq, and i think PageSize must be tweaked too |
13:58:08 | gdelazzari | I also think that it would be better to have the possibilty to tweak these values :) I don't think that cloning the entire stdlib just to change a couple of values is the best thing... |
14:00:55 | jeffc | Araq: Thanks for pointing that out. I'll try to come up with a generic patch so that these values can be (optionally) adjusted at compile time via a flag. |
14:01:11 | jeffc | gdelazzari: Unless you're already on it ;) |
14:02:29 | cheatfate | `Error: object constructor needs an object type` for line `result = Selector[T]()` |
14:02:42 | cheatfate | wtf? |
14:03:27 | gdelazzari | jeffc no, sorry, I still don't have a complete understanding of what's going on in the Nim compiler :D I just discovered Nim a couple of months ago and I find it an amazing language, for now I'm just trying to use it on microcontrollers |
14:04:27 | gdelazzari | However can someone explain me what's exactly 'PageSize'? |
14:04:50 | jeffc | gdelazzari: You might be interested in this: https://github.com/Jeff-Ciesielski/narm |
14:05:27 | jeffc | still a work in progress, but it is a working example of nim running on a microcontroller with a coroutine based RTOS |
14:06:15 | jeffc | Trying to sort out these last issues so that the required core functionality can just be installed with nimble |
14:06:19 | gdelazzari | What ARM mcus are you using? Maybe STM32? |
14:06:33 | jeffc | STM32f072 is what that targets |
14:06:50 | ephja | "result = findFirstFileW(newWideCString(a), b)" this takes up quite a big chunk of the CPU time, but I wonder if the double allocation will make that much of a difference. I wonder how TreeSize calculates the sizes so fast |
14:07:02 | jeffc | I'm also using Infineon XMC4000 series for another project (but can't open source a lot of that) |
14:08:15 | gdelazzari | I'm using the exactly same microcontroller. Take a look here https://github.com/gdelazzari/STM32Tool, I'm thinking of integrating Nim support on my tool. I'll check out your work for sure |
14:11:48 | ephja | garbage collection seems to have been the bottleneck though. disabling it reduces the time taken from 600s to about 20s |
14:12:08 | dom96 | Salewski: I hope you read IRC logs. I honestly don't think it's an exaggeration, Nim in Action contains far more details about Nim than the official tutorial currently does. The book is designed to teach through examples, I'm sure Chapter 7 has taught you things you don't already know. |
14:12:09 | Araq | gdelazzari: just grep for PageSize, unless you use the real full Gc, it can be any value really |
14:14:17 | gdelazzari | So actually, with 1024 * PageSize Nim was allocating 1024 pages whenever needed, is that right? If I change PageSize and that 1024 value I can change the memory Nim allocates when out of heap? |
14:14:49 | ephja | It would still be nice to avoid the temporary nim string though. I'll have to investigate it |
14:15:00 | ephja | oh and GC_fullCollect doesn't like SIGINT |
14:15:31 | ephja | hm wait a second |
14:15:52 | * | Senketsu quit (Ping timeout: 260 seconds) |
14:18:43 | Araq | gdelazzari: no it uses a 4MB sized global variable as its heap |
14:18:59 | Araq | because 'malloc' might not be available. |
14:19:33 | gdelazzari | So there is no way to use malloc()? I mean, calling it when more heap is required |
14:19:57 | Araq | there is -d:useMalloc |
14:21:20 | * | Salewski joined #nim |
14:21:41 | gdelazzari | Does it work with --gc:stack? Because even with that I have that initial heap global variable |
14:23:19 | Araq | probably not |
14:23:23 | * | jefuss joined #nim |
14:24:42 | gdelazzari | So with what GC will that work? With gc:none Nim asks to implement newObj |
14:26:16 | jeffc | gdelazzari: If I may... why are you trying to use dynamically created objects in firmware? |
14:28:32 | gdelazzari | I never use dynamic allocation on fw, obviously (unless I have to allocate some memory at the very beginning and never touch malloc() and free() again). But because I'm trying to completely port Nim, I think I'll have to allow users to use dynamic allocation if they're crazy enough |
14:29:40 | gdelazzari | jeffc: Do you think I shouldn't directly give the ability to allocate memory? |
14:29:44 | jeffc | I wouldn't |
14:30:06 | jeffc | If someone wants to get clever and wrap their own slab allocator or something, more power to them |
14:30:26 | jeffc | but IMO the biggest feature of nim for use in firmware is the additional safety it brings to the table |
14:30:30 | jeffc | (compared to C) |
14:30:47 | jeffc | Building in allocator support sort of goes agains that IMO |
14:31:30 | Salewski | Dom: "Salewski: I hope you read IRC logs." From time to time.... Let me say it in other words: Your books teaches advanced topics and application examples. "perfect way to learn Nim" would indicate to me to START learning Nim with that book, what I can not really recommend. I would have used a phrase like "the book provides you with a deeper understanding of Nim based on many real word examples." |
14:32:37 | Salewski | s/word/world/ |
14:32:54 | gdelazzari | jeffc yes you're right, I didn't think about that. But what if someone wants to use an already made library that uses dynamic alloc. which is well written to be memory-safe and they can't? Is that legit? |
14:33:12 | * | Salewski quit () |
14:34:55 | ephja | so it takes about 10 minutes to collect 1.000.000 or so strings |
14:36:39 | ephja | the OS will have to deal with that :p |
14:39:29 | dom96 | Salewski: Why don't you stick around for a while so that I can reply to you? My book certainly doesn't teach advanced topics, it starts by explaining the basics and the level of difficulty rises a bit with each chapter. The book is meant to teach you Nim, it assumes you have no knowledge of Nim and it is my hope that people can learn Nim without any prior Nim knowledge using it. Why do you think that is not the case? |
14:39:43 | dom96 | *teach only advanced topics |
14:40:54 | jeffc | gdelazzari: I suppose it's a question of what you want to support and TBH it starts getting into "holy war/ religious argument" territory. IMO after initialization, it's never acceptable to use any sort of dynamic memory (and even then it's only to allow stack creation for an RTOS). BUT, in a world of arduinos and python on microcontrollers, if you're trying to attract ...casual users, it wouldn't be a bad selling point |
14:41:54 | jeffc | Every time I hear "dynamic memory" and "microcontroller", my mind immediately springs to Toyota's unintended acceleration bug, and I want to facepalm myself into a coma ;) |
14:58:05 | * | afrigginelf quit (Ping timeout: 250 seconds) |
14:59:26 | gdelazzari | jeffc: I totally agree with you. The fact is that for my project that, as you said, tries to attract 'arduino and python' people to move to ARMs, it would probably be better to allow them to do whatever they want, even if they're shooting on their own foots. But I think I'll change my mind. |
15:04:52 | * | cjh`_ quit (Ping timeout: 260 seconds) |
15:09:40 | * | ephja2 joined #nim |
15:09:40 | * | PMunch joined #nim |
15:09:42 | * | cjh` joined #nim |
15:09:45 | Araq | well we surely need to ensure that things are smooth out of the box and not that people wonder how/if they need to implement copyString or whatever. |
15:09:46 | * | ephja quit (Read error: Connection reset by peer) |
15:10:16 | * | ephja2 is now known as ephja |
15:14:22 | * | Salewski joined #nim |
15:14:53 | Salewski | Dom, I had to do some other work away from computer... |
15:17:46 | Salewski | Do you really think your book can replace the tutorials, the niminxminutes, Gorans and Denis blogs and all that what was already available before the book? And maybe also large parts of the manual? |
15:19:28 | Salewski | I can not really believe that, only 300 pages, with some extended real world examples, web, database, nimble and all that. |
15:20:01 | jeffc | Araq: Is there a typical way to pass in compile time constant that map to values (the equivalent of the -D flag in GCC)? -d seems to only accept a symbol, and I'm not sure putenv is what I'm looking for. |
15:20:34 | dom96 | Salewski: Of course not. It doesn't offer everything that does resources offer, but it does offer enough to give you the knowledge to use Nim. |
15:20:39 | dom96 | *that those |
15:22:17 | PMunch | Do you get an editor by the way when you're publishing this way? I've only read the first chapter but it seemed a bit rough around the edges |
15:22:19 | Salewski | OK, personally I would avoid the term "perfect". And maybe add links to the other learning resources also. |
15:23:09 | dom96 | Salewski: But why? The whole point is to advertise the book |
15:23:37 | dom96 | Salewski: Writing "The book is on sale, but you can also use the tutorial or any of these resources so who cares" would be silly. |
15:24:06 | dom96 | PMunch: Yep, I do. What seemed rough? |
15:24:56 | PMunch | Just a couple of sections that had some weird phrasings and such. And it seemed a bit repetitious at points. |
15:26:04 | PMunch | I'm typing this while on a boat with crappy WiFi so I can't really pull up the chapter and find the exact parts right now but I can drop you some notes later if you'd like |
15:26:16 | dom96 | PMunch: Yeah, that would be awesome :) |
15:27:38 | ephja | I would use a really long ethernet cable |
15:29:41 | PMunch | Well it's a ~3 hour ride on a pretty fast boat so it would need to be one hell of a cable :P |
15:32:46 | Arrrr | https://github.com/nim-lang/Nim/issues/4437#issuecomment-230106924 |
15:33:42 | Arrrr | What's the advantage of using that GC over just disabling any GC ? |
15:34:09 | Arrrr | I mean, what if i want to be alerted when i'm using traced references? |
15:39:44 | * | Salewski quit () |
15:42:01 | * | gdelazzari_ joined #nim |
15:42:52 | * | gdelazzari quit (Ping timeout: 250 seconds) |
15:50:11 | * | flyx quit (Quit: ZNC - http://znc.in) |
15:50:28 | * | flyx joined #nim |
16:00:37 | * | gdelazzari_ quit (Quit: Page closed) |
16:00:55 | * | gdelazzari joined #nim |
16:10:03 | * | yglukhov quit (Ping timeout: 240 seconds) |
16:24:38 | PMunch | Hmm, interesting |
16:25:23 | dom96 | What's interesting? |
16:25:27 | PMunch | I'm cross compiling Nim with SDL to run on PC and Android (along with iOS but as I don't havea device that code is untested) |
16:26:03 | PMunch | And SDL reports finger down events on my laptop touchscreen in pixels, but on device as ratios |
16:34:31 | PMunch | Well, boatride is over. Got to go |
16:34:33 | * | PMunch quit (Quit: leaving) |
16:40:55 | Araq | Arrrr: the advantage is that more code compiles. |
16:45:42 | Arrrr | Why ? |
16:47:05 | * | fredrik92 quit (Quit: Bye) |
16:51:42 | cheatfate | Araq, i'm also like the idea to have possibility to turn off GC |
16:54:11 | Araq | gc:stack is no GC. it's already "turning off" the GC. it replaces it with region based memory management. |
16:55:41 | cheatfate | And looks like this region of memory allocated inside of executable... |
16:55:58 | Araq | not necessarily. |
16:57:29 | * | irrequietus quit () |
16:57:31 | cheatfate | then compiler needs option for 0 size region |
16:58:38 | cheatfate | or maybe its better to have overloaded function which returns region of memory? |
16:59:15 | cheatfate | so for projects with less memory you can overload something like getMemory() |
16:59:30 | cheatfate | and allocated memory by yourself |
17:01:11 | * | endragor quit (Remote host closed the connection) |
17:10:46 | Araq | yeah well, we already give users the opportunity via panicoverride.nim |
17:11:12 | Araq | we should just expand this and add mmap |
17:17:05 | * | kunev joined #nim |
17:17:57 | * | yglukhov joined #nim |
17:19:37 | * | euantor joined #nim |
17:25:05 | * | yglukhov quit (Remote host closed the connection) |
17:27:06 | * | yglukhov joined #nim |
17:30:09 | cheatfate | Araq, my blue dream is to make 20kb executables with Nim :) |
17:30:21 | cheatfate | or better 3kb :) |
17:30:46 | Araq | 20kB works for me |
17:42:53 | * | yglukhov quit (Remote host closed the connection) |
17:44:13 | * | acidx joined #nim |
17:46:06 | * | yglukhov joined #nim |
17:46:21 | * | euantor quit (Remote host closed the connection) |
17:57:41 | jeffc | My firmware images (including an RTOS) are 16K in nim |
17:57:57 | jeffc | I think it's doable |
18:00:05 | * | jefuss quit (Ping timeout: 250 seconds) |
18:00:09 | gdelazzari | jeffc how did you solve "system module needs 'copyString'" on your project when even just concatenating two strings? |
18:00:16 | jeffc | I don't concat strings :) |
18:00:18 | gdelazzari | Did you reimplement the stdlib? |
18:00:31 | jeffc | I just wrapped memcpy and used cstrings |
18:00:36 | jeffc | if I absolutely had to |
18:00:50 | gdelazzari | How do you write to UART? |
18:01:23 | gdelazzari | Did you just wrap printf? |
18:01:26 | jeffc | yep |
18:01:34 | jeffc | I export a _write function from nim |
18:02:41 | gdelazzari | I understand we should go really barebone on an MCU, but don't you think that having Nim's 'echo' working is... necessary? |
18:03:02 | * | vendethiel joined #nim |
18:03:28 | jeffc | If you really feel the need to, but a wrapped printf worked quite well for me |
18:03:44 | Araq | 1. --gc:stack allows echo etc. |
18:04:03 | Araq | 2. panicoverride doesn't use 'echo', that should give you some hints. |
18:04:42 | Araq | what should 'echo' do anyway? the device might not have a screen. or printer or plotter, or file system. |
18:05:04 | jeffc | Araq: possible style / future plan issues aside, I think PR 4443 will resolve the gc:stack issue on low end targets |
18:05:17 | gdelazzari | Yes that's true, but usually you have a serial connection to the PC you're developing on |
18:05:35 | Araq | gdelazzari: yes, but we cannot make all these decisions for you. |
18:06:15 | jeffc | Agreed with Araq. If it's a known board config, making that assumption is OK, but what if I'm using JTAG to emulate a filestream? |
18:06:43 | jeffc | I think having a really well defined hook for stdio is a better solution |
18:07:00 | jeffc | (and with newlib nano, all you have to provide is _read/_write) |
18:07:08 | * | yglukhov quit (Remote host closed the connection) |
18:07:10 | gdelazzari | Yes I understand, I just asked jeffc about his solution for this 'echo' thing |
18:08:20 | gdelazzari | However I noticed that using gc:stack all is working as Araq pointed out, so I think I'll go with that approach (for now= |
18:09:01 | * | euantor joined #nim |
18:11:47 | * | euantor quit (Client Quit) |
18:13:11 | * | BitPuffin quit (Remote host closed the connection) |
18:15:20 | * | yglukhov joined #nim |
18:16:24 | * | Salewski joined #nim |
18:18:07 | Salewski | I have these two lines of code, looks a bit redundant, but I guess there is no shorter way to express this? |
18:18:11 | Salewski | var com, sk, sym, sig, path, lin, col, doc, percent: string |
18:18:34 | Salewski | (com, sk, sym, sig, path, lin, col, doc, percent) = line.split('\t') |
18:22:52 | Araq | there is let (com, sk, ...) = line.split(...) if only tuple deconstruction would work with 'seq' |
18:23:13 | Araq | there is a macro for this in nimble though. or you can write it yourself. macros rule. |
18:25:06 | Salewski | Thanks. (I have still to learn using macros...) |
18:26:54 | * | akamaus joined #nim |
18:28:27 | * | abruanese quit (Quit: ZNC 1.6.3+deb1 - http://znc.in) |
18:38:11 | * | elrood joined #nim |
18:39:32 | * | xet7 quit (Quit: Leaving) |
18:43:04 | * | xet7 joined #nim |
18:44:28 | * | arnetheduck joined #nim |
18:45:54 | * | RushPL quit (Quit: No Ping reply in 180 seconds.) |
18:47:28 | * | Matthias247 joined #nim |
18:48:19 | * | RushPL joined #nim |
18:51:47 | * | gdelazzari quit (Quit: Page closed) |
18:56:51 | * | Arrrr quit (Ping timeout: 264 seconds) |
19:01:38 | * | RushPL quit (Quit: No Ping reply in 210 seconds.) |
19:04:22 | * | Salewski quit () |
19:13:03 | * | hendi__ quit (Ping timeout: 264 seconds) |
19:14:18 | * | yglukhov quit (Remote host closed the connection) |
19:16:40 | * | yglukhov joined #nim |
19:23:17 | * | PMunch joined #nim |
19:25:09 | * | yglukhov quit (Remote host closed the connection) |
19:25:45 | * | Jesin quit (Quit: Leaving) |
19:26:22 | PMunch | dom96, how's the survey coming along? |
19:26:29 | * | brson joined #nim |
19:26:50 | dom96 | PMunch: Good. Over 500 submissions so far :) |
19:27:41 | PMunch | Nice :) |
19:27:52 | * | Jesin joined #nim |
19:53:18 | * | brson quit (Quit: leaving) |
19:53:48 | * | brson joined #nim |
19:56:17 | * | PMunch quit (Quit: leaving) |
19:57:10 | * | PMunch joined #nim |
19:57:39 | * | yglukhov joined #nim |
20:03:58 | * | TheLemonMan quit (Quit: "It's now safe to turn off your computer.") |
20:06:36 | * | fastrom joined #nim |
20:07:12 | cheatfate | dom96, i think you need to write about this in book, https://github.com/nim-lang/Nim/issues/4439 |
20:20:38 | * | Trustable joined #nim |
20:32:50 | * | theweirdn8 joined #nim |
20:44:58 | * | afrigginelf joined #nim |
20:48:58 | * | rolha joined #nim |
20:49:45 | dom96 | cheatfate: I'll try to include it in chapter 6 |
20:50:12 | * | akamaus quit (Ping timeout: 260 seconds) |
20:51:20 | * | akamaus joined #nim |
20:53:51 | * | afrigginelf quit (Ping timeout: 250 seconds) |
20:58:55 | * | brson quit (Quit: leaving) |
21:04:39 | * | akamaus quit (Ping timeout: 264 seconds) |
21:06:54 | * | kingofoz quit (Ping timeout: 244 seconds) |
21:07:15 | * | kingofoz joined #nim |
21:24:45 | * | perturbation joined #nim |
21:26:21 | * | vendethiel quit (Ping timeout: 250 seconds) |
21:32:13 | perturbation | hey guys - is it possible to import ospaths (or other modules) in a nimscript nimble file? I'm getting an "Error: cannot open 'ospaths'" message when I try |
21:33:11 | perturbation | never mind - I guess it's a known issue (https://github.com/nim-lang/nimble/issues/186) |
21:39:15 | * | pafmaf quit (Ping timeout: 258 seconds) |
21:39:33 | * | freezerburnv joined #nim |
21:43:52 | * | gdelazzari joined #nim |
21:45:50 | * | vendethiel joined #nim |
21:47:45 | * | yglukhov quit (Remote host closed the connection) |
21:53:54 | * | derlafff joined #nim |
21:59:01 | * | perturbation quit (Quit: Leaving) |
22:04:28 | * | gokr quit (Ping timeout: 252 seconds) |
22:06:49 | * | vendethiel quit (Ping timeout: 244 seconds) |
22:08:12 | * | yglukhov joined #nim |
22:08:53 | * | freezerburnv quit (Ping timeout: 244 seconds) |
22:11:06 | * | desophos joined #nim |
22:13:46 | * | gdelazzari quit (Quit: Page closed) |
22:13:54 | * | yglukhov quit (Ping timeout: 272 seconds) |
22:35:49 | * | elrood quit (Quit: Leaving) |
22:37:11 | theweirdn8 | ello |
22:40:09 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
22:42:01 | PMunch | Hi |
22:43:31 | * | kssreeram joined #nim |
22:48:53 | theweirdn8 | so do u work on nim |
22:48:56 | theweirdn8 | or u use it? |
22:50:32 | PMunch | Mostly use it |
22:51:12 | PMunch | But I've found some issues in the sources and had a pull request for one a while back |
22:51:29 | PMunch | So I guess I'm technically a contributor |
23:03:13 | * | bjz joined #nim |
23:08:47 | * | bjz_ joined #nim |
23:09:24 | * | kssreeram quit (Quit: My Mac has gone to sleep. ZZZzzz…) |
23:11:34 | * | bjz quit (Ping timeout: 252 seconds) |
23:13:13 | * | bjz_ quit (Ping timeout: 252 seconds) |
23:17:51 | * | kingofoz quit (Ping timeout: 240 seconds) |
23:18:18 | * | kingofoz joined #nim |
23:20:00 | * | rolha quit (Ping timeout: 246 seconds) |
23:25:03 | * | Trustable quit (Remote host closed the connection) |
23:30:58 | * | yglukhov joined #nim |
23:31:11 | * | rolha joined #nim |
23:33:47 | derlafff | hi guys. how to use nre module? If I simply replace 'import re' with 'import nre' it fails with |
23:33:48 | derlafff | lib/impure/nre.nim(246, 45) Error: undeclared identifier: 'Option' |
23:34:05 | derlafff | should I do anything else to make it build? |
23:34:24 | * | zodiak joined #nim |
23:35:11 | * | yglukhov quit (Ping timeout: 240 seconds) |
23:36:14 | * | zodiak_ quit (Ping timeout: 272 seconds) |
23:39:43 | * | Matthias247 quit (Read error: Connection reset by peer) |
23:40:04 | * | PMunch quit (Quit: leaving) |
23:42:07 | * | der-landgraf quit (Quit: WeeChat 1.5) |
23:58:24 | * | fastrom quit (Quit: Leaving.) |