<< 01-03-2018 >>

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:36FromGitter<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:44GitDisc<spaceghost> To me, none of it matters, the numbers don't even have to exist, let alone start at something called 0.
00:31:25GitDisc<spaceghost> I do know I'm left-handed and the 1 is more comfortable to reach for than the 0. :p
00:32:02FromGitter<krux02> well for me it does matter. The picture in my head breaks otherwise
00:32:46FromGitter<krux02> i can type a 0 with the space key
00:35:13GitDisc<spaceghost> For me, the enemy's gate is down, 0 or 1 or something rather imaginary, it's always down.
00:46:44FromGitter<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:59FromGitter<zetashift> eg from root/src/main.nim and it builds it too root/bin/main.exe
00:47:16FromGitter<zetashift> can't find a nims thing for it but I swear there was one
00:49:48FromGitter<cabhishek> @zetashift `nim c --o:root/bin/main root/src/main.nim`
00:50:12FromGitter<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:32GitDisc<athairus> hi everyone, I'm looking to see if nim fits my project's needs
05:41:19GitDisc<athairus> I'm creating a multi-system emulator frontend, making my performance requirements about as high as a game engine's
05:41:44GitDisc<athairus> but what I'm looking for most of all is to see if nim can save me time
05:42:07GitDisc<athairus> what Qt bindings would you folks recommend?
06:00:32*r3d9u11 quit (Remote host closed the connection)
06:02:27CalinouI'm not aware of any usable Qt bindings for Nim… Qt is really difficult to bind to anything
06:02:38Calinouso far, the only usable Qt bindings are written in Python and Go
06:02:43FromGitter<cabhishek> try https://github.com/yglukhov/nimx
06:03:09Calinou(the above isn't native)
06:03:33Calinouthere'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:05GitDisc<athairus> I see... thanks guys!
06:04:44*watzon joined #nim
06:05:01Calinouit'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:19FromGitter<cschardt> > **<Calinou>** there's no guarantees it supports things like hiDPI:
07:10:20FromGitter<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:10Arrrrparseopt1 lacks of this proc https://nim-lang.org/docs/parseopt2.html#initOptParser,seq[string]
07:29:38Calinou@cschardt yes, but everything should be scaled and rendered at an higher resolution in this case (both fonts and graphics)
07:45:39FromGitter<mratsim> There are QML bindings, 2 iirc not sure how they are maintained though
07:47:33AraqArrrr, ah yeah, so that is the crucial difference between parseopt and parseopt2...
07:48:31AraqI need 'cmdLineRest' though and parseopt2's says "do not use"
07:55:04FromGitter<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:19Araqexactly
07:56:09Araqyou can add a comment like
07:56:44Araq# ensure we only evaluate once even if the expression has side effects
07:56:55Araqso 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:42FromGitter<andreaferretti> @mratsim thank you, it would seem oyu're right
08:36:09FromGitter<andreaferretti> Will fix it soon
08:40:59*vlad1777d joined #nim
08:55:25FromGitter<mratsim> I can do the pr this morning, I'll fix opencl, Nimcuda and nim-clblast
08:55:43FromGitter<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:49FromGitter<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:53FromGitter<Bennyelg> any suggestions
09:19:04PMunchHmm, 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:11PMunchJust guessing by the way
09:19:40FromGitter<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:31ArrrrI thought here was one already
09:23:35Arrrr*there
09:24:20FromGitter<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:53ArrrrI thought he was suggesting one
09:25:09FromGitter<andreaferretti> no I meant there actually is one
09:29:52ArrrrFor some reason now += doesn't work with different ints (int16, int)
09:34:00FromGitter<mratsim> Oh? inside in regular proc? I know that templates change stuff but I didn’t get any issue with covnerters otherwise
09:35:12ArrrrYes, it was inside a template
09:35:51FromGitter<mratsim> inside a template I don’t think converters work, types must match strictly
09:36:17FromGitter<mratsim> I suppose the substition is done before the converter possibilities are checked
09:37:56ArrrrIn any case, it was working until now that i updated nimc to devel, so just saying in case it wasn't intended
09:38:27FromGitter<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:23FromGitter<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:35FromGitter<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:05Araqthousands.
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:38FromGitter<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:54Araqit's 'koch tests'
12:18:49FromGitter<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:41FromGitter<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:40PMunchZarsBranchkin, 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:18FromGitter<ZarsBranchkin> True, never been fan of index arithmetic. Pain to debug
12:24:32GitDisc<spaceghost> I figure being prone to off-by-one errors is almost as fun as being off by -1...3
12:28:40FromGitter<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:57FromGitter<ZarsBranchkin> oh no, I mentioned someone, hope it's same person
12:29:33FromGitter<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:52FromGitter<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:35planetis[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:01FromGitter<mratsim> Please don’t. I don’t car if I fail Araq interview
12:44:04FromGitter<mratsim> care*
12:44:27*natrys quit (Quit: natrys)
12:44:44FromGitter<ZarsBranchkin> Haha, bit too late for that. Such decision has to be made really early on
12:44:49planetis[m]recently tried fortran and julia and liked them better
12:45:13Araqthat ship has sailed, 0 indexing is here to stay
12:45:19FromGitter<mratsim> Until you need to call C from Julia or Fortran from Python ;)
12:45:21GitDisc<spaceghost> Just throw a wrench in all of it by refusing to support ordinal indexes.
12:45:53FromGitter<alehander42> i can't think of a more breaking change even if I try to :D :D
12:45:58Araqand my point was about keeping one's mind flexible
12:46:12Araqnot about the merits of 1-based indexing.
12:46:16jaco60in devel, is func only an alias to proc ?
12:46:22Araqyes
12:46:29FromGitter<mratsim> You can pretend to use 1-based index with `array[1..N, T]` actually
12:46:46Araqmratsim: yes and that's considered bad style in Nim.
12:46:56*yglukhov joined #nim
12:47:15FromGitter<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:54FromGitter<ZarsBranchkin> Hmmm, just got pretty whacky idea of trying to extend emacs with Nim, using the gnu-emacs new dynamic libraries feature
12:49:24FromGitter<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:32planetis[m]Araq: would a PR with factorial using a array would be accepted to replace the current implimentation?
12:49:53FromGitter<mratsim> @Bennyelg : https://nim-lang.org/docs/contributing.html
12:49:54FromGitter<Bennyelg> I just want to add some "break point" to some lib file
12:50:22planetis[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:53FromGitter<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:08PMunchspaceghost, 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:37dom96mratsim: update your choosenim
14:06:10dom96I would fail Araq's interview and I don't care.
14:06:22PMunchWhat interview?
14:06:25dom96Silly thing to judge someone on
14:06:58dom96Whether the person minds 1-based indexing or not
14:07:15PMunchAh, that's a short interview :P
14:07:19Araqit's not silly.
14:07:38AraqI don't want to work with programmers who fail at counting. :P
14:08:13PMunchI 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:04dom96well it depends how you ask the question I guess
14:09:12dom96But I would certainly prefer a language with 0 based indexing
14:09:56dom96No 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:07PMunchI 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:30PMunchWell some probably would :P
14:15:12FromGitter<mratsim> Thankfully Araq is not interviewing Nim core devs otherwise he would be alone :D
14:16:43AraqPMunch, 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:04Araqit is a moot point.
14:18:42FromGitter<krux02> well I like not to use an integer at all for not found ;r
14:18:44FromGitter<krux02> ;)
14:19:12federico3mratsim: indeed
14:19:19FromGitter<krux02> `proc find(...): Option[Natural]`
14:19:50FromGitter<krux02> or an even better name `proc indexOf(...): Option[Natural]`
14:20:08Araqirrelevant; if you want to keep the same efficiency you need an efficient way to encode the None state
14:20:21FromGitter<krux02> and I don't like this +1 everywhere inthe code where I access the end of a range
14:20:47Araqthe +1 is caused by the fact that you start at 0 ;-)
14:20:49FromGitter<krux02> how manay elements does a range have? well it is b-a+1
14:21:28Araqyes, that's math.
14:21:36Araqfighting math is stupid.
14:22:02planetis[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:21Araqwe have exclusive ranges, they are spelt ..<
14:22:41Araqa solution so good Swift copied it.
14:22:52FromGitter<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:18Araqyou only think this way about "cursors" because you're trying hard to rationalize the starting point at 0
14:23:31FromGitter<krux02> well it does make a lot of senes
14:23:59Araqin 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:20GitDisc<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:49dom96Araq: 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:44FromGitter<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:47Araqfor i in 1..4
14:26:47GitDisc<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:52FromGitter<mratsim> that’s because years are one-based ; and it’s completely broken for BCE years
14:27:02Araqfor i in countdown(4, 1)
14:27:10Araqfor i in 0..<4:
14:27:21Araqfor i in countdown(4-1, 0) ?
14:27:35Araqyour superior way of doing things breaks symmetry
14:27:48dom96Please just stop
14:27:52Araqand assumes you have a sentinel you do not want to iterate over.
14:28:01dom96People will begin leaving because they fear you changing Nim to use 1-based indexing
14:28:21AraqI won't but the proponents of 0 based indexing have no good arguments. :-)
14:28:34*endragor joined #nim
14:29:09dom96They do: it's consistent with most languages out there
14:29:14dom96That's a pretty solid argument
14:29:25Araqthat's the "Flies eat shit" argument.
14:29:44livcdDo they eat shit thought ? I thought they just lay eggs there
14:29:48livcdthough*
14:30:31Araqdom96, also that was not the argument that I read here in #nim ;-)
14:30:53dom96Araq: Right, shall we release before my next lecture?
14:31:01dom96can we do it in 1.5 hours?
14:31:18AraqI broke travis and I'm not sure why ...
14:31:29dom961-based indexing? :P
14:32:49dom96"The job exceeded the maximum time limit for jobs, and has been terminated."
14:32:51dom96Travis is shit
14:33:47*endragor quit (Ping timeout: 276 seconds)
14:33:53dom96so what do we do with nre?
14:34:44Zevvreplace it by Lua patterns :)
14:35:32FromGitter<ZarsBranchkin> Hah, Lua patterns are fun to write
14:36:04Zevvhttps://github.com/zevv/nimpat
14:36:46FromGitter<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:01FromGitter<ZarsBranchkin> Sooo might be able to write library, that allows easy Nim integration in emacs. Could be pretty exciting
14:40:37Araqdom96: add a .deprecated top level statement?
14:41:11dom96okay, so we are deprecating it then
14:41:23Araqdunno
14:41:26Araqstart a poll
14:41:42dom96btw choosenim was already mentioned on previous release articles
14:41:47dom96so I will mention it in this article too
14:41:50Araqit's not like we spend time maintaining it
14:41:56dom96Up to you whether you want it in the install page
14:42:36dom96I'm going to deprecate it, hopefully people who it affects will get in touch
14:42:47Araqthe proxy exes make me nervous, so no.
14:43:21Araqespecially now that I've looked at argument parsing and forwarding again
14:43:50Araqwas it tested with arguments that have spaces in them?
14:43:54dom96alright, I won't argue but will swiftly redirect all questions regarding why it's missing to you :)
14:44:02FromGitter<nitely> dom96: are all reasons for nre existence been solved? https://github.com/flaviut/nre#why
14:44:18FromGitter<nitely> also, I've read more than once "use nre, re is buggy"
14:44:21Araqthese questions can be answered by a single word: QA.
14:44:49Araqnitely, no they are not. but we like re's API better
14:44:58dom96nitely: okay, I will postpone deprecation until next release
14:45:11dom96But will make an issue
14:45:13Araqand so want to fix re.nim instead of using nre.nim
14:46:32dom96there, done https://github.com/nim-lang/Nim/issues/7278
14:46:38dom96Araq: parseopt2 is fixed right?
14:46:51Araqyes.
14:47:10dom96Regarding choosenim, have you seen anybody complain about it being broken here?
14:47:55Araqthat's not what I understand by "QA"
14:50:56dom96spaces seem to work
14:51:58dom96I put a file inside a directory with a space and I can compile it
14:52:46*r3d9u11 joined #nim
14:52:51AraqZevv: looked at Nim's pegs?
14:53:04Araqdom96: ok, good to be sure about that.
14:53:20dom96Araq: Does that put your nervousness to rest? :)
14:53:32Araqit mitigates it
14:53:59Araqwhy do we need the proxies?
14:54:30dom96because windows doesn't support symlinks
14:54:51Araqwhy do we need the conceptual symlinks?
14:55:13dom96Because that's what choosenim is
14:55:18dom96it's a "symlink switcher"
14:55:54Araqok, so once we have PATH control we can just change the PATH, right?
14:56:45dom96that might work
14:56:48dom96but proxy exes work fine
14:57:09Araqyou need the PATH feature anyway though
14:57:43Araqfor the installation step at least
14:58:18dom96yes, we'll see how it goes
14:59:38Araqbtw we have path control on windows, you could use symlinks on Unix and path modifications on windows ;-)
15:01:07dom96okay
15:01:15dom96If it works :P
15:01:39Araqit would work really well, I do the same on WIndows to produce 32 and 64 bit versions of Nim
15:02:00dom96I'll try it with Nimble first
15:02:07dom96It currently uses a hacky .cmd script
15:02:11dom96as a "symlink"
15:02:24dom96So anyway, does this mean you approve of putting choosenim on the install page?
15:03:27Araqno. as I said, I want to review it
15:03:48*PMunch quit (Quit: Leaving)
15:04:26dom96so review it
15:05:11dom96just run the script, it won't hurt you
15:06:13AraqI'm trying to fix the DLL tests
15:07:45dom96Which breaking changes in particular should I highlight?
15:08:21dom96Definitely the fact that `[]` raises IndexError
15:13:11Araqthe BackwardsIndex thing?
15:13:27Araqbut focus on the features instead
15:13:44Araqwe have custom pragmas, runnableExamples and strformat
15:13:59*yglukhov quit (Read error: Connection reset by peer)
15:14:11Araqand asyncjs
15:14:24Araqand a TLSF allocator
15:14:33*yglukhov joined #nim
15:14:35Araqpretty good stuff in this release
15:15:50dom96This is a breaking release
15:15:59dom96I'm highlighting the things to be aware of
15:16:32dom96What does the BackwardsIndex thing break?
15:17:18FromGitter<krux02> dom96: it breaks list comprehension.
15:17:56dom96I'm focusing on things that will affect many people
15:18:26FromGitter<krux02> dom96: The backwards index only breaks list comprehension.
15:18:46dom96That's not really a breaking change, it's a regression
15:18:56dom96so it's not a conscious breaking change that we should document
15:19:37FromGitter<krux02> just write list comprehension needs braces instead of brackets now.
15:20:09FromGitter<krux02> maybe I list comprehension should get a deprecation notice.
15:21:07Araqkrux02: lc is not broken since I have not merged your PR
15:21:30Araqwill merge it after 0.18 when the concept issues have been ironed out
15:22:12Araqdom96: what broke my programs was the ptr array of char change
15:22:24Araqvar x: array[5, char]
15:22:31dom96okay, i'll mention that too
15:22:40dom96got an example that demonstrates it?
15:22:44Araqecho x
15:22:57Araqtry it.
15:26:51dom96ok
15:26:56dom96Onto features :)
15:27:01dom96This will be the best release article ever
15:33:27dom96actually
15:33:29dom96I just remember
15:33:30dom96ed
15:33:35dom96I want to change the strformat docs
15:34:20dom96IMO we should encourage people to use ``fmt`` not ``&``
15:34:55FromGitter<krux02> I think the $ operator and the & operator make the code look ugly.
15:35:23dom96Araq: You don't mind do you?
15:35:45AraqI do.
15:36:01Araq& is easier to use as it works with \n
15:36:30Araqit's also easier to remember as it produces a concatenation expression
15:36:33dom96I'll document that gotcha
15:36:45Araqvon mir aus
15:36:50FromGitter<mratsim> @dom96 don’t forget about the HSlice (I think the regressions introduced were fixed but not sure)
15:37:22AraqI introduced & because it's easier to use, it makes no sense to encourage 'fmt'
15:37:27Araq'fmt' is worse.
15:37:28FromGitter<mratsim> And Static[T] fixes :shipit:
15:37:43FromGitter<krux02> dom96: the backwards index broke the default implementation for myType[^1].
15:37:52dom96I dislike '&' with a passion
15:38:00AraqI don't care.
15:38:09dom96and you said you wanted PRs to fix this
15:38:14dom96so I'm fixing it
15:38:17Araqnope.
15:38:22dom96`&` should be the alias
15:38:24FromGitter<ZarsBranchkin> Huh, isn't & concat, not format?
15:38:24Araqdo not touch this.
15:38:40FromGitter<krux02> & is concat
15:39:03dom96Well I guess we're not releasing then
15:39:49Araqit's & and you're way too late to bring this up now.
15:40:03FromGitter<krux02> I just think `concat(string(b)," - ",string(d))` would look nicer than: `$b & " - & $d"`
15:40:11Yardanico:D
15:40:25FromGitter<krux02> but I don't think that & should be touched.
15:40:36FromGitter<krux02> it is there and it won't go anywhere.
15:40:39dom96Showing thousands of examples with `&` is a mistake
15:40:50dom96`&` will still be there
15:41:00dom96I just don't want people to use it unless they have to
15:41:15Araqyes but that's just your personal opinion.
15:41:36FromGitter<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:44FromGitter<mratsim> I though we were supposed to use `“$# - $#” % [b, d]` ;)
15:41:47FromGitter<krux02> or toString
15:41:59FromGitter<krux02> I also dislike %
15:42:13FromGitter<krux02> I wrote a string interpolation macro once.
15:42:32FromGitter<krux02> `s"$b - $d"`
15:42:48FromGitter<krux02> very short and very simple
15:42:53FromGitter<krux02> not perfect, but does the job
15:43:04Araqyou can't encourage people to use the either error prone or inconsistent 'fmt' just because it touches your sense of beauty.
15:43:11FromGitter<ZarsBranchkin> Don't really see the fuss with operators vs procedures here, don't mind either, just string operators are shorter
15:43:42Araqbesides, we had this discussion months ago.
15:43:56FromGitter<krux02> yes no point in arguing now.
15:44:12FromGitter<krux02> It.s just an ugly part of the language, that won't change for this release.
15:46:04dom96See, i'm not the only one who thinks it's ugly :)
15:46:13dom96If we leave it in now it'll be harder to fix later
15:46:35Araqthere is nothing to fix. we have unary & and later we'll add unary %
15:46:39FromGitter<krux02> that's true for everything
15:46:48dom96yeah, and that's another reason to discourage people from using `&`
15:46:51dom96because you want `%`
15:46:54FromGitter<krux02> unary % what should that be good for?
15:46:59Araqi18n
15:47:35Araqlook, 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:30jaco60@Araq too bad... Are they archived somewhere? I'm just coming and i'm curious about the various pro/cons arguments
15:49:38Araqyou don't have to use strformat, you don't have to use strformat.&. but don't patronize others based on your ignorance.
15:50:21Yardanicojaco60, well, you can search nim irc logs, but it won't be easy :P
15:50:31jaco60:)
15:50:36Yardanicojaco60, well, there's no search feature at all - https://irclogs.nim-lang.org/
15:50:59FromGitter<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:45FromGitter<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:05FromGitter<alehander42> other viable alternative*
15:53:07FromGitter<nitely> I like & because it does not raise errors FWIW. Also, for breaking long strings (is is a better way?)
15:53:28FromGitter<nitely> 1) there a better way
15:53:30FromGitter<alehander42> (I am talking about &"..")
15:53:55FromGitter<ZarsBranchkin> Wait, what does unary & do?
15:53:57FromGitter<nitely> Ah woops
15:54:05YardanicoZarsBranchkin: string formatting from strformat module
15:54:08FromGitter<alehander42> interpolation
15:54:14FromGitter<alehander42> &"{2 + 2}" == "4"
15:54:15FromGitter<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:35FromGitter<mratsim> ah I didn’t know there was &”…"
15:54:47Yardanicoit was only introduced after 0.17.2
15:54:51FromGitter<ZarsBranchkin> Right, didn't know as well. And what is purpose of unary % then?
15:54:54FromGitter<alehander42> you missed the three day long discussions about ? :D
15:55:01FromGitter<alehander42> it was %".." before that (for a day?)
15:55:08FromGitter<mratsim> Sometimes I just tune out and roll my own crypto ;)
15:55:29FromGitter<alehander42> bad boy
15:55:59FromGitter<mratsim> But wasn’t there a discussion to use `&[…]` to borrow a reference as well?
15:56:02FromGitter<alehander42> afaik %".." would be used for i18n
15:56:37FromGitter<mratsim> so we would have `&”…”` for strformat and `&[…]` for borrowing?
15:56:57Araqnonsense, nobody ever talked about & for "borrowing"
15:57:18FromGitter<mratsim> okay, must have dreamed it up
15:57:22Araqyup
16:00:54FromGitter<alehander42> borrowing :O
16:01:08FromGitter<alehander42> v2 gets more and more interesting
16:03:07*douglascorrea joined #nim
16:06:35*natrys joined #nim
16:07:27FromGitter<dom96> @alehander42 yes, well, I wanted f"" since the very beginning... but that ship has sailed
16:07:51Yardanicodom96: f would still have same limitations as fmt though
16:08:27Yardanicobut yeah, it's much shorter
16:08:31FromGitter<dom96> Yes, and I wish we just taught people the difference between f"" and f("")
16:08:49FromGitter<dom96> Nim programmers should know this anyway
16:09:32FromGitter<ZarsBranchkin> wait, so if f"" is different from f(""), then f"" is also different from f ""?
16:09:43Araqyes.
16:09:45FromGitter<dom96> yep
16:10:04FromGitter<ZarsBranchkin> Curious, only have used r"" as of now, without much thinking
16:10:08Araqonly f"" is a raw string literal where \ loses its special meaning
16:10:28Araqwell identifierHere"" is the generalization of r""
16:13:44*rauss joined #nim
16:21:57*natrys quit (Ping timeout: 252 seconds)
16:28:24FromGitter<aboisvert> In Karax, is there a way to trigger re-rendering?
16:29:04FromGitter<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:34FromGitter<aboisvert> In my case, this happens in an ajaxGet() callback, after I get the data that I wanted.
16:30:19FromGitter<alehander42> I used `redraw()` in the past
16:31:02FromGitter<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:02FromGitter<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:59FromGitter<aboisvert> note that I'm not using any `VComponent` yet, i only have a global renderer
16:36:09FromGitter<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:44FromGitter<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:53FromGitter<aboisvert> That didn't work either ... I'm digging.
16:41:26*natrys joined #nim
16:44:24FromGitter<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:32FromGitter<alehander42> I remember in the past, I just randomly changed order sometimes
16:45:14FromGitter<dom96> Tried marking the proc type with {.gcsafe.}?
16:51:42*Trustable joined #nim
16:56:57FromGitter<mratsim> completely offtopic but Python relative imports are so wacky there are 2M results on Google ...
16:57:45FromGitter<alehander42> i am using the js backend, I didn't think it would make a difference :D
16:58:44FromGitter<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:27FromGitter<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:51FromGitter<krux02> I think relative imports are a bad idea.
17:10:18FromGitter<krux02> just save a few characters in your import line, but then you have no idea where things come from.
17:12:17FromGitter<andreaferretti> wow, this is cool! https://github.com/Serenitor/embeddedNimScript
17:14:10FromGitter<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:43ZevvAraq: 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:15FromGitter<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:39ZevvYeah, 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:52ZevvPython is simply too huge
17:26:12ZevvNim fills my gap just right
17:28:26*byte512 joined #nim
17:30:31ZevvYou've been doing Lua profesionally?
17:31:49FromGitter<ZarsBranchkin> Nope, only as amateur, but it did manage to introduce me to world of programming quite nicely
17:32:26ZevvTrue, it's pretty lean and self contained, it probably makes for a good start
17:33:48FromGitter<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:25FromGitter<ZarsBranchkin> My planning skills in general are pretty weak, heh. At least have improved on that
17:34:42ZevvTrue, 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:26ZevvDucktyping is fun, but bites me in the foot too often
17:36:41ZevvWriting 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:20ZevvTogether with portability and asyncdispatch I'm happy as a toddler
17:37:35FromGitter<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:45Zevvyeah :)
17:38:17FromGitter<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:22ZevvI'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:27federico3what is it?
18:28:53Zevvindustrial router with tons of features
18:29:16Araqdom96, so a compromise, ok
18:29:37Zevvfederico3: http://www.mulogic.com/rsa-4222.html
18:29:56dom96Araq: yes, yay
18:30:37Araqthat's the last thing we'll do before the release, ok?
18:30:58dom96sure
18:31:05federico3I was hoping to get 6664 in
18:31:13Araqoh my :-)
18:31:48dom96I fear that's too risky
18:32:04dom96it would be nice to merge that and have a period where people test it as part of 'devel'
18:32:14Araqnimble install nimx
18:32:14Araq Tip: 3 messages have been suppressed, use --verbose to show them.
18:32:14Araq Error: Nimble cannot use an older stdlib than the one it was compiled with.
18:32:14Araq ... Stdlib in 'C:\Users\rumpf\projects\nim\lib' has version: 0.17.3.
18:32:14Araq ... Nimble needs at least: 0.18.0.
18:32:18Araq:-)
18:32:26Araqnimble is ahead of its time
18:32:31federico3dom96: a bake-in period before the next release? fair enough
18:32:43Zevvfederico3: is that the SSL/TLS verification?
18:32:48Araqyeah, we also have times.nim improvements
18:32:48ZevvI vote for that as well
18:32:53dom96next release won't take as long as this one, I hope :)
18:32:58federico3Zevv: it is (but the verification is not enabled by default)
18:33:08dom96Araq: yay, I'm quite proud of that error :)
18:33:27Araqdom96, well it makes nimble unusable ?
18:33:37AraqI wonder why travis is not red because of this
18:33:59dom96hm
18:34:37federico3[according to made-up statistics 9 Nim devs out of 10 wish for more frequent releases]
18:35:34Zevvthe 10th one is just always running from git devel?
18:35:47dom96the 10th one is an Arch user :P
18:35:54FromGitter<zetashift> isn't there a codegen bug blocking 0.18.0?
18:36:15dom96Araq: Here is the relevant code: https://github.com/nim-lang/nimble/blob/master/src/nimblepkg/nimscriptsupport.nim#L282
18:36:53dom96It'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:48dom96How did you compile Nimble?
18:38:03dom96It must have been using some other stdlib
18:38:09*Trustable quit (Remote host closed the connection)
18:43:07dom96Araq: The documentation under the heading "Standard format specifier" confuses me
18:43:32dom96It'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:24dom96oh I see, those are implemented in the module itself so it makes sense to document them there too
19:04:44Araqdom96, the substrings/sublanguage is passed to the format procs
19:04:54dom96yeah
19:04:56Araqdom96, I compile nimble as koch does it
19:05:06FromGitter<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:27Araqdon't remember the details but it was a long painful path to get there
19:05:39Yardanicodata-man: I use ext4 for root and btrfs for /home
19:05:44Araqoh
19:05:45Yardanicobecause compression and deduplication (if needed)
19:05:48Araqsorry, my bad
19:06:01AraqI bumped the version yesterday for testing and then reverted
19:06:23Araqso ... 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:59dom96https://github.com/nim-lang/Nim/compare/strformat-docs
19:10:10jaco60terminology question: what means "pure" and "impure" in "pure/impure libraries"
19:10:12jaco60?
19:10:24dom96pure - no runtime dependencies
19:10:30dom96impure - some runtime dependencies
19:10:35jaco60thanks
19:12:47dom96Python's f-string's can actually interpolate after the ':' as well
19:16:09FromGitter<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:24FromGitter<zetashift> I was thinking about NixOS recently! I'm not sure if I should do a Linux dualboot or a hackintosh
19:22:39Yardanicodata-man: what was the reason?
19:22:51Yardanicozetashift: well, I tried macOS, it's just not for me :)
19:22:59Yardanicoeverything worked on my hackintosh
19:25:00*yglukhov joined #nim
19:27:33Araqdom96, it's fine, now what "create pull request"?
19:28:19dom96Araq: I can just merge it if you approve
19:28:25FromGitter<data-man> @Yardanico: more packages, more convenient configuration, IMO. And my Arch is often buggy. :-D
19:28:38subsetparkNix has more packages than Arch??
19:30:38Yardanicodata-man - really, more packages?
19:30:43Yardanicothan arch repos + AUR?
19:32:00Yardanicosubsetpark, probably it's easier to submit packages to nix repos
19:32:17dom96Araq: So I can merge it right?
19:38:01*PMunch joined #nim
19:49:40*Vladar quit (Quit: Leaving)
19:50:51dom96Okay, so I described every feature except custom pragmas
19:55:00FromGitter<mratsim> Arch is buggy? Did Poettering release yet another breaking daemon?
19:58:30FromGitter<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:05Yardanicozetashift: ah, then it will be almost 100% possible to do, but a little bit harder
20:06:17Yardanicobut wifi/bluetooth is way harder to do in hackintosh for laptops
20:08:37GitDisc<awr> hello
20:09:04GitDisc<awr> are there any facilities in nim for allocating executable memory or do i have to break out VirtualProtect/mprotect
20:14:54Araqdom96, yes, I approved
20:15:13*sz0 quit (Quit: Connection closed for inactivity)
20:15:38dom96ok, merged
20:15:42dom96blog article is ready
20:15:54PMunchOooh, article?
20:16:01*donotturnoff quit (Ping timeout: 248 seconds)
20:16:47dom96release article
20:17:05PMunchOh cool, for 0.18?
20:18:51dom96yep
20:20:39GitDisc<spaceghost> I'm starting with a really small first project to first bind then reimplement PromyLOPh's pianobar and libpiano.
20:21:04FromGitter<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:02FromGitter<ZarsBranchkin> Right now I have `emacs_runtime`as `ptr object`, so in the generated C it get's different, uncompatible type
20:23:53PMunchI assume you set emacs_runtime as {.pure.}?
20:24:17FromGitter<ZarsBranchkin> hm, no, hadn't tried that yet
20:24:42PMunchhttps://github.com/nim-lang/Nim/issues/3795#issuecomment-177111740
20:30:30*lotzz joined #nim
20:34:54*yglukhov joined #nim
20:47:59FromGitter<ZarsBranchkin> finally figured it out. Had to use `{.importc: "struct emacs_runtime".}` Before I didn't include struct
20:48:19PMunchAh :P
20:48:49PMunchI thought you were trying to define it in Nim
21:07:14dom96wow, bountysource sure had a makeover https://www.bountysource.com/
21:08:20PMunchOh wow, yeah
21:08:37PMunchThat 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:59FromGitter<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:39Araqyeah karax should detect that
21:22:59*MJCaley joined #nim
21:23:00Araqit's a common gotcha to call redraw in postRender causing an endless redraw
21:23:31Araqon the other hand, it is logical this can't work :-)
21:24:52FromGitter<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:29dom96lotzz: 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:53FromGitter<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:52FromGitter<ZarsBranchkin> The struct right now is defined as: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5a987723e4ff28713ae240d2]
21:58:16PMunchDid you just take a picture of text? :P
21:58:47FromGitter<ZarsBranchkin> heh, I guess it wasn't that long, could have pasted it here
21:58:54FromGitter<ZarsBranchkin> not sure how codeblocks are brought to IRC
21:59:06PMunchThey are just a link to gitter
21:59:16FromGitter<ZarsBranchkin> oh... right, then would have made more sense
21:59:33PMunchMostly on IRC you would use a text sharing service anyways
21:59:46PMunchLike pastebin or ix.io
22:00:24PMunchI'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:23FromGitter<ZarsBranchkin> Yeah, sounds useful
22:02:21dom96the thing that bothers me about ix.io is that I'm pretty sure it has a rick roll favico
22:03:27FromGitter<ZarsBranchkin> Here, text as text: https://clbin.com/V6cS9
22:04:48FromGitter<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:56PMunchdom96, 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:30FromGitter<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:43FromGitter<zacharycarter> was a somewhat painful process
22:25:31FromGitter<zacharycarter> would be interesting to do such a thing for karax maybe
22:26:19*d10n-work joined #nim
22:29:05dom96https://nim-lang.org/blog/2018/03/01/version-0180-released.html
22:29:35FromGitter<ZarsBranchkin> Blah, real confused right now. Is there a way to cast pointer to procedure?
22:29:59*PMunch quit (Quit: leaving)
22:30:01FromGitter<ZarsBranchkin> Want to call C function, but it's passed as pointer to struct
22:31:59FromGitter<zacharycarter> yes
22:32:05FromGitter<zacharycarter> @ZarsBranchkin ptr ()
22:32:10FromGitter<zacharycarter> sorry
22:32:18FromGitter<zacharycarter> `ptr ()`
22:32:46FromGitter<zacharycarter> `[]` will dereference the pointer
22:32:52FromGitter<zacharycarter> if you need to cast it
22:33:30Araquse c2nim
22:34:03FromGitter<zacharycarter> +1
22:34:48FromGitter<ZarsBranchkin> Tried to, but wasn't sure how to deal with c2nim errors, didn't like preprocessors
22:35:14FromGitter<mratsim> try nimgen: https://github.com/genotrance/nimgen
22:35:57*Jesin joined #nim
22:36:36FromGitter<mratsim> @dom96 no HN or Reddit post?
22:37:09federico3oh? when was the release?
22:37:21FromGitter<mratsim> 10 min ago? :P
22:37:25FromGitter<zacharycarter> @ZarsBranchkin - run your code through the gcc preprocessor first
22:37:28FromGitter<zacharycarter> then c2nim it
22:37:41dom96mratsim: posted on reddit
22:37:44FromGitter<ZarsBranchkin> oh, makes sense
22:37:46dom96somebody else should post on HN
22:37:57dom96Pretty sure they immediately drag down anything I post now :P
22:38:09FromGitter<mratsim> I don’t have much luck on HN as well ...
22:38:16FromGitter<zacharycarter> I have never posted on HN
22:38:28FromGitter<zacharycarter> I just lurk
22:38:32dom96well do let me know if one of you posts it
22:38:53FromGitter<mratsim> I don’t see it neither on /r/programming nor on /r/nim
22:39:13federico3HN is quite an echo chamber
22:39:26dom96https://www.reddit.com/r/programming/new/
22:39:28dom96It's right there
22:42:46FromGitter<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:10FromGitter<Vindaar> *of the
22:43:16dom96huh? where?
22:43:25dom96oh, in the changelog
22:43:27FromGitter<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:28FromGitter<Vindaar> yep
22:43:50FromGitter<mratsim> Funny bug 1 based indexing is broken: https://github.com/nim-lang/Nim/issues/6675 ;)
22:44:15dom96fixed, thanks.
22:44:32FromGitter<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:07dom96heh, maybe I should just wait for all the mistakes to roll in :)
22:45:29dom96So... anybody gonna submit to HN?
22:45:46FromGitter<Vindaar> I've never posted there
22:45:48FromGitter<mratsim> I can sacrifice my account
22:45:59FromGitter<mratsim> “For the North"
22:46:14FromGitter<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:41FromGitter<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:49dom96mratsim: You know nutthinnn
22:47:38FromGitter<mratsim> "Nim language v0.18.0 released!” —> fine title?
22:47:57FromGitter<mratsim> should I add, syntax of Python, Speed of C, Power of Lisp?
22:48:44dom96sure
22:48:47dom96nah
22:49:35FromGitter<mratsim> Okay, my mouse is hovering over the submit button, any last words?
22:49:56FromGitter<zacharycarter> In nomine Patris, et Filii, et Spiritus Sancti. Amen
22:50:31FromGitter<mratsim> Or as we said in Counter Strike “Fire in the hole” —> Kaboom
22:50:52*couven92 quit (Ping timeout: 240 seconds)
22:51:02FromGitter<mratsim> Check it: https://news.ycombinator.com/newest, no direct link HN algo detect that
22:51:26FromGitter<zacharycarter> upd
22:51:51dom96apparently even going to /newest can detect brigading
22:52:02dom96so maybe don't everyone upvote immediately :)
22:54:13FromGitter<Vindaar> When are the docs going to be updated?
22:55:04*jxy_ quit (Quit: leaving)
22:55:47dom96they already weere
22:55:48dom96*were
22:56:00dom96apparently not
22:56:02dom96Araq: ^
22:56:04FromGitter<Vindaar> oh? just checked and couldn't find the strformat
22:56:08FromGitter<Vindaar> ah
22:56:26dom96yeah, it's possible that it wasn't generated
22:56:44FromGitter<Vindaar> ok
22:56:53dom96hrm, no
22:56:57dom96looks like it wasn't updated
22:58:04AraqI uploaded new docs to a 0.18.0 directory
22:58:14dom96I uploaded a strformat.html file for now
22:58:40dom96I should probably just make a symlink to the 0.18.0 directory from 'docs'
22:58:49dom96that'll work, right? :)
22:58:59Araqmaybe
23:00:35dom96yep, works
23:06:47FromGitter<zacharycarter> front paged :D
23:09:20dom96yay
23:17:21dom9652 users on nim-lang.org right now :)
23:18:51FromGitter<zacharycarter> 👍
23:21:04FromGitter<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:15FromGitter<cabhishek> correspoding -> corresponding
23:22:10dom96thanks
23:27:10FromGitter<Bennyelg> nim 018.0
23:27:11FromGitter<Bennyelg> hooah
23:32:55FromGitter<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:48dom96./koch boot -d:release
23:34:40FromGitter<Bennyelg> thanks :D
23:37:25ipjkCongratulations on the release!
23:39:06dom96Thanks :)
23:39:43FromGitter<zacharycarter> yeah - thank you guys for the hard work!
23:40:48dom96When I see someone write "Nim transpiles to C" it makes me twitch
23:42:33dom96but alas, correcting it seems rude :)
23:43:09*Jesin quit (Quit: Leaving)
23:51:42dom96looks like the HN post was dragged down :/
23:53:35*MJCaley joined #nim
23:57:29arnetheduckdoesn't nim transpile to c?