00:11:50 | * | douglascorrea quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
00:13:51 | * | xkapastel joined #nim |
00:17:22 | * | sz0 quit (Quit: Connection closed for inactivity) |
00:29:36 | FromGitter | <krux02> i don't use or like one based indexing, but nim is nice it is 0 based. And I can pretend it has exclusile upper bounds |
00:30:44 | GitDisc | <spaceghost> To me, none of it matters, the numbers don't even have to exist, let alone start at something called 0. |
00:31:25 | GitDisc | <spaceghost> I do know I'm left-handed and the 1 is more comfortable to reach for than the 0. :p |
00:32:02 | FromGitter | <krux02> well for me it does matter. The picture in my head breaks otherwise |
00:32:46 | FromGitter | <krux02> i can type a 0 with the space key |
00:35:13 | GitDisc | <spaceghost> For me, the enemy's gate is down, 0 or 1 or something rather imaginary, it's always down. |
00:46:44 | FromGitter | <zetashift> Anyone knows how I can instruct the nim compiler to compile the binary of my main.nim so that the resulting binary ends up in a different folder? |
00:46:59 | FromGitter | <zetashift> eg from root/src/main.nim and it builds it too root/bin/main.exe |
00:47:16 | FromGitter | <zetashift> can't find a nims thing for it but I swear there was one |
00:49:48 | FromGitter | <cabhishek> @zetashift `nim c --o:root/bin/main root/src/main.nim` |
00:50:12 | FromGitter | <zetashift> mucho thanks! |
00:52:36 | * | vlad1777d joined #nim |
01:40:00 | * | endragor joined #nim |
02:05:10 | * | MJCaley joined #nim |
02:14:33 | * | S1tiSchu joined #nim |
02:17:48 | * | MJCaley quit (Quit: MJCaley) |
02:18:37 | * | SitiSchu quit (Ping timeout: 268 seconds) |
02:22:15 | * | endragor quit (Remote host closed the connection) |
02:42:37 | * | vlad1777d quit (Ping timeout: 256 seconds) |
03:08:19 | * | el_tejon joined #nim |
03:12:34 | * | rockcavera quit (Read error: Connection reset by peer) |
03:12:56 | * | rockcavera joined #nim |
03:23:20 | * | xkapastel quit (Quit: Connection closed for inactivity) |
03:26:46 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
03:37:39 | * | endragor joined #nim |
03:37:39 | * | endragor quit (Remote host closed the connection) |
03:38:08 | * | endragor joined #nim |
03:40:23 | * | el_tejon quit (Quit: el_tejon) |
04:32:11 | * | athenot quit (Read error: Connection reset by peer) |
04:33:21 | * | athenot joined #nim |
04:39:10 | * | dddddd quit (Remote host closed the connection) |
04:40:29 | * | SenasOzys quit (Ping timeout: 256 seconds) |
04:58:41 | * | r3d9u11 joined #nim |
05:30:07 | * | couven92 joined #nim |
05:40:32 | GitDisc | <athairus> hi everyone, I'm looking to see if nim fits my project's needs |
05:41:19 | GitDisc | <athairus> I'm creating a multi-system emulator frontend, making my performance requirements about as high as a game engine's |
05:41:44 | GitDisc | <athairus> but what I'm looking for most of all is to see if nim can save me time |
05:42:07 | GitDisc | <athairus> what Qt bindings would you folks recommend? |
06:00:32 | * | r3d9u11 quit (Remote host closed the connection) |
06:02:27 | Calinou | I'm not aware of any usable Qt bindings for Nim… Qt is really difficult to bind to anything |
06:02:38 | Calinou | so far, the only usable Qt bindings are written in Python and Go |
06:02:43 | FromGitter | <cabhishek> try https://github.com/yglukhov/nimx |
06:03:09 | Calinou | (the above isn't native) |
06:03:33 | Calinou | there's no guarantees it supports things like hiDPI, which is pretty much a requirement today |
06:03:38 | * | watzon quit (Ping timeout: 276 seconds) |
06:04:05 | GitDisc | <athairus> I see... thanks guys! |
06:04:44 | * | watzon joined #nim |
06:05:01 | Calinou | it's not exclusive to Nim, Rust has to deal with the same issues |
06:13:54 | * | Jesin quit (Quit: Leaving) |
06:17:43 | * | nsf joined #nim |
06:44:47 | * | cs_ joined #nim |
06:47:28 | * | cs_ left #nim (#nim) |
06:48:03 | * | r3d9u11 joined #nim |
06:48:05 | * | r3d9u11 quit (Read error: Connection reset by peer) |
07:09:19 | FromGitter | <cschardt> > **<Calinou>** there's no guarantees it supports things like hiDPI: |
07:10:20 | FromGitter | <cschardt> But nimx has a layout system. So it should be trivial to produce a scalable GUI, shouldn't it? |
07:20:33 | * | arnetheduck quit (Read error: No route to host) |
07:20:58 | * | arnetheduck joined #nim |
07:22:43 | * | PMunch joined #nim |
07:25:47 | * | Arrrr joined #nim |
07:26:52 | * | couven92 quit (Ping timeout: 260 seconds) |
07:28:10 | Arrrr | parseopt1 lacks of this proc https://nim-lang.org/docs/parseopt2.html#initOptParser,seq[string] |
07:29:38 | Calinou | @cschardt yes, but everything should be scaled and rendered at an higher resolution in this case (both fonts and graphics) |
07:45:39 | FromGitter | <mratsim> There are QML bindings, 2 iirc not sure how they are maintained though |
07:47:33 | Araq | Arrrr, ah yeah, so that is the crucial difference between parseopt and parseopt2... |
07:48:31 | Araq | I need 'cmdLineRest' though and parseopt2's says "do not use" |
07:55:04 | FromGitter | <mratsim> By the way @Araq, regarding the OpenCL check template https://github.com/nim-lang/opencl/pull/3. I suppose the `let y = a` is to avoid side-effects and executing the input twice? Cc-ing @andreaferretti because Nimcuda probably has the same issue. |
07:55:19 | Araq | exactly |
07:56:09 | Araq | you can add a comment like |
07:56:44 | Araq | # ensure we only evaluate once even if the expression has side effects |
07:56:55 | Araq | so that the next PR keeps it :P |
08:01:36 | * | rokups joined #nim |
08:12:01 | * | yglukhov joined #nim |
08:17:41 | * | Tanger quit (Remote host closed the connection) |
08:23:53 | * | Vladar joined #nim |
08:34:42 | FromGitter | <andreaferretti> @mratsim thank you, it would seem oyu're right |
08:36:09 | FromGitter | <andreaferretti> Will fix it soon |
08:40:59 | * | vlad1777d joined #nim |
08:55:25 | FromGitter | <mratsim> I can do the pr this morning, I'll fix opencl, Nimcuda and nim-clblast |
08:55:43 | FromGitter | <andreaferretti> great, tank you! |
08:57:45 | * | rauss quit (Ping timeout: 256 seconds) |
08:59:41 | * | Pisuke joined #nim |
09:01:01 | * | MyMind quit (Ping timeout: 245 seconds) |
09:07:52 | * | floppydh joined #nim |
09:09:36 | * | donotturnoff joined #nim |
09:15:46 | * | allan0_ quit (Quit: no) |
09:16:01 | * | allan0 joined #nim |
09:16:49 | FromGitter | <Bennyelg> I want to start help with fixing bugs! I need some newbie level bugs than I'll get myself up to more complex ones, |
09:16:53 | FromGitter | <Bennyelg> any suggestions |
09:19:04 | PMunch | Hmm, maybe try to improve an error message? Would probably give you a good idea of how things in the compiler are stitched together |
09:19:11 | PMunch | Just guessing by the way |
09:19:40 | FromGitter | <andreaferretti> there should be a label "easy" in nim's issue tracker |
09:22:24 | * | jaco60 joined #nim |
09:23:10 | * | sendell joined #nim |
09:23:31 | Arrrr | I thought here was one already |
09:23:35 | Arrrr | *there |
09:24:20 | FromGitter | <Vindaar> Yup, there is, but I think that's what @andreaferretti meant: https://github.com/nim-lang/Nim/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+label%3Aeasy |
09:24:53 | Arrrr | I thought he was suggesting one |
09:25:09 | FromGitter | <andreaferretti> no I meant there actually is one |
09:29:52 | Arrrr | For some reason now += doesn't work with different ints (int16, int) |
09:34:00 | FromGitter | <mratsim> Oh? inside in regular proc? I know that templates change stuff but I didn’t get any issue with covnerters otherwise |
09:35:12 | Arrrr | Yes, it was inside a template |
09:35:51 | FromGitter | <mratsim> inside a template I don’t think converters work, types must match strictly |
09:36:17 | FromGitter | <mratsim> I suppose the substition is done before the converter possibilities are checked |
09:37:56 | Arrrr | In any case, it was working until now that i updated nimc to devel, so just saying in case it wasn't intended |
09:38:27 | FromGitter | <mratsim> —> Issues ;) |
09:53:51 | * | PMunch quit (Ping timeout: 256 seconds) |
09:58:02 | * | PMunch joined #nim |
10:05:19 | * | floppydh quit (Quit: WeeChat 2.0.1) |
10:05:27 | * | floppydh_ joined #nim |
10:10:08 | * | couven92 joined #nim |
10:41:23 | FromGitter | <cschardt> @Calinou: yes, right, fonts and graphics have to be in scale-sync. But since scaling fonts isn't a big deal, a GUI with a working layout engine should be easily fittable to any resolution. |
10:49:54 | * | SenasOzys joined #nim |
11:19:35 | FromGitter | <Bennyelg> Hey, Assuming I modify a file, how do I confirm it's ok before merging pull request to merge devel. I compile it but there are any test I can run? |
11:20:05 | Araq | thousands. |
11:22:15 | * | floppydh_ quit (Ping timeout: 256 seconds) |
11:28:43 | * | byte512 quit (Ping timeout: 265 seconds) |
11:30:33 | * | vlad1777d quit (Ping timeout: 240 seconds) |
11:31:00 | * | vlad1777d joined #nim |
11:32:20 | * | natrys joined #nim |
11:39:27 | * | vlad1777d quit (Ping timeout: 260 seconds) |
11:43:28 | * | Pwntus quit (Changing host) |
11:43:28 | * | Pwntus joined #nim |
12:02:45 | * | Snircle joined #nim |
12:05:53 | * | floppydh_ joined #nim |
12:06:02 | * | vlad1777d joined #nim |
12:08:38 | FromGitter | <nitely> @Bennyelg check some of the CI configs (i.e `.travis.yml`) you will find all required commands to run the tests there |
12:11:54 | Araq | it's 'koch tests' |
12:18:49 | FromGitter | <ZarsBranchkin> Oh, about the Lua conversation. I don't get the fuss with indices as well, don't remember having huge issues jumping from 0-based and 1-based arrays |
12:19:41 | FromGitter | <ZarsBranchkin> Although I did start off with Lua and then, after using it for a while, went to languages with 0-based arrays. Not sure if it makes any easier/tougher to adapt |
12:20:40 | * | couven92 quit (Ping timeout: 240 seconds) |
12:22:40 | PMunch | ZarsBranchkin, it's not a huge thing, but it's just one of those things that can really bite you if you mess up :P |
12:23:18 | FromGitter | <ZarsBranchkin> True, never been fan of index arithmetic. Pain to debug |
12:24:32 | GitDisc | <spaceghost> I figure being prone to off-by-one errors is almost as fun as being off by -1...3 |
12:28:40 | FromGitter | <ZarsBranchkin> Oh, by the way, @spaceghost, I've been working on kind of fun discord bot using Nim. Currently main feature I'm woring on is interpreting asciimath and generating a nice LaTeX image from it |
12:28:57 | FromGitter | <ZarsBranchkin> oh no, I mentioned someone, hope it's same person |
12:29:33 | FromGitter | <mratsim> @Arrrr: Actually I suddenly got converter issue on a lib that worked 2 weeks ago before I updated my devel: https://github.com/status-im/nim-eth-keys/blob/master/src/private/lowlevel_types.nim#L106-L120 ⏎ ⏎ I now get Error: type mismatch: got <string, byte> ⏎ but expected one of: ⏎ proc `[]`T, U (s: string; x: HSlice[T, U]): string ... [https://gitter.im/nim-lang/Nim?at=5a97f22d26a769820b2a3b11] |
12:36:19 | * | couven92 joined #nim |
12:40:13 | * | vlad1777d quit (Ping timeout: 240 seconds) |
12:40:52 | FromGitter | <mratsim> @dom96 Is it normal to get a message about Nimble v0.8.1 when installing nim#devel? ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5a97f4d426a769820b2a3b1f] |
12:42:43 | * | yglukhov quit (Remote host closed the connection) |
12:43:35 | planetis[m] | lost the conversation but: are there any plans to change to 1-based indexing? That would be cool although it would break evethg |
12:44:01 | FromGitter | <mratsim> Please don’t. I don’t car if I fail Araq interview |
12:44:04 | FromGitter | <mratsim> care* |
12:44:27 | * | natrys quit (Quit: natrys) |
12:44:44 | FromGitter | <ZarsBranchkin> Haha, bit too late for that. Such decision has to be made really early on |
12:44:49 | planetis[m] | recently tried fortran and julia and liked them better |
12:45:13 | Araq | that ship has sailed, 0 indexing is here to stay |
12:45:19 | FromGitter | <mratsim> Until you need to call C from Julia or Fortran from Python ;) |
12:45:21 | GitDisc | <spaceghost> Just throw a wrench in all of it by refusing to support ordinal indexes. |
12:45:53 | FromGitter | <alehander42> i can't think of a more breaking change even if I try to :D :D |
12:45:58 | Araq | and my point was about keeping one's mind flexible |
12:46:12 | Araq | not about the merits of 1-based indexing. |
12:46:16 | jaco60 | in devel, is func only an alias to proc ? |
12:46:22 | Araq | yes |
12:46:29 | FromGitter | <mratsim> You can pretend to use 1-based index with `array[1..N, T]` actually |
12:46:46 | Araq | mratsim: yes and that's considered bad style in Nim. |
12:46:56 | * | yglukhov joined #nim |
12:47:15 | FromGitter | <Bennyelg> how do I compile the whole nim to check my fix . inside lib dir? it's enouge to compile just the specific file ? |
12:47:51 | * | natrys joined #nim |
12:48:54 | FromGitter | <ZarsBranchkin> Hmmm, just got pretty whacky idea of trying to extend emacs with Nim, using the gnu-emacs new dynamic libraries feature |
12:49:24 | FromGitter | <mratsim> I think there is a tuto on contributing to the Nim repo and testing @Bennyelg, there should be a “koch” command to run the tests of your directory |
12:49:32 | planetis[m] | Araq: would a PR with factorial using a array would be accepted to replace the current implimentation? |
12:49:53 | FromGitter | <mratsim> @Bennyelg : https://nim-lang.org/docs/contributing.html |
12:49:54 | FromGitter | <Bennyelg> I just want to add some "break point" to some lib file |
12:50:22 | planetis[m] | also I have some test for all random procs |
12:51:43 | * | floppydh_ quit (Remote host closed the connection) |
12:52:34 | * | floppydh__ joined #nim |
12:54:20 | * | SenasOzys quit (Ping timeout: 276 seconds) |
12:56:02 | * | SenasOzys joined #nim |
12:59:16 | * | douglascorrea joined #nim |
13:01:27 | * | SenasOzys quit (Ping timeout: 245 seconds) |
13:05:32 | * | floppydh__ quit (Remote host closed the connection) |
13:06:13 | * | floppydh__ joined #nim |
13:08:38 | * | Arrrr quit (Ping timeout: 276 seconds) |
13:29:53 | FromGitter | <krux02> @ZarsBranchkin how would you want to extend emacs? I think nim and emacs is really something that could be improved apon. |
13:32:44 | * | xet7 quit (Ping timeout: 260 seconds) |
13:36:04 | * | yglukhov quit (Remote host closed the connection) |
13:38:01 | * | floppydh___ joined #nim |
13:38:49 | * | floppydh__ quit (Remote host closed the connection) |
13:45:35 | * | xet7 joined #nim |
13:49:08 | PMunch | spaceghost, I like the idea of non-ordinal indexes. myArray["one".."one-hundred-and-three"] |
13:51:51 | * | natrys quit (Ping timeout: 256 seconds) |
13:59:10 | * | yglukhov joined #nim |
14:05:37 | dom96 | mratsim: update your choosenim |
14:06:10 | dom96 | I would fail Araq's interview and I don't care. |
14:06:22 | PMunch | What interview? |
14:06:25 | dom96 | Silly thing to judge someone on |
14:06:58 | dom96 | Whether the person minds 1-based indexing or not |
14:07:15 | PMunch | Ah, that's a short interview :P |
14:07:19 | Araq | it's not silly. |
14:07:38 | Araq | I don't want to work with programmers who fail at counting. :P |
14:08:13 | PMunch | I don't like them simply because integers have a limited range (albeit huge on 32- and 64-bit systems) and just discarding the first for no particular reason is just silly |
14:08:33 | * | endragor quit (Remote host closed the connection) |
14:09:04 | dom96 | well it depends how you ask the question I guess |
14:09:12 | dom96 | But I would certainly prefer a language with 0 based indexing |
14:09:56 | dom96 | No sane person will tell you "NO way, I'm not working on some shitty existing code base in a language that uses 1 based indexing", so you'd learn nothing from this question |
14:10:07 | PMunch | I mean it did confuse me when I first started programming. But when you get used to it it makes a lot more sense |
14:10:30 | PMunch | Well some probably would :P |
14:15:12 | FromGitter | <mratsim> Thankfully Araq is not interviewing Nim core devs otherwise he would be alone :D |
14:16:43 | Araq | PMunch, often you lose half of the range because you need -1 to signal "not found" since 0 is already taken. when you start with 1, the 0 is available for "not found". |
14:18:04 | Araq | it is a moot point. |
14:18:42 | FromGitter | <krux02> well I like not to use an integer at all for not found ;r |
14:18:44 | FromGitter | <krux02> ;) |
14:19:12 | federico3 | mratsim: indeed |
14:19:19 | FromGitter | <krux02> `proc find(...): Option[Natural]` |
14:19:50 | FromGitter | <krux02> or an even better name `proc indexOf(...): Option[Natural]` |
14:20:08 | Araq | irrelevant; if you want to keep the same efficiency you need an efficient way to encode the None state |
14:20:21 | FromGitter | <krux02> and I don't like this +1 everywhere inthe code where I access the end of a range |
14:20:47 | Araq | the +1 is caused by the fact that you start at 0 ;-) |
14:20:49 | FromGitter | <krux02> how manay elements does a range have? well it is b-a+1 |
14:21:28 | Araq | yes, that's math. |
14:21:36 | Araq | fighting math is stupid. |
14:22:02 | planetis[m] | well I only asked because I was thinking that 1-based indexing and inclusive ranges fit good together whereas 0-based and inclusive not so much |
14:22:21 | Araq | we have exclusive ranges, they are spelt ..< |
14:22:41 | Araq | a solution so good Swift copied it. |
14:22:52 | FromGitter | <krux02> I think about the index like a write cursor, when I have the string "abcd" the write cursor can have 5 different positions "|abcd" "a|bcd", "ab|cd", "abc|d" and "abcd|" |
14:23:18 | Araq | you only think this way about "cursors" because you're trying hard to rationalize the starting point at 0 |
14:23:31 | FromGitter | <krux02> well it does make a lot of senes |
14:23:59 | Araq | in truth you learned to start with 0 and now you come up with nonsense to justify the investment in learning this bizzare scheme |
14:24:20 | GitDisc | <ZarsBranchkin> krux02: Just noticed, that GNU emacs has now dynamic library support, that can interact with the elisp. Could possibly write library, that can compil and dynamically load additional Nim files, will want to explore that sometime |
14:24:49 | dom96 | Araq: You're arguing for 1-based indexing because you want the '0' for a `indexOf` proc? |
14:25:25 | * | yglukhov quit (Read error: Connection reset by peer) |
14:25:44 | FromGitter | <mratsim> Well I suppose Araq is comfortable using XXI century to refer to 20XX. I’m not ;) I always find that weird |
14:26:03 | * | yglukhov joined #nim |
14:26:47 | Araq | for i in 1..4 |
14:26:47 | GitDisc | <ZarsBranchkin> Well, not that new of update, feature is already there since version 25.1 https://www.gnu.org/software/emacs/news/NEWS.25.1 |
14:26:52 | FromGitter | <mratsim> that’s because years are one-based ; and it’s completely broken for BCE years |
14:27:02 | Araq | for i in countdown(4, 1) |
14:27:10 | Araq | for i in 0..<4: |
14:27:21 | Araq | for i in countdown(4-1, 0) ? |
14:27:35 | Araq | your superior way of doing things breaks symmetry |
14:27:48 | dom96 | Please just stop |
14:27:52 | Araq | and assumes you have a sentinel you do not want to iterate over. |
14:28:01 | dom96 | People will begin leaving because they fear you changing Nim to use 1-based indexing |
14:28:21 | Araq | I won't but the proponents of 0 based indexing have no good arguments. :-) |
14:28:34 | * | endragor joined #nim |
14:29:09 | dom96 | They do: it's consistent with most languages out there |
14:29:14 | dom96 | That's a pretty solid argument |
14:29:25 | Araq | that's the "Flies eat shit" argument. |
14:29:44 | livcd | Do they eat shit thought ? I thought they just lay eggs there |
14:29:48 | livcd | though* |
14:30:31 | Araq | dom96, also that was not the argument that I read here in #nim ;-) |
14:30:53 | dom96 | Araq: Right, shall we release before my next lecture? |
14:31:01 | dom96 | can we do it in 1.5 hours? |
14:31:18 | Araq | I broke travis and I'm not sure why ... |
14:31:29 | dom96 | 1-based indexing? :P |
14:32:49 | dom96 | "The job exceeded the maximum time limit for jobs, and has been terminated." |
14:32:51 | dom96 | Travis is shit |
14:33:47 | * | endragor quit (Ping timeout: 276 seconds) |
14:33:53 | dom96 | so what do we do with nre? |
14:34:44 | Zevv | replace it by Lua patterns :) |
14:35:32 | FromGitter | <ZarsBranchkin> Hah, Lua patterns are fun to write |
14:36:04 | Zevv | https://github.com/zevv/nimpat |
14:36:46 | FromGitter | <ZarsBranchkin> @krux02 By the way, this is the feature I'm talking about https://www.gnu.org/software/emacs/manual/html_node/elisp/Dynamic-Modules.html |
14:38:01 | FromGitter | <ZarsBranchkin> Sooo might be able to write library, that allows easy Nim integration in emacs. Could be pretty exciting |
14:40:37 | Araq | dom96: add a .deprecated top level statement? |
14:41:11 | dom96 | okay, so we are deprecating it then |
14:41:23 | Araq | dunno |
14:41:26 | Araq | start a poll |
14:41:42 | dom96 | btw choosenim was already mentioned on previous release articles |
14:41:47 | dom96 | so I will mention it in this article too |
14:41:50 | Araq | it's not like we spend time maintaining it |
14:41:56 | dom96 | Up to you whether you want it in the install page |
14:42:36 | dom96 | I'm going to deprecate it, hopefully people who it affects will get in touch |
14:42:47 | Araq | the proxy exes make me nervous, so no. |
14:43:21 | Araq | especially now that I've looked at argument parsing and forwarding again |
14:43:50 | Araq | was it tested with arguments that have spaces in them? |
14:43:54 | dom96 | alright, I won't argue but will swiftly redirect all questions regarding why it's missing to you :) |
14:44:02 | FromGitter | <nitely> dom96: are all reasons for nre existence been solved? https://github.com/flaviut/nre#why |
14:44:18 | FromGitter | <nitely> also, I've read more than once "use nre, re is buggy" |
14:44:21 | Araq | these questions can be answered by a single word: QA. |
14:44:49 | Araq | nitely, no they are not. but we like re's API better |
14:44:58 | dom96 | nitely: okay, I will postpone deprecation until next release |
14:45:11 | dom96 | But will make an issue |
14:45:13 | Araq | and so want to fix re.nim instead of using nre.nim |
14:46:32 | dom96 | there, done https://github.com/nim-lang/Nim/issues/7278 |
14:46:38 | dom96 | Araq: parseopt2 is fixed right? |
14:46:51 | Araq | yes. |
14:47:10 | dom96 | Regarding choosenim, have you seen anybody complain about it being broken here? |
14:47:55 | Araq | that's not what I understand by "QA" |
14:50:56 | dom96 | spaces seem to work |
14:51:58 | dom96 | I put a file inside a directory with a space and I can compile it |
14:52:46 | * | r3d9u11 joined #nim |
14:52:51 | Araq | Zevv: looked at Nim's pegs? |
14:53:04 | Araq | dom96: ok, good to be sure about that. |
14:53:20 | dom96 | Araq: Does that put your nervousness to rest? :) |
14:53:32 | Araq | it mitigates it |
14:53:59 | Araq | why do we need the proxies? |
14:54:30 | dom96 | because windows doesn't support symlinks |
14:54:51 | Araq | why do we need the conceptual symlinks? |
14:55:13 | dom96 | Because that's what choosenim is |
14:55:18 | dom96 | it's a "symlink switcher" |
14:55:54 | Araq | ok, so once we have PATH control we can just change the PATH, right? |
14:56:45 | dom96 | that might work |
14:56:48 | dom96 | but proxy exes work fine |
14:57:09 | Araq | you need the PATH feature anyway though |
14:57:43 | Araq | for the installation step at least |
14:58:18 | dom96 | yes, we'll see how it goes |
14:59:38 | Araq | btw we have path control on windows, you could use symlinks on Unix and path modifications on windows ;-) |
15:01:07 | dom96 | okay |
15:01:15 | dom96 | If it works :P |
15:01:39 | Araq | it would work really well, I do the same on WIndows to produce 32 and 64 bit versions of Nim |
15:02:00 | dom96 | I'll try it with Nimble first |
15:02:07 | dom96 | It currently uses a hacky .cmd script |
15:02:11 | dom96 | as a "symlink" |
15:02:24 | dom96 | So anyway, does this mean you approve of putting choosenim on the install page? |
15:03:27 | Araq | no. as I said, I want to review it |
15:03:48 | * | PMunch quit (Quit: Leaving) |
15:04:26 | dom96 | so review it |
15:05:11 | dom96 | just run the script, it won't hurt you |
15:06:13 | Araq | I'm trying to fix the DLL tests |
15:07:45 | dom96 | Which breaking changes in particular should I highlight? |
15:08:21 | dom96 | Definitely the fact that `[]` raises IndexError |
15:13:11 | Araq | the BackwardsIndex thing? |
15:13:27 | Araq | but focus on the features instead |
15:13:44 | Araq | we have custom pragmas, runnableExamples and strformat |
15:13:59 | * | yglukhov quit (Read error: Connection reset by peer) |
15:14:11 | Araq | and asyncjs |
15:14:24 | Araq | and a TLSF allocator |
15:14:33 | * | yglukhov joined #nim |
15:14:35 | Araq | pretty good stuff in this release |
15:15:50 | dom96 | This is a breaking release |
15:15:59 | dom96 | I'm highlighting the things to be aware of |
15:16:32 | dom96 | What does the BackwardsIndex thing break? |
15:17:18 | FromGitter | <krux02> dom96: it breaks list comprehension. |
15:17:56 | dom96 | I'm focusing on things that will affect many people |
15:18:26 | FromGitter | <krux02> dom96: The backwards index only breaks list comprehension. |
15:18:46 | dom96 | That's not really a breaking change, it's a regression |
15:18:56 | dom96 | so it's not a conscious breaking change that we should document |
15:19:37 | FromGitter | <krux02> just write list comprehension needs braces instead of brackets now. |
15:20:09 | FromGitter | <krux02> maybe I list comprehension should get a deprecation notice. |
15:21:07 | Araq | krux02: lc is not broken since I have not merged your PR |
15:21:30 | Araq | will merge it after 0.18 when the concept issues have been ironed out |
15:22:12 | Araq | dom96: what broke my programs was the ptr array of char change |
15:22:24 | Araq | var x: array[5, char] |
15:22:31 | dom96 | okay, i'll mention that too |
15:22:40 | dom96 | got an example that demonstrates it? |
15:22:44 | Araq | echo x |
15:22:57 | Araq | try it. |
15:26:51 | dom96 | ok |
15:26:56 | dom96 | Onto features :) |
15:27:01 | dom96 | This will be the best release article ever |
15:33:27 | dom96 | actually |
15:33:29 | dom96 | I just remember |
15:33:30 | dom96 | ed |
15:33:35 | dom96 | I want to change the strformat docs |
15:34:20 | dom96 | IMO we should encourage people to use ``fmt`` not ``&`` |
15:34:55 | FromGitter | <krux02> I think the $ operator and the & operator make the code look ugly. |
15:35:23 | dom96 | Araq: You don't mind do you? |
15:35:45 | Araq | I do. |
15:36:01 | Araq | & is easier to use as it works with \n |
15:36:30 | Araq | it's also easier to remember as it produces a concatenation expression |
15:36:33 | dom96 | I'll document that gotcha |
15:36:45 | Araq | von mir aus |
15:36:50 | FromGitter | <mratsim> @dom96 don’t forget about the HSlice (I think the regressions introduced were fixed but not sure) |
15:37:22 | Araq | I introduced & because it's easier to use, it makes no sense to encourage 'fmt' |
15:37:27 | Araq | 'fmt' is worse. |
15:37:28 | FromGitter | <mratsim> And Static[T] fixes :shipit: |
15:37:43 | FromGitter | <krux02> dom96: the backwards index broke the default implementation for myType[^1]. |
15:37:52 | dom96 | I dislike '&' with a passion |
15:38:00 | Araq | I don't care. |
15:38:09 | dom96 | and you said you wanted PRs to fix this |
15:38:14 | dom96 | so I'm fixing it |
15:38:17 | Araq | nope. |
15:38:22 | dom96 | `&` should be the alias |
15:38:24 | FromGitter | <ZarsBranchkin> Huh, isn't & concat, not format? |
15:38:24 | Araq | do not touch this. |
15:38:40 | FromGitter | <krux02> & is concat |
15:39:03 | dom96 | Well I guess we're not releasing then |
15:39:49 | Araq | it's & and you're way too late to bring this up now. |
15:40:03 | FromGitter | <krux02> I just think `concat(string(b)," - ",string(d))` would look nicer than: `$b & " - & $d"` |
15:40:11 | Yardanico | :D |
15:40:25 | FromGitter | <krux02> but I don't think that & should be touched. |
15:40:36 | FromGitter | <krux02> it is there and it won't go anywhere. |
15:40:39 | dom96 | Showing thousands of examples with `&` is a mistake |
15:40:50 | dom96 | `&` will still be there |
15:41:00 | dom96 | I just don't want people to use it unless they have to |
15:41:15 | Araq | yes but that's just your personal opinion. |
15:41:36 | FromGitter | <krux02> I think in the future the default to string conversion should be called just `string(xyz)` and `$` should be a depricated alias to not break things. |
15:41:44 | FromGitter | <mratsim> I though we were supposed to use `“$# - $#” % [b, d]` ;) |
15:41:47 | FromGitter | <krux02> or toString |
15:41:59 | FromGitter | <krux02> I also dislike % |
15:42:13 | FromGitter | <krux02> I wrote a string interpolation macro once. |
15:42:32 | FromGitter | <krux02> `s"$b - $d"` |
15:42:48 | FromGitter | <krux02> very short and very simple |
15:42:53 | FromGitter | <krux02> not perfect, but does the job |
15:43:04 | Araq | you can't encourage people to use the either error prone or inconsistent 'fmt' just because it touches your sense of beauty. |
15:43:11 | FromGitter | <ZarsBranchkin> Don't really see the fuss with operators vs procedures here, don't mind either, just string operators are shorter |
15:43:42 | Araq | besides, we had this discussion months ago. |
15:43:56 | FromGitter | <krux02> yes no point in arguing now. |
15:44:12 | FromGitter | <krux02> It.s just an ugly part of the language, that won't change for this release. |
15:46:04 | dom96 | See, i'm not the only one who thinks it's ugly :) |
15:46:13 | dom96 | If we leave it in now it'll be harder to fix later |
15:46:35 | Araq | there is nothing to fix. we have unary & and later we'll add unary % |
15:46:39 | FromGitter | <krux02> that's true for everything |
15:46:48 | dom96 | yeah, and that's another reason to discourage people from using `&` |
15:46:51 | dom96 | because you want `%` |
15:46:54 | FromGitter | <krux02> unary % what should that be good for? |
15:46:59 | Araq | i18n |
15:47:35 | Araq | look, I know you don't really remember the discussions. but I'm not gonna repeat them here. |
15:47:52 | * | douglascorrea quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
15:49:30 | jaco60 | @Araq too bad... Are they archived somewhere? I'm just coming and i'm curious about the various pro/cons arguments |
15:49:38 | Araq | you don't have to use strformat, you don't have to use strformat.&. but don't patronize others based on your ignorance. |
15:50:21 | Yardanico | jaco60, well, you can search nim irc logs, but it won't be easy :P |
15:50:31 | jaco60 | :) |
15:50:36 | Yardanico | jaco60, well, there's no search feature at all - https://irclogs.nim-lang.org/ |
15:50:59 | FromGitter | <alehander42> @dom96 `&` is kinda fine, `fmt` is 3 characters, and honestly, I feel you haven't used it in code with a lot of formatting, becuase it gets old fast (and it's too much visual noise) |
15:52:45 | FromGitter | <alehander42> interpolation happens extremely often in many situations, so it has to have optimized syntax, my personal opinion is that language support for #{} in each string by default (as ruby) is the best option, but f".." or operator"" seem to be the only other alternative |
15:53:05 | FromGitter | <alehander42> other viable alternative* |
15:53:07 | FromGitter | <nitely> I like & because it does not raise errors FWIW. Also, for breaking long strings (is is a better way?) |
15:53:28 | FromGitter | <nitely> 1) there a better way |
15:53:30 | FromGitter | <alehander42> (I am talking about &"..") |
15:53:55 | FromGitter | <ZarsBranchkin> Wait, what does unary & do? |
15:53:57 | FromGitter | <nitely> Ah woops |
15:54:05 | Yardanico | ZarsBranchkin: string formatting from strformat module |
15:54:08 | FromGitter | <alehander42> interpolation |
15:54:14 | FromGitter | <alehander42> &"{2 + 2}" == "4" |
15:54:15 | FromGitter | <mratsim> the issue with `&` is when you concatenate a lot and you need spacing `Speed: “ & $s & “, Position: “ & $p & “, Altitude: “ & $a ` I find that quite long. |
15:54:35 | FromGitter | <mratsim> ah I didn’t know there was &”…" |
15:54:47 | Yardanico | it was only introduced after 0.17.2 |
15:54:51 | FromGitter | <ZarsBranchkin> Right, didn't know as well. And what is purpose of unary % then? |
15:54:54 | FromGitter | <alehander42> you missed the three day long discussions about ? :D |
15:55:01 | FromGitter | <alehander42> it was %".." before that (for a day?) |
15:55:08 | FromGitter | <mratsim> Sometimes I just tune out and roll my own crypto ;) |
15:55:29 | FromGitter | <alehander42> bad boy |
15:55:59 | FromGitter | <mratsim> But wasn’t there a discussion to use `&[…]` to borrow a reference as well? |
15:56:02 | FromGitter | <alehander42> afaik %".." would be used for i18n |
15:56:37 | FromGitter | <mratsim> so we would have `&”…”` for strformat and `&[…]` for borrowing? |
15:56:57 | Araq | nonsense, nobody ever talked about & for "borrowing" |
15:57:18 | FromGitter | <mratsim> okay, must have dreamed it up |
15:57:22 | Araq | yup |
16:00:54 | FromGitter | <alehander42> borrowing :O |
16:01:08 | FromGitter | <alehander42> v2 gets more and more interesting |
16:03:07 | * | douglascorrea joined #nim |
16:06:35 | * | natrys joined #nim |
16:07:27 | FromGitter | <dom96> @alehander42 yes, well, I wanted f"" since the very beginning... but that ship has sailed |
16:07:51 | Yardanico | dom96: f would still have same limitations as fmt though |
16:08:27 | Yardanico | but yeah, it's much shorter |
16:08:31 | FromGitter | <dom96> Yes, and I wish we just taught people the difference between f"" and f("") |
16:08:49 | FromGitter | <dom96> Nim programmers should know this anyway |
16:09:32 | FromGitter | <ZarsBranchkin> wait, so if f"" is different from f(""), then f"" is also different from f ""? |
16:09:43 | Araq | yes. |
16:09:45 | FromGitter | <dom96> yep |
16:10:04 | FromGitter | <ZarsBranchkin> Curious, only have used r"" as of now, without much thinking |
16:10:08 | Araq | only f"" is a raw string literal where \ loses its special meaning |
16:10:28 | Araq | well identifierHere"" is the generalization of r"" |
16:13:44 | * | rauss joined #nim |
16:21:57 | * | natrys quit (Ping timeout: 252 seconds) |
16:28:24 | FromGitter | <aboisvert> In Karax, is there a way to trigger re-rendering? |
16:29:04 | FromGitter | <aboisvert> e.g. I change the value of a variable that is used in rendering, so I want the refresh the page accordingly. |
16:29:34 | FromGitter | <aboisvert> In my case, this happens in an ajaxGet() callback, after I get the data that I wanted. |
16:30:19 | FromGitter | <alehander42> I used `redraw()` in the past |
16:31:02 | FromGitter | <aboisvert> Thanks! Let me try that. I must have missed it in my search/grepping through code |
16:32:10 | * | douglascorrea quit (Quit: Textual IRC Client: www.textualapp.com) |
16:33:02 | FromGitter | <aboisvert> Hmmmm, compiles fine but my renderer (the one set through `setRenderer`) isn't invoked |
16:33:16 | * | arecacea1 quit (Remote host closed the connection) |
16:33:40 | * | arecacea1 joined #nim |
16:35:59 | FromGitter | <aboisvert> note that I'm not using any `VComponent` yet, i only have a global renderer |
16:36:09 | FromGitter | <alehander42> maybe you can pass it somehow your karax instance ? I've used a forked older version of karax, so not absolutely sure about that (I am trying to make my code work with it right now actually haha) |
16:39:44 | FromGitter | <dom96> Araq: can't we have a balance of `&` and `fmt` in the documentation? and actually explain the difference to people instead of blindly leading them to `&`? |
16:39:53 | FromGitter | <aboisvert> That didn't work either ... I'm digging. |
16:41:26 | * | natrys joined #nim |
16:44:24 | FromGitter | <alehander42> I often get some random `(proc (): VNode{.locks: <unknown>.}) but expected 'proc (): VNode{.noSideEffect, gcsafe, locks: 0.}'` errors with arrays of procs, and honestly not sure how to fix them |
16:44:32 | FromGitter | <alehander42> I remember in the past, I just randomly changed order sometimes |
16:45:14 | FromGitter | <dom96> Tried marking the proc type with {.gcsafe.}? |
16:51:42 | * | Trustable joined #nim |
16:56:57 | FromGitter | <mratsim> completely offtopic but Python relative imports are so wacky there are 2M results on Google ... |
16:57:45 | FromGitter | <alehander42> i am using the js backend, I didn't think it would make a difference :D |
16:58:44 | FromGitter | <alehander42> the thing is, those functions have the same declaration, so if the thrid one doesn't match, the second one shouldn't too |
17:07:27 | FromGitter | <krux02> @alehander42 yes it does make a very big difference. But when you are used to program to javascript, then is probably behaving for you in a very predictive way. |
17:07:35 | * | floppydh joined #nim |
17:09:51 | FromGitter | <krux02> I think relative imports are a bad idea. |
17:10:18 | FromGitter | <krux02> just save a few characters in your import line, but then you have no idea where things come from. |
17:12:17 | FromGitter | <andreaferretti> wow, this is cool! https://github.com/Serenitor/embeddedNimScript |
17:14:10 | FromGitter | <mratsim> @krux02 I think qualified namespacing is better than disallowing relative import for that kind of things. I’m trying to test a Python repo I’m porting and the no relative import forces me to basically copy-paste the python file in my working directory |
17:19:43 | Zevv | Araq: thanks, I've seen Nim's pegs. I've been using Lua a *lot* for the last 12 years, and Nim is the first language that makes me want to leave it. Lua patterns are the only thing I'll miss dearly though, so I'd like to take these with me |
17:22:39 | * | yglukhov quit (Remote host closed the connection) |
17:23:15 | FromGitter | <ZarsBranchkin> Zevv: I'm pretty much in similar situation here. Been using Lua for ~10 years, also was my first programming language. C++ never really satisfied me, so very happy that Nim is a thing |
17:25:39 | Zevv | Yeah, funny is it. I'm coming from the C world originally, and I was never able to get into C++ - they'r trying to solve things in a language where you should not do these things. Lua is the perfect match for C: a tight API, small ecosystem, no dependencies. |
17:25:52 | Zevv | Python is simply too huge |
17:26:12 | Zevv | Nim fills my gap just right |
17:28:26 | * | byte512 joined #nim |
17:30:31 | Zevv | You've been doing Lua profesionally? |
17:31:49 | FromGitter | <ZarsBranchkin> Nope, only as amateur, but it did manage to introduce me to world of programming quite nicely |
17:32:26 | Zevv | True, it's pretty lean and self contained, it probably makes for a good start |
17:33:48 | FromGitter | <ZarsBranchkin> I got so used to it's darn powerful tables, which allows to quickly throw together abstract objects without much planning. This is the most difficult thing to get over now that I'm getting used to static types |
17:34:25 | FromGitter | <ZarsBranchkin> My planning skills in general are pretty weak, heh. At least have improved on that |
17:34:42 | Zevv | True, it's very handy for just throwing things together. But the lack of proper typing is my biggest problem with Lua. |
17:35:17 | * | sendell quit (Remote host closed the connection) |
17:35:26 | Zevv | Ducktyping is fun, but bites me in the foot too often |
17:36:41 | Zevv | Writing in Nim gives me the same kind of feeling of freedom, generally stuff just happens to be in the right place and work just as I expect it to |
17:37:20 | Zevv | Together with portability and asyncdispatch I'm happy as a toddler |
17:37:35 | FromGitter | <ZarsBranchkin> Yeah, when I started creating bit larger scale projects I tried to assert the function arguments, but it gets old and annoying pretty quickly |
17:37:45 | Zevv | yeah :) |
17:38:17 | FromGitter | <ZarsBranchkin> Yeah, love how much Nim feels like a scripting language, but allows you to make use of static types and lower level language features |
17:38:22 | Zevv | I've been working on a 35K+ lines Lua project for a few years now, and it's amazingly solid, though |
17:39:58 | * | yglukhov joined #nim |
17:39:59 | * | yglukhov quit (Remote host closed the connection) |
17:56:50 | * | floppydh___ quit (Remote host closed the connection) |
17:57:34 | * | yglukhov joined #nim |
17:58:47 | * | yglukhov quit (Remote host closed the connection) |
17:59:23 | * | yglukhov joined #nim |
18:00:30 | * | couven92 quit (Ping timeout: 256 seconds) |
18:00:35 | * | floppydh quit (Ping timeout: 240 seconds) |
18:03:40 | * | yglukhov quit (Ping timeout: 240 seconds) |
18:05:54 | * | yglukhov joined #nim |
18:06:32 | * | sz0 joined #nim |
18:17:27 | federico3 | what is it? |
18:28:53 | Zevv | industrial router with tons of features |
18:29:16 | Araq | dom96, so a compromise, ok |
18:29:37 | Zevv | federico3: http://www.mulogic.com/rsa-4222.html |
18:29:56 | dom96 | Araq: yes, yay |
18:30:37 | Araq | that's the last thing we'll do before the release, ok? |
18:30:58 | dom96 | sure |
18:31:05 | federico3 | I was hoping to get 6664 in |
18:31:13 | Araq | oh my :-) |
18:31:48 | dom96 | I fear that's too risky |
18:32:04 | dom96 | it would be nice to merge that and have a period where people test it as part of 'devel' |
18:32:14 | Araq | nimble install nimx |
18:32:14 | Araq | Tip: 3 messages have been suppressed, use --verbose to show them. |
18:32:14 | Araq | Error: Nimble cannot use an older stdlib than the one it was compiled with. |
18:32:14 | Araq | ... Stdlib in 'C:\Users\rumpf\projects\nim\lib' has version: 0.17.3. |
18:32:14 | Araq | ... Nimble needs at least: 0.18.0. |
18:32:18 | Araq | :-) |
18:32:26 | Araq | nimble is ahead of its time |
18:32:31 | federico3 | dom96: a bake-in period before the next release? fair enough |
18:32:43 | Zevv | federico3: is that the SSL/TLS verification? |
18:32:48 | Araq | yeah, we also have times.nim improvements |
18:32:48 | Zevv | I vote for that as well |
18:32:53 | dom96 | next release won't take as long as this one, I hope :) |
18:32:58 | federico3 | Zevv: it is (but the verification is not enabled by default) |
18:33:08 | dom96 | Araq: yay, I'm quite proud of that error :) |
18:33:27 | Araq | dom96, well it makes nimble unusable ? |
18:33:37 | Araq | I wonder why travis is not red because of this |
18:33:59 | dom96 | hm |
18:34:37 | federico3 | [according to made-up statistics 9 Nim devs out of 10 wish for more frequent releases] |
18:35:34 | Zevv | the 10th one is just always running from git devel? |
18:35:47 | dom96 | the 10th one is an Arch user :P |
18:35:54 | FromGitter | <zetashift> isn't there a codegen bug blocking 0.18.0? |
18:36:15 | dom96 | Araq: Here is the relevant code: https://github.com/nim-lang/nimble/blob/master/src/nimblepkg/nimscriptsupport.nim#L282 |
18:36:53 | dom96 | It's a little hackish :). Here is how it gets the Nim stdlib version: https://github.com/nim-lang/nimble/blob/master/src/nimblepkg/nimscriptsupport.nim#L217 |
18:37:48 | dom96 | How did you compile Nimble? |
18:38:03 | dom96 | It must have been using some other stdlib |
18:38:09 | * | Trustable quit (Remote host closed the connection) |
18:43:07 | dom96 | Araq: The documentation under the heading "Standard format specifier" confuses me |
18:43:32 | dom96 | It's still up to the ``format`` procedure to define what it supports, no? |
18:50:24 | * | yglukhov quit (Remote host closed the connection) |
18:52:08 | * | yglukhov joined #nim |
18:52:39 | * | natrys quit (Ping timeout: 252 seconds) |
18:55:15 | * | r3d9u11 quit (Remote host closed the connection) |
19:04:24 | dom96 | oh I see, those are implemented in the module itself so it makes sense to document them there too |
19:04:44 | Araq | dom96, the substrings/sublanguage is passed to the format procs |
19:04:54 | dom96 | yeah |
19:04:56 | Araq | dom96, I compile nimble as koch does it |
19:05:06 | FromGitter | <data-man> *nix users, what a file system would you recommend? ⏎ Now I'm using the XFS and the Btrfs but maybe I made the wrong choice? :-) |
19:05:27 | Araq | don't remember the details but it was a long painful path to get there |
19:05:39 | Yardanico | data-man: I use ext4 for root and btrfs for /home |
19:05:44 | Araq | oh |
19:05:45 | Yardanico | because compression and deduplication (if needed) |
19:05:48 | Araq | sorry, my bad |
19:06:01 | Araq | I bumped the version yesterday for testing and then reverted |
19:06:23 | Araq | so ... nimble is fine I think, let me rebuid and test |
19:07:11 | * | rokups quit (Quit: Connection closed for inactivity) |
19:08:30 | * | yglukhov quit (Remote host closed the connection) |
19:08:59 | dom96 | https://github.com/nim-lang/Nim/compare/strformat-docs |
19:10:10 | jaco60 | terminology question: what means "pure" and "impure" in "pure/impure libraries" |
19:10:12 | jaco60 | ? |
19:10:24 | dom96 | pure - no runtime dependencies |
19:10:30 | dom96 | impure - some runtime dependencies |
19:10:35 | jaco60 | thanks |
19:12:47 | dom96 | Python's f-string's can actually interpolate after the ':' as well |
19:16:09 | FromGitter | <data-man> @Yardanico: Thanks! I decided to switch from Arch Linux to NixOS. This is a good chance to remake the disk partitions. :-) |
19:17:24 | FromGitter | <zetashift> I was thinking about NixOS recently! I'm not sure if I should do a Linux dualboot or a hackintosh |
19:22:39 | Yardanico | data-man: what was the reason? |
19:22:51 | Yardanico | zetashift: well, I tried macOS, it's just not for me :) |
19:22:59 | Yardanico | everything worked on my hackintosh |
19:25:00 | * | yglukhov joined #nim |
19:27:33 | Araq | dom96, it's fine, now what "create pull request"? |
19:28:19 | dom96 | Araq: I can just merge it if you approve |
19:28:25 | FromGitter | <data-man> @Yardanico: more packages, more convenient configuration, IMO. And my Arch is often buggy. :-D |
19:28:38 | subsetpark | Nix has more packages than Arch?? |
19:30:38 | Yardanico | data-man - really, more packages? |
19:30:43 | Yardanico | than arch repos + AUR? |
19:32:00 | Yardanico | subsetpark, probably it's easier to submit packages to nix repos |
19:32:17 | dom96 | Araq: So I can merge it right? |
19:38:01 | * | PMunch joined #nim |
19:49:40 | * | Vladar quit (Quit: Leaving) |
19:50:51 | dom96 | Okay, so I described every feature except custom pragmas |
19:55:00 | FromGitter | <mratsim> Arch is buggy? Did Poettering release yet another breaking daemon? |
19:58:30 | FromGitter | <zetashift> @Yardanico I have nvidia gpu in my laptop I'm not sure if that works well with a hackintosh |
20:02:15 | * | yglukhov quit (Remote host closed the connection) |
20:06:05 | Yardanico | zetashift: ah, then it will be almost 100% possible to do, but a little bit harder |
20:06:17 | Yardanico | but wifi/bluetooth is way harder to do in hackintosh for laptops |
20:08:37 | GitDisc | <awr> hello |
20:09:04 | GitDisc | <awr> are there any facilities in nim for allocating executable memory or do i have to break out VirtualProtect/mprotect |
20:14:54 | Araq | dom96, yes, I approved |
20:15:13 | * | sz0 quit (Quit: Connection closed for inactivity) |
20:15:38 | dom96 | ok, merged |
20:15:42 | dom96 | blog article is ready |
20:15:54 | PMunch | Oooh, article? |
20:16:01 | * | donotturnoff quit (Ping timeout: 248 seconds) |
20:16:47 | dom96 | release article |
20:17:05 | PMunch | Oh cool, for 0.18? |
20:18:51 | dom96 | yep |
20:20:39 | GitDisc | <spaceghost> I'm starting with a really small first project to first bind then reimplement PromyLOPh's pianobar and libpiano. |
20:21:04 | FromGitter | <ZarsBranchkin> How would I satisfy such extern function definition? I'm having trouble with `struct emacs_runtime *ert` definition in Nim: ⏎ ⏎ ```extern int emacs_module_init (struct emacs_runtime *ert);``` [https://gitter.im/nim-lang/Nim?at=5a9860b06f8b4b9946da0c0f] |
20:22:02 | FromGitter | <ZarsBranchkin> Right now I have `emacs_runtime`as `ptr object`, so in the generated C it get's different, uncompatible type |
20:23:53 | PMunch | I assume you set emacs_runtime as {.pure.}? |
20:24:17 | FromGitter | <ZarsBranchkin> hm, no, hadn't tried that yet |
20:24:42 | PMunch | https://github.com/nim-lang/Nim/issues/3795#issuecomment-177111740 |
20:30:30 | * | lotzz joined #nim |
20:34:54 | * | yglukhov joined #nim |
20:47:59 | FromGitter | <ZarsBranchkin> finally figured it out. Had to use `{.importc: "struct emacs_runtime".}` Before I didn't include struct |
20:48:19 | PMunch | Ah :P |
20:48:49 | PMunch | I thought you were trying to define it in Nim |
21:07:14 | dom96 | wow, bountysource sure had a makeover https://www.bountysource.com/ |
21:08:20 | PMunch | Oh wow, yeah |
21:08:37 | PMunch | That reminds me, I should start donating to Nim :) |
21:15:34 | * | donotturnoff joined #nim |
21:21:20 | * | donotturnoff quit (Ping timeout: 276 seconds) |
21:21:59 | FromGitter | <aboisvert> @alehander42 Thanks for the tip to call `redraw(kxi)` earlier, it did solve my problem. The reason it wasn't working earlier is because I was doing something stupid by calling it from within my `postRender`call stack) |
21:22:39 | Araq | yeah karax should detect that |
21:22:59 | * | MJCaley joined #nim |
21:23:00 | Araq | it's a common gotcha to call redraw in postRender causing an endless redraw |
21:23:31 | Araq | on the other hand, it is logical this can't work :-) |
21:24:52 | FromGitter | <aboisvert> actually, for me it was just being ignored at first. i also trigged the endless redraw by calling it through `setTimeout`. you can tell i've applied brute force to this thing already :) |
21:30:59 | * | Trustable joined #nim |
21:34:29 | dom96 | lotzz: It's the component that interprets Nim code at compile-time and executes it |
21:39:58 | * | MJCaley quit (Quit: MJCaley) |
21:40:55 | * | yglukhov quit (Remote host closed the connection) |
21:52:48 | * | S1tiSchu is now known as SitiSchu |
21:55:53 | FromGitter | <ZarsBranchkin> How would I properly import such procedure(the `get_environment`)? https://i.imgur.com/cdKLzxb.png |
21:56:30 | * | yglukhov joined #nim |
21:56:52 | FromGitter | <ZarsBranchkin> The struct right now is defined as: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5a987723e4ff28713ae240d2] |
21:58:16 | PMunch | Did you just take a picture of text? :P |
21:58:47 | FromGitter | <ZarsBranchkin> heh, I guess it wasn't that long, could have pasted it here |
21:58:54 | FromGitter | <ZarsBranchkin> not sure how codeblocks are brought to IRC |
21:59:06 | PMunch | They are just a link to gitter |
21:59:16 | FromGitter | <ZarsBranchkin> oh... right, then would have made more sense |
21:59:33 | PMunch | Mostly on IRC you would use a text sharing service anyways |
21:59:46 | PMunch | Like pastebin or ix.io |
22:00:24 | PMunch | I've even crated a shortcut to create an ix.io paste from my current selection and put the link in my clipboard |
22:00:46 | * | yglukhov quit (Ping timeout: 256 seconds) |
22:01:23 | FromGitter | <ZarsBranchkin> Yeah, sounds useful |
22:02:21 | dom96 | the thing that bothers me about ix.io is that I'm pretty sure it has a rick roll favico |
22:03:27 | FromGitter | <ZarsBranchkin> Here, text as text: https://clbin.com/V6cS9 |
22:04:48 | FromGitter | <ZarsBranchkin> Previously I just defined simple procedure as `get_environment`, but that resulted in failed symbol lookup, so I guess I have to somehow get the procedure from object |
22:05:10 | * | couven92 joined #nim |
22:05:56 | PMunch | dom96, haha, yes it does have Rick Astleys (sp?) face as it's favicon |
22:07:22 | * | xkapastel joined #nim |
22:11:57 | * | couven92 quit (Ping timeout: 240 seconds) |
22:13:04 | * | Jesin joined #nim |
22:14:25 | * | nsf quit (Quit: WeeChat 2.0.1) |
22:15:20 | * | Jesin quit (Remote host closed the connection) |
22:16:44 | * | Trustable quit (Remote host closed the connection) |
22:17:18 | * | couven92 joined #nim |
22:23:30 | FromGitter | <zacharycarter> just built the react/redux front-end for the product I've been working on since last summer as a static app and put it on s3 :D |
22:23:43 | FromGitter | <zacharycarter> was a somewhat painful process |
22:25:31 | FromGitter | <zacharycarter> would be interesting to do such a thing for karax maybe |
22:26:19 | * | d10n-work joined #nim |
22:29:05 | dom96 | https://nim-lang.org/blog/2018/03/01/version-0180-released.html |
22:29:35 | FromGitter | <ZarsBranchkin> Blah, real confused right now. Is there a way to cast pointer to procedure? |
22:29:59 | * | PMunch quit (Quit: leaving) |
22:30:01 | FromGitter | <ZarsBranchkin> Want to call C function, but it's passed as pointer to struct |
22:31:59 | FromGitter | <zacharycarter> yes |
22:32:05 | FromGitter | <zacharycarter> @ZarsBranchkin ptr () |
22:32:10 | FromGitter | <zacharycarter> sorry |
22:32:18 | FromGitter | <zacharycarter> `ptr ()` |
22:32:46 | FromGitter | <zacharycarter> `[]` will dereference the pointer |
22:32:52 | FromGitter | <zacharycarter> if you need to cast it |
22:33:30 | Araq | use c2nim |
22:34:03 | FromGitter | <zacharycarter> +1 |
22:34:48 | FromGitter | <ZarsBranchkin> Tried to, but wasn't sure how to deal with c2nim errors, didn't like preprocessors |
22:35:14 | FromGitter | <mratsim> try nimgen: https://github.com/genotrance/nimgen |
22:35:57 | * | Jesin joined #nim |
22:36:36 | FromGitter | <mratsim> @dom96 no HN or Reddit post? |
22:37:09 | federico3 | oh? when was the release? |
22:37:21 | FromGitter | <mratsim> 10 min ago? :P |
22:37:25 | FromGitter | <zacharycarter> @ZarsBranchkin - run your code through the gcc preprocessor first |
22:37:28 | FromGitter | <zacharycarter> then c2nim it |
22:37:41 | dom96 | mratsim: posted on reddit |
22:37:44 | FromGitter | <ZarsBranchkin> oh, makes sense |
22:37:46 | dom96 | somebody else should post on HN |
22:37:57 | dom96 | Pretty sure they immediately drag down anything I post now :P |
22:38:09 | FromGitter | <mratsim> I don’t have much luck on HN as well ... |
22:38:16 | FromGitter | <zacharycarter> I have never posted on HN |
22:38:28 | FromGitter | <zacharycarter> I just lurk |
22:38:32 | dom96 | well do let me know if one of you posts it |
22:38:53 | FromGitter | <mratsim> I don’t see it neither on /r/programming nor on /r/nim |
22:39:13 | federico3 | HN is quite an echo chamber |
22:39:26 | dom96 | https://www.reddit.com/r/programming/new/ |
22:39:28 | dom96 | It's right there |
22:42:46 | FromGitter | <Vindaar> @dom96 both the links to the numeric and poly bullet points point to https://github.com/lcrees/polynumeric. I guess both should be one? |
22:43:10 | FromGitter | <Vindaar> *of the |
22:43:16 | dom96 | huh? where? |
22:43:25 | dom96 | oh, in the changelog |
22:43:27 | FromGitter | <zacharycarter> actually araq: I think I was already working on such a concept at one point - https://github.com/zacharycarter/zax - but I don't think I was approaching it correctly... I could try to pick up the project again - but I'd probably need some help answering questions. |
22:43:28 | FromGitter | <Vindaar> yep |
22:43:50 | FromGitter | <mratsim> Funny bug 1 based indexing is broken: https://github.com/nim-lang/Nim/issues/6675 ;) |
22:44:15 | dom96 | fixed, thanks. |
22:44:32 | FromGitter | <mratsim> This appears twice: Fixed “BackwardsIndex: converter + [] + unrelated type[^1]: lib/system.nim(3536, 3) Error” (#6692) ⏎ Fixed “BackwardsIndex: converter + [] + unrelated type[^1]: lib/system.nim(3536, 3) Error” (#6692) |
22:45:07 | dom96 | heh, maybe I should just wait for all the mistakes to roll in :) |
22:45:29 | dom96 | So... anybody gonna submit to HN? |
22:45:46 | FromGitter | <Vindaar> I've never posted there |
22:45:48 | FromGitter | <mratsim> I can sacrifice my account |
22:45:59 | FromGitter | <mratsim> “For the North" |
22:46:14 | FromGitter | <zacharycarter> @Araq - for instance - is there a way to render a karax block as HTML? I think that's how react does this... |
22:46:41 | FromGitter | <zacharycarter> I don't mind doing the HN thing either - I just don't know how much my account having never posted before, is going to influence the post ranking :/ |
22:46:49 | dom96 | mratsim: You know nutthinnn |
22:47:38 | FromGitter | <mratsim> "Nim language v0.18.0 released!” —> fine title? |
22:47:57 | FromGitter | <mratsim> should I add, syntax of Python, Speed of C, Power of Lisp? |
22:48:44 | dom96 | sure |
22:48:47 | dom96 | nah |
22:49:35 | FromGitter | <mratsim> Okay, my mouse is hovering over the submit button, any last words? |
22:49:56 | FromGitter | <zacharycarter> In nomine Patris, et Filii, et Spiritus Sancti. Amen |
22:50:31 | FromGitter | <mratsim> Or as we said in Counter Strike “Fire in the hole” —> Kaboom |
22:50:52 | * | couven92 quit (Ping timeout: 240 seconds) |
22:51:02 | FromGitter | <mratsim> Check it: https://news.ycombinator.com/newest, no direct link HN algo detect that |
22:51:26 | FromGitter | <zacharycarter> upd |
22:51:51 | dom96 | apparently even going to /newest can detect brigading |
22:52:02 | dom96 | so maybe don't everyone upvote immediately :) |
22:54:13 | FromGitter | <Vindaar> When are the docs going to be updated? |
22:55:04 | * | jxy_ quit (Quit: leaving) |
22:55:47 | dom96 | they already weere |
22:55:48 | dom96 | *were |
22:56:00 | dom96 | apparently not |
22:56:02 | dom96 | Araq: ^ |
22:56:04 | FromGitter | <Vindaar> oh? just checked and couldn't find the strformat |
22:56:08 | FromGitter | <Vindaar> ah |
22:56:26 | dom96 | yeah, it's possible that it wasn't generated |
22:56:44 | FromGitter | <Vindaar> ok |
22:56:53 | dom96 | hrm, no |
22:56:57 | dom96 | looks like it wasn't updated |
22:58:04 | Araq | I uploaded new docs to a 0.18.0 directory |
22:58:14 | dom96 | I uploaded a strformat.html file for now |
22:58:40 | dom96 | I should probably just make a symlink to the 0.18.0 directory from 'docs' |
22:58:49 | dom96 | that'll work, right? :) |
22:58:59 | Araq | maybe |
23:00:35 | dom96 | yep, works |
23:06:47 | FromGitter | <zacharycarter> front paged :D |
23:09:20 | dom96 | yay |
23:17:21 | dom96 | 52 users on nim-lang.org right now :) |
23:18:51 | FromGitter | <zacharycarter> 👍 |
23:21:04 | FromGitter | <cabhishek> there is typo ```Proc toCountTable now produces a CountTable with values correspoding to the number of occurrences of the key in the input. It used to produce a table with all values set to 1.``` |
23:21:15 | FromGitter | <cabhishek> correspoding -> corresponding |
23:22:10 | dom96 | thanks |
23:27:10 | FromGitter | <Bennyelg> nim 018.0 |
23:27:11 | FromGitter | <Bennyelg> hooah |
23:32:55 | FromGitter | <Bennyelg> nim installed from dlevel i head 0.17.3 but I tried to fetch 0.18.0 without success. ⏎ I tried. ⏎ git pull ⏎ then, ⏎ bin/nim c koch ... [https://gitter.im/nim-lang/Nim?at=5a988da7458cbde557e4d7c1] |
23:33:15 | * | ipjk joined #nim |
23:33:48 | dom96 | ./koch boot -d:release |
23:34:40 | FromGitter | <Bennyelg> thanks :D |
23:37:25 | ipjk | Congratulations on the release! |
23:39:06 | dom96 | Thanks :) |
23:39:43 | FromGitter | <zacharycarter> yeah - thank you guys for the hard work! |
23:40:48 | dom96 | When I see someone write "Nim transpiles to C" it makes me twitch |
23:42:33 | dom96 | but alas, correcting it seems rude :) |
23:43:09 | * | Jesin quit (Quit: Leaving) |
23:51:42 | dom96 | looks like the HN post was dragged down :/ |
23:53:35 | * | MJCaley joined #nim |
23:57:29 | arnetheduck | doesn't nim transpile to c? |