<< 29-09-2018 >>

00:04:11FromGitter<zacharycarter> @rayman22201 hrm - is there a docker image for 0.19.0 out?
00:04:17FromGitter<zacharycarter> because that's a relative trivial change to make
00:07:18FromGitter<bung87> I missed you live streaming?
00:10:59*puhuri6 joined #nim
00:12:47*puhuri6 quit (Remote host closed the connection)
00:15:12FromGitter<zacharycarter> no
00:15:17FromGitter<zacharycarter> it's in 11 hours
00:15:25FromGitter<zacharycarter> well 10 hours and 45 minutes I guess
00:15:49*brainproxy joined #nim
00:19:27FromGitter<bung87> ah 7pm in my timezone
00:22:15FromGitter<zacharycarter> I tried to do it early to accommodate as many as possible - but I imagine I screwed over those living west of me in the US
00:22:30FromGitter<zacharycarter> doh well - it'll be recorded
00:23:03FromGitter<rayman22201> Good question about the Docker image @zacharycarter. Idk who produces them / how they are created
00:24:22FromGitter<kdheepak> If I get a user input and am able to convert it to a integer, how to do then use that number for padding a string?
00:25:22FromGitter<rayman22201> 10 hours? Lol. 3am pst? I would love to show my support but I will definitely be sleeping. Lol.
00:27:23FromGitter<zacharycarter> yeah :/ I figured the majority of Nim users are EU based - and plus I like to start early, but I know most of those in the community based in the US will miss it
00:28:00FromGitter<zacharycarter> I'm going to hopefully start live-streaming more, especially once I resume work on a game engine / game
00:28:16FromGitter<zacharycarter> and I'll probably be doing those streams in the evenings
00:30:36FromGitter<rayman22201> No worries. Best of luck! Hope it goes well.
00:31:24FromGitter<rayman22201> It's true. I'm a minority timezone for Nim uses lol. I just have to accept it
00:31:32FromGitter<zacharycarter> yeah - me too :P
00:31:42FromGitter<zacharycarter> but hopefully that changes!
00:31:54FromGitter<zacharycarter> and maybe one day we can have a US based Nim conference or something
00:32:02FromGitter<zacharycarter> my backyard is open
00:32:06FromGitter<zacharycarter> :P
00:32:11FromGitter<zacharycarter> can go grab some beers and fire up the grill
00:32:51FromGitter<zacharycarter> srsly though - it'd be awesome to have a US Nim conference / meetup one day - Varriount and I have met up
00:33:04FromGitter<zacharycarter> but just once, it was for coffee - and then my life got stupid busy for a while
00:34:26FromGitter<rayman22201> A grill and beers is always fun. conference or not :-P
00:34:39FromGitter<rayman22201> You are East Coast US right?
00:35:08FromGitter<rayman22201> I live in Las Vegas actually. One of the conference capitals of the world. I'm just saying :-P
00:35:32FromGitter<zacharycarter> Yeah - Vegas is probably a much more attractive option than Opal Virginia lol
00:36:06FromGitter<zacharycarter> hell - even if we take the closest city to me - DC - Vegas is still a way better option
00:36:43FromGitter<rayman22201> convenient for me, very fun for everybody else. I like this plan :-P
00:37:29FromGitter<rayman22201> too bad no company here would touch Nim with a ten foot pole, but oh well.
00:38:20FromGitter<zacharycarter> well - I don't plan on being where I'm at for long
00:38:29FromGitter<zacharycarter> I'm working on getting my CV / website together
00:38:55FromGitter<zacharycarter> and then hunting for a new gig - either in the game development or systems programming world - whichever door I can kick my foot through first
00:39:10FromGitter<zacharycarter> and I imagine - that will come with re-location unless I find a job at Bethesda or something
00:41:10FromGitter<rayman22201> Well, I can tell you that slot machines have surprisingly terrible C or Java code. I don't work in that industry, but I have several friends that do.
00:42:01FromGitter<zacharycarter> I believe it
00:42:11FromGitter<zacharycarter> https://github.com/Microsoft/MS-DOS
00:42:50FromGitter<rayman22201> lol. Time to pull out my old Doom floppy disks :-)
00:42:57FromGitter<zacharycarter> :D
00:43:25FromGitter<zacharycarter> think I'm going to try to learn some assembly
00:43:28FromGitter<zacharycarter> reading through this
00:44:40FromGitter<rayman22201> It's actually a neat piece of history. Cool that they released it. Definitely learn assembly! It's worth it
00:44:55*amk quit (Ping timeout: 246 seconds)
01:01:02*redlegion_ joined #nim
01:06:02*amk joined #nim
01:07:41*elrood_ quit (Quit: Leaving)
01:08:05*amk quit (Client Quit)
01:35:28FromGitter<zacharycarter> reading - https://yurichev.com/writings/RE4B-EN.pdf - really good read so far
01:36:54*redlegion_ quit (Ping timeout: 252 seconds)
01:41:12*tzui quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
01:41:42*krux02 quit (Remote host closed the connection)
01:44:31FromGitter<rayman22201> cool!
01:47:06*a_b_m quit (Read error: Connection reset by peer)
02:00:01*Hornet_C joined #nim
02:01:52*Hornet_C quit (Remote host closed the connection)
02:07:18*oq27 joined #nim
02:09:36*oq27 quit (Remote host closed the connection)
02:11:46*smt quit (Read error: Connection reset by peer)
02:18:48*vlad1777d quit (Ping timeout: 245 seconds)
02:35:05*gangstacat joined #nim
02:39:48FromGitter<ivanflorentin> @zacharycarter cool!
02:40:42FromGitter<ivanflorentin> used to program assembly in 6502, z80... back in the days...
02:42:30*skrylar joined #nim
02:49:44*AliceGrove26 joined #nim
02:50:40FromGitter<zacharycarter> nice!
02:54:48*AliceGrove26 quit (Remote host closed the connection)
03:00:39FromGitter<kdheepak> @zacharycarter will you post the link here when you live stream?
03:39:25*dddddd quit (Remote host closed the connection)
03:48:37*chemist69 quit (Ping timeout: 252 seconds)
03:50:50*chemist69 joined #nim
04:45:22*miran joined #nim
04:48:07*nc-x joined #nim
04:50:54nc-x@kdheepak https://gitter.im/nim-lang/Nim?at=5baeb8bcef4afc4f28eea25d You don't need to `cast[TeacherRef](p)`. You can simply use type conversions like - TeacherRef(p).type, TeacherRef(p).name etc.
04:51:24nc-xhttps://nim-lang.org/docs/manual.html#statements-and-expressions-type-conversions Type casts are unsafe and should be only used when required.
05:15:18*skrylar quit (Remote host closed the connection)
05:23:24FromGitter<ephja> "For an object branch switch system.reset has to be used" I'm currently violating this rule for optimization purposes. at least it compiles right now when setting the discriminator directly
05:40:15nc-xephja: https://pastebin.com/vweB7YCg this compiles but gives runtime error `Error: unhandled exception: d is not accessible [FieldError]`. Uncomment `x.kind = b ` and now you get a segfault at runtime. Uncomment ` reset(x)` as well and now it works fine.
05:40:50nc-xSo afaict, you will hit the FieldError or segfault currently.
05:41:30nc-x(Though I don't know if the segfault is a bug or not.)
05:43:24nc-xYou can reassign it using object constructor without using reset() though.
05:44:48*nc-x quit (Quit: Page closed)
05:45:36*mstruebing1 joined #nim
05:46:20*nsf joined #nim
05:47:04FromGitter<ephja> yes that segfaults in nimGCunrefNoCycle. I wouldn't do it with references. I wonder if it sets anything other than the discriminator though
05:47:24FromGitter<ephja> I'm just trying to provide zero-cost abstractions
05:51:27*nc-x joined #nim
05:52:46*mstruebing1 quit (Remote host closed the connection)
05:53:52nc-xThere is this RFC for making object variants safer https://github.com/nim-lang/Nim/issues/6921 Don't know what is its status though. And then there is https://github.com/nim-lang/Nim/issues/8623 too.
05:54:03*nc-x quit (Client Quit)
06:14:25FromGitter<ephja> as long as you can do unsafe things with some explicit notation
07:00:40*jrm27 joined #nim
07:01:30*Trustable joined #nim
07:04:08*stefanos82 joined #nim
07:05:05*jrm27 quit (Remote host closed the connection)
07:07:22*jjido joined #nim
07:17:58FromGitter<mratsim> @kdheepak this is a hack: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5baf27261c100a4f29042178]
07:23:03*devilspgd22 joined #nim
07:23:49*nc-x joined #nim
07:24:44nc-xhttps://totallywearingpants.com/posts/nim-language-highlights/
07:25:08nc-xIt has been posted on both hn and reddit and is in need of upvotes.
07:28:09*devilspgd22 quit (Remote host closed the connection)
07:28:10*nc-x quit (Client Quit)
07:50:11*jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:03:37*gmpreussner joined #nim
08:04:35*gmpreussner_ quit (Ping timeout: 268 seconds)
08:12:42stefanos82question: does anyone knows a logging command or option for "./koch tests all"? I've got some error messages and cannot scroll all the way up. Should I rerun my tests and redirect my output to a file of my choice?
08:12:48stefanos82isn't there any simpler option?
08:17:57FromGitter<mratsim> export HISTSIZE=10000
08:18:04FromGitter<mratsim> 10000 lines of scrolling
08:18:41FromGitter<mratsim> or ./koch tests all > output.log
08:19:07FromGitter<mratsim> I don’t remember but you can pipe with the color code included and can open with less -R to still see the colors
08:19:15FromGitter<mratsim> maybe with tee
08:20:42stefanos82we really need a logging mechanism as part of the building / testing process
08:21:15stefanos82it doesn't make any sense to get error messages during the testing procedure without having them all in one place in the form of a table or something alike
08:21:21FromGitter<mratsim> You can add it to testament
08:21:30FromGitter<mratsim> I think that’s one of the plan.
08:22:08stefanos82that's good to know.
08:23:25stefanos82another thing that caught my attention was that certain tests, for instance cycleleak runs on a single core, whereas other tests were using all my CPU cores
08:23:35stefanos82wouldn't make sense to use them all?
08:23:42stefanos82unless there's a reason behind this behavior
08:24:55*dddddd joined #nim
08:28:50FromGitter<mratsim> I think parallel testing is pretty new, like 5 months or so
08:30:38FromGitter<kayabaNerve> @zacharycarter I can bring the Pepsi.
08:30:39*Zombie_Ryushu joined #nim
08:31:41*Zombie_Ryushu quit (Remote host closed the connection)
08:35:25FromGitter<tim-st> Should this work? `var x = 1 *2`
08:35:50FromGitter<tim-st> `in expression '1': identifier expected, but found '1' ⏎ type mismatch: got <int literal(2)>`
08:38:22stefanos82@mratsim: another thing I did not know is that we, the devs should "git pull" the latest csourses ourselves. Don't ask me why, but I had the impression "bin/nim c koch" was fetching those latest updates itself lol
08:38:35*dzackg joined #nim
08:39:53stefanos82@tim-st: I have just tested it myself and I personally would consider this behavior as a bug.
08:40:06stefanos82Araq: is this behavior normal?
08:40:27miran@tim-st: it seems that `1* 2` works, but `1 *2` does not. hmmm
08:40:36FromGitter<tim-st> yes, I think so too, although I not really use this
08:40:54*dzackg quit (Remote host closed the connection)
08:41:18stefanos82it must be a bug, because as miran said it works with `1* 2`, even though it throws a warning
08:41:35stefanos82I get `Warning: Number of spaces around '*' is not consistent [Spacing]`
08:42:12stefanos82can you open a ticket @tim-st?
08:42:37FromGitter<tim-st> yes
08:44:03Araqno bug here, echo $x vs echo $ x
08:44:48AraqI mean, the compiler even warns you about it, what are the odds "It's just a bug"?
08:45:06FromGitter<tim-st> no, it doesnt warn on `var x = 1 *2`
08:45:30Araqno, instead it fails
08:45:33FromGitter<tim-st> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5baf3bad1e23486b936021a3]
08:45:42Araqas it's parsed as 1(*2)
08:46:19Araqand that's what the compiler is telling you.
08:46:53FromGitter<tim-st> ok
08:47:09FromGitter<tim-st> just compared to python, there it works
08:48:44*tedski9 joined #nim
08:49:55stefanos82Araq: in other words, `1* 2` is interpreted as (1*)2?
08:50:25*jjido joined #nim
08:50:27AraqPython has to special case 'print', 'await', etc instead
08:50:37Araqto be able to parse 'f a'
08:50:59Araqstefanos82, no because there are no suffix operators in Nim
08:51:56stefanos82Araq: remind me how I can print the parsed code to see this output(?)
08:52:34Araqremote: error: GH006: Protected branch update failed for refs/heads/master.
08:52:34Araqremote: error: Required status check "continuous-integration/travis-ci" is expected.
08:52:34AraqTo github.com:nim-lang/c2nim.git
08:52:39Araqwhat does that mean?
08:53:27FromGitter<mratsim> @tim-st `1 *2` is parsed like `foo -2` would be parsed
08:53:37*tedski9 quit (Read error: Connection reset by peer)
08:53:40FromGitter<mratsim> identifier space unary_op identifier
08:54:05stefanos82Araq: https://github.com/OmniLayer/omnicore/issues/245
08:54:53FromGitter<tim-st> @mratsim but `foo` is not a number
08:55:12FromGitter<mratsim> it’s a NimNode in the AST
08:55:16FromGitter<mratsim> just like 1 is
08:55:35FromGitter<tim-st> I assumed there is a difference between NimNode `1` and NimNode `foo` like category
08:55:44Araqin what universe should a+1 be parsed differently than 1+1 ?
08:55:46FromGitter<mratsim> everything is a NimNode :P
08:56:04AraqI can already hear the screams
08:56:06FromGitter<tim-st> Araq: as we have seen in Python Universe
08:56:11Araq"inconsistent!"
08:56:30FromGitter<mratsim> that would lead to parser special handling rules
08:56:32FromGitter<tim-st> probably Java allows it too and others
08:56:50Araqthat's not how Python or Java handle this
08:56:56FromGitter<mratsim> we already have issues with literals, I don’t want to add parser issues on top
08:57:03Araqinstead they just lack "calling via a space"
08:57:09stefanos82Araq: so `1*2` and `1 * 2` is the proper use, but not `1* 2` or `1 *2`?
08:57:12*ec16 joined #nim
08:57:22FromGitter<mratsim> though the warning “number of spaces is inconsistent” really grates on me
08:57:54Araqstefanos82, yeah, exactly.
08:57:56FromGitter<mratsim> @stephanos82, yes
08:57:58*ec16 quit (Killed (Sigyn (Spam is off topic on freenode.)))
08:58:29leorizestefanos82: koch tests generate an html file with all the results and output once it finished
08:58:40stefanos82leorize: oh?
08:58:43stefanos82I didn't see one
08:58:55stefanos82where is located?
08:59:05leorizeroot folder of the Nim source tree
08:59:23leorizetestresults.html
08:59:34stefanos82Araq: about the aforementioned syntax, it would be more than helpful to have something like GCC's latest behavior with "did you mean `this`"?
08:59:51stefanos82thank you leorize!
08:59:58stefanos82I learned something new today ^_^
09:00:07FromGitter<timotheecour> @araq as alternative to https://github.com/nim-lang/Nim/pull/9100 would u accept a PR for baseName?
09:00:27Araqif you give it a sane name like lastPathComponent
09:00:40FromGitter<tim-st> btw I think this one is finished: https://github.com/nim-lang/Nim/pull/8778
09:02:31FromGitter<timotheecour> how about `pathTail` ? (that u suggested before)
09:02:50*jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
09:02:52stefanos82I have found the error thanks to leorize
09:03:00Araqusually a 'tail' is all the rest
09:03:01stefanos82I don't have SFML headers installed
09:03:18stefanos82this HTML file is sooooo useful!
09:03:28Araq /a/b/c # a is the head, b/c is the tail
09:03:37stefanos82I honestly didn't know about it.
09:03:44leorizeI know, helps me lots when porting Nim over to Haiku :)
09:04:15stefanos82if Haiku wasn't so strict about its C++ syntax...I used have used it a long time ago
09:04:51leorizenow you can forget all about that and use Nim :)
09:04:51stefanos82I think I first saw it back in...2010? oh my, time flies.
09:05:06stefanos82do they plan to use it as their core language?!
09:05:12leorizeno ofc :P
09:05:28stefanos82that's what I meant before -_-
09:05:41leorizeoh
09:05:53AraqHaiku lost me as a user once I figured they have /usr/bin :P
09:06:23leorizethey never have it? :P
09:06:25stefanos82Araq: why's that?
09:07:27FromGitter<timotheecour> ya it’d be a bit confusing with `tailDir` ; ok for lastPathComponent although the name is rather verbose
09:08:03Araq'lastPathPart' ?
09:08:17*krako_ joined #nim
09:08:21stefanos82Araq: how do I run the test for tests/niminaction/Chapter8/ ?
09:08:27stefanos82that's where the sfml is crashing
09:08:31*krako_ quit (Client Quit)
09:08:36Araqtt niminaction
09:08:41stefanos82tt?
09:08:54Araqit's my alias to testament/tester
09:08:59stefanos82the power of habit brother
09:09:06leorize./koch tests cat niminaction
09:09:11FromGitter<timotheecour> pathFront ??
09:10:27*krako quit (Ping timeout: 252 seconds)
09:11:22AraqpathFront, lol, sounds like some military term
09:11:45Araqarise my soldier! to the pathFront with you!
09:12:50FromGitter<timotheecour> its short and sweet for a commonly used function tho
09:13:33FromGitter<timotheecour> anyway not a sucker for names so lastPathPart it is
09:14:04stefanos82perfect! my tests pass :D
09:15:00stefanos82Araq: lots of terms are military based in programming, at least implicitly that is
09:15:15stefanos82let's not forget that the majority of them started as military projects
09:15:34*Calinou joined #nim
09:15:47stefanos82affirmative, negative, rise, null, attention, and so forth
09:16:50*nsf quit (Quit: WeeChat 2.2)
09:16:58FromGitter<mratsim> I didn’t know Forth was a military language /s
09:17:33stefanos82Araq: can we add a `--list-categories` in `testament/tester`? I have no idea which categories are there available for me.
09:18:04stefanos82@mratsim: hello? "Come forth soldier!" it's a military term lol
09:18:24FromGitter<mratsim> :D
09:19:48leorizestefanos82: ls tests
09:19:54leorizethat's the categories lol
09:20:00stefanos82no kidding
09:20:32leorizeyes, you can even check it yourself by comparing with the html
09:20:35Araqthere are some special categories too
09:20:47Araqlike 'lib'
09:20:54stefanos82I see
09:21:16stefanos82therefore we do need to list them as part of tester
09:30:35Araqhmm how can I tell everybody to not merge feature PRs...
09:31:06AraqI think we need .since: "0.19.2" already
09:34:40miranAraq: ...by explicitly telling: "hey people, 0.19.0 is v1.0RC1 (and 0.19.2 is v1.0RC2) and there will be no new features until v1.0 is released"?
09:35:09miran(this is just my guess why you don't want feature PRs ;))
09:35:34Araqa 0.19.2 should only fix the bugs in 0.19, nothing more
09:35:49Araqand I don't believe in manual cherrypicking of bugfixes
09:37:52FromGitter<timotheecour> the longer the time between releases, the more impractical it is to maintain point releases that fix bugs (especially when not cherry picked)
09:38:49FromGitter<timotheecour> especially if it’s 6 months in between
09:39:16FromGitter<timotheecour> alternative is to just fix regressions, not bugs
09:44:10FromGitter<mratsim> At scale we need a feature window and bug fix windows so that you can manage people expectations
09:46:30stefanos82I guess dom96 should start preparing himself to updating his book to introduce 1.0 to the general public
09:47:45*Vladar joined #nim
09:49:15FromGitter<mratsim> @Araq, newruntime as been replaced by —gc:destructors right?
09:50:27*ritchie_ joined #nim
09:50:40leorizethey still exists as two different switch
09:50:48FromGitter<mratsim> it’s just that it’s broken
09:50:53leorizewith --gc:destructors doesn't actually work the last time I checked
09:51:45leorize`--newruntime` still works, not `--gc:destructors` :(
09:52:44*leorize quit (Quit: WeeChat 2.2)
09:55:27FromGitter<mratsim> https://github.com/nim-lang/Nim/issues/9117
09:56:15*Calinou quit (Quit: http://quassel-irc.org - Discuter simplement. Partout.)
09:57:02*Trustable quit (Remote host closed the connection)
10:10:37Araq--newruntime doesn't do anything anymore, it will work like this:
10:11:00AraqNim supports sinks, assignments, destructors, no switch required
10:11:20Araq--gc:destructors means strings and seqs also use the destructors, not the GC
10:13:20stefanos82Araq: so the objective of the latest destructors' implementation is to get closer to C++'s RAII?
10:13:54*nc-x joined #nim
10:14:44nc-xAraq: Whats the reasoning for having gc'ed strings and seqs; and not make destructors the default?
10:20:30*nc-x quit (Quit: Page closed)
10:22:23FromGitter<kdheepak> > If you use inheritance, use methods: ⏎ ⏎ @mratsim of course! completely forgot about methods
10:24:53FromGitter<mratsim> @nc-x, they will be the default https://github.com/nim-lang/Nim/issues/7041
10:26:11FromGitter<zacharycarter> @kdheepak sure - going to be starting in about half an hour
10:26:18FromGitter<zacharycarter> @kayabaNerve - sounds good! :P
10:26:38FromGitter<kdheepak> @zacharycarter where do you stream? twitch?
10:28:03FromGitter<zacharycarter> well - I don't normally stream, but I did set up a twitch for this :) - https://www.twitch.tv/zachary_carter
10:28:13FromGitter<zacharycarter> hopefully everything works!
10:30:01*vlad1777d joined #nim
10:30:47*nc-x joined #nim
10:32:30nc-xmratsim: I mean Araq just said that they will use destructors only when --gc:destructors. So why not for the other gc's as well?
10:32:41*nc-x quit (Client Quit)
10:32:55FromGitter<mratsim> transition period
10:36:00*nc-x joined #nim
10:36:10nc-x👍
10:36:20*nc-x quit (Client Quit)
10:41:08FromGitter<kdheepak> @zacharycarter exciting! looking forward to it!
10:41:57*jjido joined #nim
10:47:39FromGitter<zacharycarter> @kdheepak thanks! it should be fun! video works on twitch at least
10:49:38*thomasross_ joined #nim
10:50:00FromGitter<tim-st> where is the difference with string destructor compared to how it works now?
10:50:10FromGitter<mratsim> no garbage collection
10:50:17FromGitter<tim-st> like rust?
10:50:25FromGitter<mratsim> or C++, RAII
10:50:44FromGitter<tim-st> do I have to call the destructor or does the compiler insert it where it fits?
10:51:02FromGitter<mratsim> where it fits, it’s the whole point of destructors ;)
10:51:06*FromDiscord_ joined #nim
10:51:14FromGitter<mratsim> otherwise you can just use cstring / ptr char
10:51:30FromGitter<tim-st> where is garbage collection needed then when this will work?
10:51:39*beaumonta joined #nim
10:51:40FromGitter<mratsim> ref types, closures
10:51:54FromGitter<tim-st> ok, I thought string is a ref type too
10:52:09FromGitter<mratsim> currently it is, as are seq, but they have value semantics
10:52:24*mal``` joined #nim
10:52:40FromGitter<tim-st> ok, thanks, does it mean that the string is copied by value always when this is introduced?
10:52:47FromGitter<mratsim> it already is
10:52:59FromGitter<tim-st> when the string is 1gb it is copied?
10:53:13*Sargun_ joined #nim
10:53:16FromGitter<mratsim> except when using `let`, Araq introduces no copy optim that sometimes leak
10:53:41FromGitter<tim-st> ok, thanks, I assume that can improve performance?
10:53:56FromGitter<mratsim> you can do type foo {.shallow.} = object \n data: string if you want shallow copies by default
10:54:31FromGitter<mratsim> the main perf improvement is `move` and `borrow` when the compiler can prove at compile-time that there is no aliasing
10:54:53FromGitter<tim-st> ok, sounds good :)
10:54:55FromGitter<mratsim> you can get huge perf improvement while keeping value semantics
10:55:19FromGitter<mratsim> and without using cheap `let` tricks that fall apart :P
10:56:20*mal`` quit (Ping timeout: 240 seconds)
10:56:21*ng0 quit (Ping timeout: 240 seconds)
10:56:21*Cthalupa quit (Ping timeout: 240 seconds)
10:56:21*Sargun quit (Ping timeout: 240 seconds)
10:56:21*abeaumont quit (Ping timeout: 240 seconds)
10:56:22*FromDiscord quit (Ping timeout: 240 seconds)
10:56:22*thomasross quit (Ping timeout: 240 seconds)
10:56:22*shadowbane quit (Ping timeout: 240 seconds)
10:57:02FromGitter<tim-st> and for ref this doesnt work? how does rust handle this?
10:57:20*Cthalupa joined #nim
10:57:29*ng0 joined #nim
10:57:43*shadowbane joined #nim
10:58:01FromGitter<mratsim> You have to use Rc (reference counting) or Arc (Atomic Ref counting) to keep track of that
10:58:21FromGitter<mratsim> similar to Nim GC or C++ unique_ptr or shared_ptr
10:58:38FromGitter<tim-st> ok, thanks :)
10:58:44FromGitter<mratsim> I’m not sure how their Box types work
10:59:21*nif quit (Ping timeout: 252 seconds)
10:59:55FromGitter<mratsim> it probably rely on Rust lifetime analysis and uses destructors
11:00:27FromGitter<tim-st> yes, the lifetime thing is quite annoying, I like that I dont have to set those things in nim
11:01:10FromGitter<mratsim> you do have to take care of those though otherwise you get either random garbage or SIGSEGV
11:01:16FromGitter<zacharycarter> alright - stream is up - https://www.twitch.tv/zachary_carter - not sure which channel is pluged into it but I'm assuming the offtopic (twitch one)
11:01:29FromGitter<mratsim> nim-lang/twitch on gitter
11:03:30*nif joined #nim
11:04:29FromGitter<tekjar> Hi. Are the plans of nim without gc still on?
11:04:34FromGitter<kdheepak> Wasn't there a bot that sync'd chat between gitter/irc/discord and twitch?
11:05:35FromGitter<mratsim> twitch is only in offtopic
11:06:17FromGitter<mratsim> @tekjar https://github.com/nim-lang/Nim/issues/7041 GC will still be there, but builtin types won’t use it.
11:08:00FromGitter<tekjar> @mratsim Nice. Does this make using nim on microcontrollers easier?
11:09:24FromGitter<mratsim> I’m pretty sure it will, because you can’t use seq currently if you don’t want to use a GC. ⏎ Also ref types will support a custom allocator so you could create a memory pool with more ease for example
11:14:46FromGitter<tekjar> nice
11:15:17Araq yeah and also, we got system.move in 0.19
11:15:33Araqso you can outsmart the compiler and tell it to move, not copy.
11:15:50Araqbut better than that, the compiler actually produces a warning when it couldn't move on its own
11:16:04Araqso you don't have to litter your code with 'move'.
11:16:33FromGitter<tekjar> Wow nim has move semantics now?
11:17:06Araqnot quite yet, but it's an unfinished beauty IMO
11:18:05Araqthere a precise spec and an implementation that is not too far away from becoming reliable
11:18:09FromGitter<tekjar> Heheh Nim's transition from best of (C, python) to bestof(Rust, python) I guess
11:18:57stefanos82Araq: is there a way to prevent SIGSEGV? I know it's C's behavior, but is there a way to prevent it from happening, like a protective mechanism or something?
11:19:11Araqimport segfaults
11:19:41stefanos82well, I meant with cases like --gc:v2 that causes this issue
11:19:50*Calinou joined #nim
11:22:49*nc-x joined #nim
11:22:50Araqfor me v2 doesnot even compile anymore
11:23:00Araqyuriy broke it :-)
11:23:16AraqI tried to fix it but it was too hard :P
11:23:19stefanos82lol
11:23:24stefanos82by the way, how's the process with REPL?
11:26:02FromGitter<mratsim> @stephanos82: https://github.com/nim-lang/Nim/issues/8927
11:26:21stefanos82@mratsim: it's with 'f' mate, not 'ph'
11:26:28FromGitter<mratsim> oh
11:26:28stefanos82that's why I don't get notified lol
11:26:28*zaatar1 joined #nim
11:26:55*zaatar1 quit (Remote host closed the connection)
11:26:58FromGitter<mratsim> I try to avoid f words ;)
11:27:05*jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
11:30:54stefanos82well, it's not an 'f' word, but an 'f' character lol
11:31:04*KAHR-Alpha2 joined #nim
11:32:21*Calinou quit (Quit: http://quassel-irc.org - Discuter simplement. Partout.)
11:32:59*KAHR-Alpha2 quit (Killed (e (spam)))
11:34:41*nc-x quit (Quit: Page closed)
11:35:25*beaumonta left #nim (#nim)
11:35:55*abeaumont joined #nim
11:48:00*oda_4 joined #nim
11:49:59*oda_4 quit (Remote host closed the connection)
11:50:20*krako joined #nim
11:51:13*nsf joined #nim
12:01:52*smt joined #nim
12:04:23*SenasOzys quit (Remote host closed the connection)
12:06:18*SenasOzys joined #nim
12:07:00*krux02 joined #nim
12:07:24*SenasOzys quit (Remote host closed the connection)
12:08:02*SenasOzys joined #nim
12:08:46*skellock joined #nim
12:11:07*EWDurbin22 joined #nim
12:14:01*EWDurbin22 quit (Remote host closed the connection)
12:15:59FromGitter<kaushalmodi> miran, @tim-st : Just make it a rule to surround intended operators with spaces.
12:16:46Araq or leave out the spaces, 1+2 is fine too
12:16:54Araqyou only need to be consistent
12:17:17miran@kaushalmodi: that's what i usually do, or leave out the spaces where it is more readable.
12:17:17Araqkaushalmodi: what's the state of Nim's docs now?
12:17:30mirane.g. `5 * (3+7)`
12:18:15FromGitter<kaushalmodi> Only one PR is remaining to fix the search on devel docs. But that needs to be squashed *and rebased*.. please don't simply merge.
12:18:27Araqsure thing
12:18:34FromGitter<kaushalmodi> About broken links, I'll rerun the link checker later today
12:18:43FromGitter<tim-st> @kaushalmodi yes, I always do this, just found out that it doesn't work when I calculated something in `nim secret`
12:18:48Araqalso moving the dochack.js to the same dir works for me
12:19:00FromGitter<kaushalmodi> Yes, that PR does that
12:19:22Araqyeah I can understand why ../ made trouble
12:19:39miranare the wrong search results fixed?
12:19:43FromGitter<kaushalmodi> Thanks :)
12:20:00*jjido joined #nim
12:20:05FromGitter<kaushalmodi> miran: I am not aware of wrong search results
12:20:18miranlast time i checked, if you search for `strutils`, and click "module strutils", it takes you to some random function inside of strutils module, not the top of the page
12:21:04FromGitter<kaushalmodi> I'd open an issue for that. It's the first time I am hearing. And copy @rayman22201 on that.
12:22:04Araqmiran, something was fixed today, please retry
12:22:58miranAraq: it is fixed in the stable docs? ok, let me try it
12:23:20*wildlander quit (Quit: Konversation terminated!)
12:23:30Araqit's been deployed for the stable docs, yes
12:24:42mirannope, still the same. three results for "module strutils", one takes you to substitution, one to levenshtein, one to string interpolation
12:27:20*Calinou joined #nim
12:27:52Araqmiran, ok, can reproduce :-)
12:31:14miranbtw, this error is not something introduced recently. it's been like that for a while. (i thought it might be fixed in the devel, so i didn't report it)
12:31:30FromDiscord_<Shield> can I get a minimal example which lets you run a nimscript function in a compiled nim program at runtime?
12:35:42FromGitter<vivekimsit> @mratsim cool, will try that soon
12:37:47AraqShield: tests/compilerapi shows it
12:43:16FromDiscord_<Shield> great!
12:47:25*couven92 joined #nim
12:52:47*PMunch joined #nim
12:55:37miran@kaushalmodi: yesterday we talked about an 'intro to macros' tutorial. have you seen this? https://hookrace.net/blog/introduction-to-metaprogramming-in-nim/
13:13:51*Calinou quit (Quit: http://quassel-irc.org - Discuter simplement. Partout.)
13:16:30FromGitter<kaushalmodi> Turns out I had it bookmarked, and then forgot about it. I really need to *get* the macros .. the hype about it is killing me :P. Hopefully this week..
13:18:39krux02well it is a bit outdated there is no ``stmt`` anymore
13:19:19FromGitter<zacharycarter> I've read that article a ton of times - and maybe it's just I've learned a lot more since reading it - but I never thought it did a great job of explaining metaprogramming to a newb
13:20:43*skellock quit (Quit: WeeChat 1.9.1)
13:20:53mirani'm a macro newb, and i think it is quite hard to teach macros, if somebody will just read what have you written, because there are lots of jumps back and forward what you're trying to achieve
13:22:04FromGitter<zacharycarter> well - just conceptually I mean
13:22:14FromGitter<zacharycarter> a lot of programmers don't even get what AST is etc
13:23:47FromDiscord_<Shield> indeed, but parseStmt does help a lot, it's easy to feed the AST human readable strings
13:32:47miran`parseStmt` is nice, but `dumpAstGen` is godsend!
13:33:49FromGitter<unreadable> hey, why is nim http library so slow comparing to others?
13:33:51FromGitter<unreadable> https://github.com/costajob/app-servers#hello-world
13:34:27FromGitter<unreadable> As seen in that repo
13:35:22FromGitter<alehander42> @kaushalmodi have you used lisp?
13:36:04*KwukDuck__ joined #nim
13:38:03miran@unreadable because nim is the only language there using only one core?
13:38:33Araqhttpbeast is multithreaded iirc
13:40:06*KwukDuck__ quit (Remote host closed the connection)
13:40:25*hinv joined #nim
13:40:29miran"I used the asynchttpserver standard module of Nim, not supporting parallelism yet."
13:41:46*hinv quit (Killed (Sigyn (Spam is off topic on freenode.)))
13:42:26FromGitter<unreadable> Well miran, I don't think so
13:42:32*Guest11321 joined #nim
13:42:52miransee cpu usage in the table
13:42:53*Guest11321 quit (Remote host closed the connection)
13:42:53FromGitter<unreadable> NodeJs does not support parallelism, but still does better
13:43:42FromGitter<unreadable> hmm, seems that Nim trades performance for memory
13:44:42FromGitter<unreadable> Crystal is using same resources as Nim and does better
13:47:06Araqso use that and stop trolling us
13:48:12FromGitter<zacharycarter> and compile to windows while you're at it
13:51:07FromGitter<unreadable> Well, no trolling intended. I've actually planned on using nim for a micro service that requires mongo as well though..
13:51:40Araqif you want parallelism, try httpbeast, it got very good benchmark numbers
13:52:15Araqand of course the usual disclaimer here. You're rich with your website long before the performance of these frameworks become an issue
13:52:23FromGitter<kaushalmodi> @alehander42 I use Emacs! :P I live and breath Elisp.
13:52:29stefanos82interesting article in HN right now
13:52:30stefanos82https://totallywearingpants.com/posts/nim-language-highlights/
13:52:51miranstefanos82: link to HN discussion?
13:52:58stefanos82no discussions yet
13:53:01FromGitter<kaushalmodi> @skellock is on a roll with these articles! Fine balance of information and humor.
13:53:05stefanos82it's on the second page of HN
13:54:02FromGitter<kaushalmodi> HN is hit and miss.. you never know what gets to the front. Crappy articles often get to front page and good articles where the author put in a lot of time and research like this one don't.
13:54:37AraqI can't stand the nested replies of HN and reddit
13:54:49AraqIMO that UI is seriously outdated
13:55:01FromGitter<kaushalmodi> Araq: why? Ctrl+f works
13:55:13Araqand what I would search for?
13:55:22FromGitter<kaushalmodi> Also, an HN tip, subscribe to HN Replies
13:55:24miranwell, this article is just a quick overview of nim features. i can understand why there is no discussion
13:55:30FromGitter<kaushalmodi> You get emails when someone replies to you.
13:55:58FromGitter<kaushalmodi> I would search for key words like Nim, and whatever you are interested in
13:56:12FromGitter<kaushalmodi> Example, in static site gen discussions, I search for Hugo
13:56:20Araqwhat?
13:56:25miranwell, there is a possibility to be both nested and sorted chronologically (root posts)
13:56:40stefanos82Araq: feel free to use this then https://vue-hn.now.sh/top
13:56:51stefanos82it's a Vue.js front-end for HN
13:56:59Araqha, blasphemy
13:57:07FromGitter<kaushalmodi> Araq: what was that "what?" in reference to?
13:57:07AraqI can only use a karax frontend for HN
13:57:37Araqkaushalmodi, Hugo is a fragrance for me
13:58:05FromGitter<kaushalmodi> Ah, it's the most awesome static site gen for me: gohugo.io
13:58:15FromGitter<kaushalmodi> https://gohugo.io
13:59:01federico3this is offtopic
13:59:10Araqtrue
13:59:26FromGitter<kaushalmodi> true
13:59:57*tdc joined #nim
14:00:02miranlet's go back to nim future plans. Araq, you said you want to merge only bug fixes from now on?
14:00:40stefanos82miran: for versions 0.19.1 and 0.19.2
14:01:05miranstefanos82: well, that's what is the next in line, no? ;)
14:01:06stefanos82Araq said 0.19.1 should be seen as 1.0RC1 and 0.19.2 as 1.0RC2
14:02:59Araqwhat? no, I only meant that we want to release 0.19.2 asap and it's better if no new features are added until that happened
14:03:34*jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:04:15miranwell, on monday starts 'hacktoberfest', maybe this is a good opportunity/motivation for users to start contributing bugfixes
14:04:37stefanos82let me check my logs to see how you said this, because I remember reading this before; about not adding new features, but fixing bugs only until v1.0 gets officially released
14:04:59miranstefanos82: that might be what *I* said, and it was just a guess of mine :)
14:05:39stefanos82yep, I was about to say this
14:05:42stefanos82my apologies Araq
14:05:52stefanos82you were clear enough with your immediate reply
14:06:46miranmaybe we can make some 'official announcement' that for hacktoberfest we want to see (only) bugfixes. (probably documentation improvements are also ok, just no new features)
14:07:28*Sembei joined #nim
14:07:42*wmclt joined #nim
14:09:53*Hasselsaurus26 joined #nim
14:10:37FromGitter<zetashift> How do I get the nimpretty binary? The vscode-nim plugin keeps nagging me with it but I can't find it and the issue I can find it about it says it's baked into the compiler?
14:11:06stefanos82miran: why not mimic PHP's freeze state?
14:11:28stefanos82this is how the core team do this
14:13:00FromGitter<Aaron-JM> Anyone have any ideas for a library that would to see added to nim that I could work on?
14:13:12miranstefanos82: what i'm aiming at is that things like hacktoberfest might be an extra motivation for people to contribute. by stating "we would really like to see bugfixes" you direct that motivation in right direction, which is mutually beneficial
14:14:25FromGitter<zetashift> @Aaron-JM check out https://github.com/nim-lang/needed-libraries/issues
14:14:34stefanos82miran: I wholeheartedly agree with you. What I meant with my aforementioned statement is for future purposes *if* we could use it as a source of inspiration. There are countless projects that have useful procedures we could borrow from
14:15:17FromGitter<Aaron-JM> Thanks @zetashift
14:15:21miranthanks for the clarification
14:15:38*wmclt quit (Remote host closed the connection)
14:16:46mirannow, let's hear what do Araq and dom96 think about this opportunity
14:17:03*Hasselsaurus26 quit (Ping timeout: 268 seconds)
14:17:37Araqso ... how does PHP do it?
14:18:23stefanos82the freeze state? yes
14:18:38Araqyes
14:19:25stefanos82right now they are in the RC cycle and right before the end of December, they will release version 7.3
14:20:45stefanos82Araq: https://wiki.php.net/todo/php73#timetable
14:21:53stefanos82I personally find their strategy quite convenient, because it gives time to users to accept the fact that new features or some critical changes are coming
14:22:17stefanos82therefore they get their code updated right before the official release of new version
14:22:40Araqseems to be a timeline, my question was more about "is there a github feature useful for that"
14:23:03miranyeah, don't click on "merge" button :P
14:23:24AraqI'm not the only one with 'merge' rights
14:23:43stefanos82you can browse their git.php.net and see how they do it
14:25:29*SenasOzys quit (Remote host closed the connection)
14:25:47miranAraq: well, then it seems to me this is about communicaton between you and the core team, not about github features ;)
14:25:50*SenasOzys joined #nim
14:28:58Araqhaven't you heard? software is frequently used to patch over buggy human interactions
14:30:19FromGitter<mratsim> Ithought buggy human interactions made buggy software
14:30:44shashlickAraq sounds like branch based dev to me
14:32:54Araqyeah, ok
14:34:10stefanos82how about the milestones you are already using?
14:34:22stefanos82as soon as those tickets get closed, you should release v1.0
14:34:47Araqwe have a v1 milestone
14:34:54FromGitter<unreadable> I'll give httpbeast a look. Not sure about the nimongo driver though..
14:35:13FromGitter<unreadable> Anyway, very neat article about nim https://totallywearingpants.com/posts/nim-language-highlights/
14:35:29FromGitter<unreadable> It really makes it shine
14:39:39miranshashlick: so another branch is needed, where new features would go?
14:40:51shashlickWell leave devel as is and branch off 0.19.0 and only port fixes to it
14:41:30miransounds easy/doable and reasonable to me
14:42:03*Sargun_ quit (Changing host)
14:42:03*Sargun_ joined #nim
14:46:19FromGitter<zetashift> can I make a new seq with the range operator? like @[1..10] will return all the numbers from 1 to 10 or should I loop and add it?
14:50:06miran@zetashift import sequtils; let a = toSeq(1..10)
14:52:49FromGitter<zetashift> ah cool thans
14:52:52FromGitter<zetashift> thanks
14:53:47*onionhammer joined #nim
14:55:22*skellock joined #nim
14:58:53skellockthx @kaushalmodi -- i tried to tone down my "asshat" level a bit in the 2nd post :P
14:58:57*Friberg8 joined #nim
15:00:58*Ven`` joined #nim
15:04:08*Friberg8 quit (Remote host closed the connection)
15:05:41*tzekid joined #nim
15:09:13miranskellock: do you already have plans for 3rd post? :)
15:09:13dom96miran: hacktoberfest event for Nim would be awesome
15:09:17dom96You wanna organise it? :P
15:09:27mirandom96: tell me what i need to do :)
15:09:54dom96Write up an article to post on nim-lang.org
15:10:15dom96Inspiring people to contribute as much as possible during the month
15:10:23dom96giving links to easy issues
15:10:27dom96idea for packages to write
15:10:49dom96(optional) create a graphic that represent's Nim's hacktoberfest
15:11:08miranhacktoberfest is all about pull requests, but packages are also ok i guess (but won't get you a t-shirt :))
15:11:10dom96(optional) offer rewards (stickers) and commit to sending them out to people who make at least one contribution that's valuable
15:11:34*PMunch quit (Ping timeout: 240 seconds)
15:12:05dom96(I can transfer some money towards sticker purchases from our donations to you)
15:12:32mirandom96: ok, let's start small :)
15:13:07federico3miran: you could encourage improving the docs with examples and tutorials
15:13:32miranfederico3: yeah, docs improvements would be great, IMO
15:13:39dom96Sure, just some ideas :)
15:13:57Araqnobody noticed the types in the docs are now hyperlinked :-(
15:14:02dom96just letting you know how far I'm willing to take it, of course we would need to figure out how much that would cost
15:14:23miranbtw, once there was a post in which it was analyzed which nim modules are most frequently used in github repos. anybody remembers that?
15:14:31skellockmiran: yep, i'm going to keep going with the posts
15:14:34Araqmiran, ask GULPF
15:14:37Araqbbl
15:14:57miranit would be useful to know which modules are most used, to first improve their docs
15:18:36miranskellock: nice to hear! if you want more responses on HN and r/programming, maybe spread the posts a bit more. your first one is still 'fresh', and now already we have a second one.
15:19:15skellockmiran: and what if i wanted less responses on HN and r/programming...
15:19:43miranskellock: lol, then tell dom96 to stop spreading links to your articles :D :P
15:19:58skellockhaha
15:22:27*PMunch joined #nim
15:23:08skellocki don't mind the flames in the comments also long as people download & try nim
15:28:51*krako left #nim (#nim)
15:30:50*Ven`` quit (Read error: Connection reset by peer)
15:31:26*Ven`` joined #nim
15:34:54dom96Last time style insensitivity was argued on reddit there wasn't as many people supporting the arguments
15:35:02dom96So thank you all of you who get the feature :)
15:38:56dom96skellock: that said, I think it might be worth reworking that example
15:39:13dom96nobody is writing g_o_o_d_d_a_y_t_o_y_o_u
15:39:16dom96and nobody should
15:39:25dom96What people will want is to use a snake_case library with camelCase
15:39:32dom96Any chance you could change the example to show that off?
15:39:50FromGitter<citycide> Araq: I did notice that types are links, it's nifty 👍
15:46:50*Caleb|8 joined #nim
15:47:48*Caleb|8 quit (Remote host closed the connection)
15:49:05*emacsoma` joined #nim
15:49:18*Dropa27 joined #nim
15:49:36*emacsoma` quit (Remote host closed the connection)
15:50:02*Dropa27 quit (Remote host closed the connection)
15:55:41FromDiscord_<exelotl> I'm kinda struggling with this even though I feel like it shouldn't be a hard problem
15:56:36FromDiscord_<exelotl> how do I make a template or macro such that nameOf(foo) == "foo"
15:57:25FromDiscord_<exelotl> like, given an untyped identifier it gives a string representation of it
15:59:32*redlegion_ joined #nim
15:59:32*redlegion_ quit (Client Quit)
16:00:02*chris|18 joined #nim
16:00:20miranexelotl: see here https://flenniken.net/blog/nim-macros/
16:00:34mirani think one example does exactly what you're trying to do
16:02:09miranwell, that example works as a pragma
16:03:29*chris|18 quit (Remote host closed the connection)
16:05:11skellockdom96: copy that. updated. thx for the guidance.
16:08:54*leorize joined #nim
16:14:04*NYTimes23 joined #nim
16:14:07*Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:14:36*NYTimes23 quit (Remote host closed the connection)
16:16:10*oem joined #nim
16:18:20*tzekid quit (Remote host closed the connection)
16:18:31FromGitter<tim-st> pure enums still work in 0.19.0 ?
16:18:36FromGitter<tim-st> I thought it was removed
16:18:40*tzekid joined #nim
16:19:12*vlad1777d quit (Ping timeout: 272 seconds)
16:20:16FromGitter<mratsim> the pragma is a no-op
16:20:24FromGitter<tim-st> ok, I see, it will be removed in future
16:20:37FromGitter<mratsim> no one heard about transition period :P
16:22:42*elrood joined #nim
16:27:22*phuzion20 joined #nim
16:29:12*phuzion20 quit (Remote host closed the connection)
16:34:51stefanos82dom96: "idea for packages to write"; well, we have jester that competes with Simatra-like frameworks. All we need now it's a Django-like framework that implemented with Nim
16:35:09stefanos82and an easy way to migrate from Django to this new <Foo> framework
16:37:11dom96we need lots of things :P
16:37:23dom96https://github.com/nim-lang/needed-libraries
16:38:38*_0ffh joined #nim
16:42:36shashlickHonestly I didn't get style insensitivity but makes sense now
16:42:53stefanos82dom96: like milk, eggs, shampoo, oil, bread, and cheese?
16:42:54shashlickI've never been too uptight with my way or the highway
16:43:16shashlickProbably why I didn't get it
16:43:56shashlickTabs vs spaces and so forth
16:44:46shashlickToo much time is spent evangelizing one true way, the universe loves diversity
16:52:06*failure_ joined #nim
16:55:44*failure_ quit (Killed (Sigyn (Spam is off topic on freenode.)))
17:00:43Araqtim-st: Pure enums works as described in the manual
17:01:14Araqthe manual does a pretty bad job of outlining how it will work in the future, but it describes the reality for 0.19
17:02:21*skellock quit (Ping timeout: 252 seconds)
17:02:29FromGitter<timotheecour> nonpure enum will behave as current pure enum, or the other way around?
17:02:50FromGitter<timotheecour> I hope it’s the former
17:03:05*vlad1777d joined #nim
17:04:26Araqas I've said, all enums will be "Pure, unless the usage is not ambiguous"
17:04:45Araqwhich is consistent with how all of the rest of Nim works.
17:04:57*wildlander joined #nim
17:06:06Araqyeah, I know you don't like it because you found a term to make it look bad ("scope pollution"), that's another discussion then though.
17:07:57*wildlander quit (Read error: Connection reset by peer)
17:08:10*wildlander joined #nim
17:08:20FromGitter<timotheecour> the current (after your modification ~1month ago) pure enum seems like a fine default for all enum; why not use that ? cf https://github.com/nim-lang/Nim/issues/8850
17:08:48Araqyes, we will use that.
17:09:02Araqthat's what I've tried to say.
17:09:14FromGitter<tim-st> Does it mean `EnumType.enumValue` will be recommended way or only `enumValue`?
17:09:44Araqit's up to you
17:09:52FromGitter<timotheecour> ok so then your answer to "nonpure enum will behave as current (as of your 1 month old modification) pure enum” is yes ?
17:10:02Araqyes.
17:10:12FromGitter<timotheecour> Cool.
17:10:14FromGitter<tim-st> I prefer the first one, but I understood from chat that first one goes away so I changed my code and that looks a bit bad
17:13:46*beka15 joined #nim
17:13:48Araqthe idea is that you can write 'x in {Enum.valueA, valueB}' without the more complex scope injection rules that Swift uses (and that break in DSLs)
17:15:19FromGitter<tim-st> ok, thanks
17:17:05*oem quit (Remote host closed the connection)
17:17:21*beka15 quit (Remote host closed the connection)
17:21:25FromGitter<kaushalmodi> Araq: I just force pushed the dochack.js PR; no modifications.. just rebased and force pushed
17:22:01Araqwhat do you mean? the crash is gone when you type 'type' in the search, I tested it myself
17:22:26FromGitter<kaushalmodi> no.. the integration of dochack.js copy into koch docs
17:22:31FromGitter<kaushalmodi> and the moving from ../ to ./
17:23:16*Guest11287 joined #nim
17:23:52FromGitter<kaushalmodi> and thanks for fixing those doc links
17:23:55FromGitter<kaushalmodi> down to just 7
17:24:00FromGitter<kaushalmodi> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5bafb5303844923661bc9714]
17:24:19FromGitter<kaushalmodi> basically 2 :)
17:25:25FromGitter<timotheecour> lastPathPart : https://github.com/nim-lang/Nim/pull/9116 is now green ; but what do u think of pathSuffix instead of lastPathPart ?
17:25:52FromGitter<kaushalmodi> lastPartPart looks more meaningful IMO
17:28:04*Guest11287 quit (Remote host closed the connection)
17:30:38Araqhttps://nim-lang.org/docs/c2nim.html ?
17:31:37FromGitter<kaushalmodi> c2nim.html does not exist in doc/html when I do koch docs
17:32:20Araqtrue, it's a separate project
17:32:47FromGitter<kaushalmodi> ok.. should that be part of koch docs?
17:33:17AraqIMO no. but how to handle external links is unclear
17:33:31FromGitter<kaushalmodi> https://nim-lang.github.io/Nim/c2nim.html is 404
17:33:43Araqas I said, ideally we also link to popular Nimble packages
17:33:48FromGitter<kaushalmodi> so need to add c2nim generation to before_deploy in Travis
17:34:16Araqsounds more like your link checker should special case c2nim?
17:34:26FromGitter<kaushalmodi> yes, I can add an ignore
17:34:32FromGitter<kaushalmodi> but needs to fix devel docs too?
17:34:34FromGitter<kaushalmodi> or not?
17:34:53FromGitter<kaushalmodi> btw for external link collection, I can suggest a simple toml file
17:34:55FromGitter<kaushalmodi> example: https://github.com/kaushalmodi/ox-hugo/blob/master/doc/data/users.toml
17:35:21Araqhmm the link to c2nim should just be absolute
17:35:29Araqthat would fix it too, right?
17:35:33FromGitter<kaushalmodi> yes
17:35:48Araqok, that's a good solution then
17:35:59FromGitter<kaushalmodi> cool
17:36:27FromGitter<kaushalmodi> and see the above toml suggestion for external links.. then we can collect/maintain ext links from one place
17:36:37*anamok joined #nim
17:36:39anamokhi
17:36:42FromGitter<kaushalmodi> and have a way to fetch an ext link using a toml key
17:37:17Araqhmm isn't this more helpful for the Nim website?
17:37:22anamokHow to convert a mutable seq[int] for instance to an immutable one? And vice versa?
17:37:29Araqwhich is in its own repo now, remember.
17:38:05FromGitter<kaushalmodi> yes, I haven't touched that repo. I am just suggesting a general solution for data collection
17:38:42mirananamok: `var a = @[1, 2, 3]; let b = a` ?
17:38:47Araqanamok, mutability is not an aspect of the type, but of the "symbol kind", 'let' is immutable, 'var' is mutable, as a parameter it's immutable unless you use a 'var' parameter
17:40:56*leru joined #nim
17:44:19FromGitter<codenoid> how to take enum as argument with T
17:44:41anamokmiran: that will be an immutable view. If you add something to `a`, that'll be visible in `b` too. How could you have an immutable copy of `a`?
17:44:56mirananamok: i don't think so
17:45:08Araqanamok, that's a long outstanding bug
17:45:40miran@codenoid: i don't understand a question, can you explain a bit, or show with your code what are you trying to do
17:47:14*leru quit (Ping timeout: 272 seconds)
17:47:19*tzekid quit (Ping timeout: 250 seconds)
17:47:36mirananamok: http://ix.io/1nQL/
17:48:04Araqmiran, and now do the same in a 'main' proc :P
17:48:37miranAraq: ouch!!
17:48:58Araqyeah I know. unfortunately my compiler relies on this bug :P
17:49:27Araqnow that we are getting a move optimizer we can finally fix it though without too bad performance regressions
17:49:37FromGitter<codenoid> i want enumerable arg from proc
17:49:38miranis there a remedy for this? in python that would be using `deepCopy`
17:49:39FromGitter<codenoid> get
17:49:49Araqmiran, type 'var' instead of 'let'
17:50:29miranoh, i totaly abandoned snake_case it seems :D when did that happen? (in python it would be `deep_copy`, of course :))
17:50:52AraqI think it's deepcopy in Python
17:51:29miranAraq: yeah, `var` does the trick, but anamok asked about making it immutable.
17:51:34Araqhttps://docs.python.org/2/library/copy.html#copy.deepcopy
17:52:11miran`var temp = a; let b = temp`? :D
17:52:49_0ffhhi all, i'm new! i tried to rtfm, but i can't seem to find how i can get to the intermidate c code of my nim programmes (for cross compilation to anther platform)
17:53:23mirannot only did i forget about snake_case, i also forgot the names of python functions! ;) this is a testament about the power of nim, and how much do i use it
17:53:56miranhaven't written any meaningful python in a quite long time now
17:55:31anamokmiran: thanks for the example. So `var b = a` makes a copy of `a`.
17:58:09elroodAraq, don't really want to be that guy, but i still get close to 6k broken links in the docs, and that's only the local ones. those to the github sources seem to lead into cloud 404 as well. just saying, however, to be frank i'd just ignore this for now tho, it's doesn't really have a lot of motivation potential for the weekend
18:00:19*kemurphy19 joined #nim
18:02:01*Tortice joined #nim
18:02:20TorticeDoes nim have something like ruby's .each_slice?
18:04:21FromGitter<kaushalmodi> elrood: https://nim-lang.github.io/Nim/ should have just 7 broken links
18:04:29*geocar quit (Quit: Connection closed for inactivity)
18:04:33miranTortice: what would that be? what does it do?
18:05:00*flaviu quit (Read error: Connection reset by peer)
18:06:25stefanos82miran: it slices an array to N pieces, depending on each_slice() passing argument
18:07:02*kemurphy19 quit (Remote host closed the connection)
18:07:09stefanos82basically it slices an existing array every N steps
18:07:47stefanos82for instance, an array of 10 elements, 1, 2, 3, ... 10, will produce [1,2, 3], [4, 5, 6], [7,8,9], and [10]
18:08:04Araqelrood, please be more precise? Which links are 404s? Are you sure it's not your browser's cache?
18:08:35Torticea = (1..10).each_slice(2) do |i| puts i end outputs [1, 2] [3,4] [5,6] [7,8] [9,10]
18:08:42elroodkaushalmodi, does that include checking for fragment identifiers (#someid)?
18:10:33miranstefanos82: Tortice: so it is `chain` in reverse direction? :) i don't know if something like that exists
18:13:25mirani might add something like that to 'itertools' if there's interest
18:13:34elroodAraq, won't completely rule out any local problems on a saturday evening, but koch docs generated links akin to https://github.com/nim-lang/Nim/edit/devel/stats.nim and https://github.com/nim-lang/Nim/tree/master/nre.nim here
18:15:25FromGitter<kaushalmodi> elrood: I manually checked few fragments and they worked. The tool (htmltest) has a bug that gives false failures with local fragments
18:15:34FromGitter<kaushalmodi> so I disabled them
18:15:44stefanos82miran: think of it this way: "slice this existing array, each of generated ones of 3 elements"
18:15:51FromGitter<kaushalmodi> elrood: can you give an example of broken local fragment
18:18:44FromGitter<kaushalmodi> elrood: I think nre is not published anymore
18:18:54FromGitter<kaushalmodi> nothing in the current docs links to nre
18:19:41FromGitter<kaushalmodi> Araq: correct if above wrong
18:19:44*jjido joined #nim
18:20:13elroodkaushalmodi, https://pastebin.com/5xpBC6Ag . please take that with a grain of salt, it's been generated by a hacky script
18:20:22FromGitter<kaushalmodi> ok.. it *just* got fixed
18:20:22FromGitter<kaushalmodi> https://github.com/nim-lang/Nim/commit/532e2ee0b2702b86365b54bc58bcb55eb8c8e222
18:20:24FromGitter<kaushalmodi> :)
18:21:09FromGitter<kaushalmodi> elrood: I have an issue open for broken links : https://github.com/nim-lang/Nim/issues/9109
18:21:37FromGitter<kaushalmodi> add your findings there (if links are still broken on https://nim-lang.github.io/Nim/ (that's the official devel build of docs)
18:21:51FromGitter<kaushalmodi> run your script on that URL
18:22:44*tzekid joined #nim
18:24:54*konmae joined #nim
18:29:14*konmae quit (Ping timeout: 244 seconds)
18:31:20Araqkaushalmodi, can you publish your tool?
18:34:02*PMunch quit (Remote host closed the connection)
18:34:37*nsf quit (Quit: WeeChat 2.2)
18:36:27FromGitter<adam-r-kowalski> Is there a list of all the built in concepts? I want to make sure I’m only creating concepts that don’t already exist in the standard, and that I am consistent with the naming
18:36:40*hendrix10 joined #nim
18:36:49stefanos82is documentation alright? I press on certain links and do not take me anywhere
18:37:28Araqstefanos82, for example?
18:37:39stefanos82I looked for walkFiles
18:37:50stefanos82I found it and pressed the link to take me there
18:37:53stefanos82nothing happens
18:38:59FromGitter<adam-r-kowalski> @Araq in the manual I see we have concepts like Enumerable, AdditiveMonoid and other useful definitions, but are they defined under some module in the standard? Or where can I take a look at the ones already defined
18:40:45Araqthere are none in the stdlib
18:41:06anamokmiran: here is the bug I ran into: http://ix.io/1nR4 . However, if you run it in the global space, i.e. without a main function, it gives the expected result.
18:41:28*hendrix10 quit (Remote host closed the connection)
18:41:39mirananamok: yep, that's what Araq has pointed out earlier
18:42:08FromGitter<adam-r-kowalski> Oh my bad, is there some discussion I can read about or something that talks about them in more detail? I tried googling around but I wasn’t able to find much yet. Are we planning on utilizing them throughout the stdlib at some point? Like openarray seems like a perfect use case for a concept.
18:42:35mirananamok: ugly hack is to do `var temp = a; let b = temp` var copies, and then let makes it immutable
18:44:13_0ffhhow do i get c generated c code?
18:45:12miran_0ffh: take a look at ~/.cache/nim/yourfilename/
18:45:15anamokmiran: it did the trick
18:45:51miran_0ffh: there should be a file called yourfile.c, but — it might not look as pretty as you expect ;)
18:46:10_0ffhthank you very much, i've been lookin in nimcache...
18:47:15Araqcompile with -d:release to get prettier C code
18:48:16_0ffhgreat, thanks!
18:48:18Araqstefanos82, works for me in https://nim-lang.org/docs/system.html I type 'walkFiles' in the search
18:48:26stefanos82click it
18:48:31Araqhttps://nim-lang.org/docs/os.html#walkFiles.i%2Cstring
18:48:32stefanos82does it take you to walkFiles?
18:48:35Araqyeah
18:48:39stefanos82weird
18:48:44stefanos82let me check it with Chromium
18:49:01miranworks ok on vivaldi (chromium engine)
18:50:16*avsej quit (Quit: Quit)
18:50:51*avsej joined #nim
18:50:52*avsej quit (Changing host)
18:50:52*avsej joined #nim
18:50:56stefanos82Araq: it does not work with Firefox 52.9.0 and Waterfox 56.2.3
18:51:39Araqok...
18:51:43Araqo.O
18:51:43stefanos82with Chromium works as expected
18:52:06AraqI love the web
18:52:07miranworks ok on firefox 62 onlinux
18:52:11miran*on linux
18:52:23stefanos82miran: I'm on Debian testing 64-bit
18:52:31stefanos82also cleared my cache
18:55:51FromGitter<kaushalmodi> Araq: It's not my tool
18:56:01FromGitter<kaushalmodi> https://github.com/wjdp/htmltest
18:57:14FromGitter<kaushalmodi> It's easy to get it's static binary
18:57:33FromGitter<kaushalmodi> I was infact going to suggest to add it to Travis so that all docs links are always valid
18:58:03stefanos82question: why are we using <?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> in place of <!doctype html> which is supported pretty much everywhere?
18:58:06FromGitter<kaushalmodi> In Travis, you just `curl` to get the binary of the tool and run it.. takes <1 min to run it
18:58:21FromGitter<kaushalmodi> +1 to what stefanos82 said
18:58:39*MarderIII joined #nim
19:02:24Araqstefanos82: legacy
19:02:57stefanos82also, the reason the aforementioned links do not work is an old issue with docs already reported back in July
19:03:07stefanos82https://irclogs.nim-lang.org/20-07-2018.html
19:03:22stefanos82data-doc-search-tag
19:04:13FromGitter<kaushalmodi> stefanos82: the data-doc-search-tag definitely exist in the latest theindex.html
19:04:16FromGitter<kaushalmodi> do you want to try it out
19:04:18FromGitter<kaushalmodi> ?
19:04:27*bartholin12 joined #nim
19:04:29stefanos82I'm browsing the live documentation
19:05:12FromGitter<kaushalmodi> Araq: *final* 1 error, newly introduced by nre :)
19:05:15FromGitter<kaushalmodi> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5bafccebc7bf7c36628f576b]
19:05:49FromGitter<kaushalmodi> Araq: let me know what you think about htmltest to Travis
19:05:59FromGitter<kaushalmodi> as you see above it took just 3 seconds to find that single 404
19:06:20FromGitter<kaushalmodi> it uses cache and Travis allows caching any dir
19:06:37Araqwould be nicer if we could use nim's parsehtml to do that
19:06:38FromGitter<kaushalmodi> It you don't consider a Go-built binary to add this check, I can submit a PR
19:07:03FromGitter<kaushalmodi> when we can a Nim solution, we would of course replace htmltest with that
19:07:40Araqwell a Nim solution is maybe 20 lines of code
19:07:45FromGitter<kaushalmodi> *If you don't consider a Go-built binary as a blasphemy
19:08:07FromGitter<kaushalmodi> this utility does a lot of other checks
19:08:10FromGitter<kaushalmodi> see its readme
19:08:59FromDiscord_<deech> Small thing but I recommend also including the MIT license in it's own file at the root of the project.
19:11:50*bartholin12 quit (Remote host closed the connection)
19:12:28FromGitter<kaushalmodi> elrood: I am also ignoring the Github source/edit link checks for now because the htmltest is too fast.. causes github server to return HTTP 429 error codes :P
19:12:44Araqer...
19:12:53Araqthat's a denial of service attack then
19:13:27Araqbetter not add this to travis just yet.
19:13:37FromGitter<kaushalmodi> yeah.. it's too fast.. I have suggested the dev to not check the same link again: https://github.com/wjdp/htmltest/issues/105
19:13:54FromGitter<kaushalmodi> it's just unnecessary to check the same URL again
19:14:05Araqit's not "too fast", it's a poor crawler
19:14:24TorticeIs this an okay implementation? http://ix.io/1nRm
19:14:32FromGitter<kaushalmodi> well.. at least it helped fix the Nim docs
19:15:05FromGitter<kaushalmodi> except for the GitHub links there is a good amount of confidence that right now *only 1* link is broken in Nim docs :D
19:15:16Araqsure but this thing runs 20x a day
19:15:21Araq*would run
19:15:35FromGitter<kaushalmodi> can be conditioned to run it just once a day in travis
19:15:42Araqwe can add it to the "nightlies" checks
19:15:44miranTortice: use `openArray` instead of `seq` so it works also on arrays and strings. i would use generics (`[T]`) instead of `auto`
19:15:46FromGitter<kaushalmodi> I don't know how.. but pretty sure there's a way..
19:16:11FromGitter<kaushalmodi> You can are fine adding htmltest, I'll find a way to make it run once a day
19:16:28FromGitter<kaushalmodi> (and ignore github checks till the dev fixes that issue)
19:16:41miranTortice: there is also `..<` operator so you don't have to do `i+n-1`, and you'd have `i ..< i+n`
19:17:43FromGitter<kaushalmodi> Araq: And https://github.com/nim-lang/Nim/pull/9110 is passing tests, rebased and ready for merging
19:17:50FromGitter<kaushalmodi> then the search will work on devel docs too :)
19:21:13*jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
19:23:51*Calinou joined #nim
19:25:36FromGitter<bung87> how to convert c++ std string to nim string in nim? I have std::string::c_str
19:28:05TorticeI can't compile it when I change seq to openArray, I get invalid type: 'T' in this context: 'iterator (s: openArray, n: int): untyped{.inline.}' for proc
19:28:17Araq$myCstring
19:29:16*gangstacat quit (Quit: Ĝis!)
19:30:18miranTortice: `iterator each_slice[T](s: openArray[T], n: int): seq[T] =`
19:30:27*Calinou quit (Quit: http://quassel-irc.org - Discuter simplement. Partout.)
19:30:42*Calinou joined #nim
19:31:03Torticethat's pretty neat
19:31:39FromGitter<bung87> `error: assigning to 'NCSTRING' (aka 'char *') from incompatible type 'const std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::value_type *' (aka 'const char *') ⏎ ⏎ ``` T1_ = x.c_str();``` ⏎ ⏎ ` [https://gitter.im/nim-lang/Nim?at=5bafd31b3844923661bd4894]
19:32:20FromGitter<kayabaNerve> @bung87 Looks like you need a binary cast.
19:32:41FromGitter<kayabaNerve> (char *) x.c_str()
19:32:55FromGitter<bung87> I searched stack overflow them use memcpy to a vector
19:33:31FromGitter<bung87> @kayabaNerve that’s in c++ ?
19:34:20miranTortice: here is my version, without try-except: http://ix.io/1nRv/
19:34:26*skellock joined #nim
19:34:45miranTortice: see that you can now pass the strings too
19:35:45FromGitter<kayabaNerve> @bung87 Yes. You'll need to have Nim do that.
19:36:14Torticethanks, appreciated
19:37:18FromGitter<bung87> could it able to convert it in nim?
19:37:37FromGitter<bung87> https://stackoverflow.com/questions/11821491/converting-string-to-cstring-in-c
19:39:06*miran quit (Ping timeout: 252 seconds)
19:41:53*miran joined #nim
19:47:36*miran quit (Remote host closed the connection)
19:48:13Torticeusing ui, is there a way to see if a checkbox is toggled? or do I have to use .ontoggled
19:57:12AraqI don't know
20:01:24*aziz joined #nim
20:03:39FromGitter<vivekimsit> @mratsim sorry to bother you again, the gitter I think doesn't support search history. Can you please let me know the blockchain application again?
20:04:27*tzekid quit (Remote host closed the connection)
20:27:18*bitch15 joined #nim
20:28:17*bitch15 quit (Remote host closed the connection)
20:36:53*stefanos82 quit (Quit: Quitting for now...)
20:40:57FromGitter<zetashift> StatusIM?
20:50:28*VanClone10 joined #nim
20:59:34FromGitter<bung87> I tried it in cpp and wrapped in nim , it requires get representation of a type one by one if the data is a container type .
20:59:34*nsf joined #nim
21:01:36*aziz quit (Ping timeout: 252 seconds)
21:02:09*VanClone10 quit (Ping timeout: 252 seconds)
21:02:45anamokShould I leave two empty lines between functions / procedures? (like in Python)
21:05:09_0ffhanyone else having trouble installing nimcl via nimble (/tmp/nimble_6603/githubcom_unicreditnimcl/nimcl.nimble(11, 37) Error: undeclared identifier: 'stmt')
21:06:05Torticejust installed fine for me, make sure you have the opencl -dev packages
21:06:39_0ffhhmmm, i'm sure i have the c headers, but i'll check if anything els is missing
21:07:43FromGitter<zetashift> @anamok I usually see 1 empty line in codebases so I'd go with that, Nims style conventions also doesn't mention it: https://nim-lang.org/docs/nep1.html
21:08:47_0ffhjust installed ocl-icd-opencl-dev (was selected when i "apt install opencl-dev"), but no difference
21:11:24_0ffhalso nvidia-opencl-dev now, still no difference. also, "undeclared identifier" sounds like a different kind of trouble.
21:11:42anamokzetashift: thanks
21:12:20_0ffhi compiled the latest version of nim from github, might it be that the language has moved on in some way?
21:13:56Torticeyou're right, I get the same error with 'choosenim devel'
21:14:00Torticeworks fine on stable
21:14:08deepend_0ffh: nimcl failed to install on 0.19.0 linux for me
21:14:19*aziz joined #nim
21:14:38_0ffhthanks i suppose i will move to stable then
21:16:14*sophomeric joined #nim
21:16:17*Vladar quit (Remote host closed the connection)
21:16:38*sophomeric quit (Remote host closed the connection)
21:17:28*aziz quit (Client Quit)
21:17:48Torticestable being 18.0, I was on an old version, sorry
21:17:56Torticebroken with 19.0
21:18:38FromGitter<kayabaNerve> How do I pass an async proc?
21:18:41_0ffhokay, also thank you for pointing me towards choosenim, i think i'll be installing that now! ;-)
21:18:54FromGitter<kayabaNerve> `proc (client: AsyncSocket) {.async.}` throws an error.
21:32:48*andrewschoen joined #nim
21:37:44*andrewschoen quit (Killed (Sigyn (Spam is off topic on freenode.)))
21:42:04*_0ffh left #nim (#nim)
21:51:15*skellock quit (Ping timeout: 244 seconds)
21:54:42*PMunch joined #nim
21:57:14*skellock joined #nim
21:57:47PMunchHmm, this comment has a good point: https://www.reddit.com/r/programming/comments/9jdfwe/nim_version_0190_released/e6t4o3d/?context=3
21:58:10PMunchWould it be possible to make optional strings and sequences a "free" type
21:58:38PMunchKinda like how pointers are handled
22:03:01*MarderIII quit (Quit: Leaving)
22:04:54FromGitter<mratsim> @adam-r-kowalski regarding openarray as concept https://github.com/nim-lang/Nim/issues/6528, but instead of a concept the main idea today is to make that a first class type https://github.com/nim-lang/Nim/issues/9001
22:05:45FromGitter<mratsim> @vivekimsit you can check on irclogs.nim-lang.com or something, otherwise it’s CryptoZombies from Loom Network
22:06:30FromGitter<alehander42> ah somuch name sensitivity bike shedding
22:07:08FromGitter<alehander42> needs the "this babe can take so much "but .. inconsistent naming!!!" comments" meme
22:18:30FromGitter<zetashift> Maybe add it to the https://nim-lang.org/faq.html (also why isn't the FAQ in the navbar links?)
22:20:42*edcragg16 joined #nim
22:29:09*edcragg16 quit (Ping timeout: 268 seconds)
22:30:45FromGitter<mratsim> 1) 19 updated bench coming soon: https://github.com/frol/completely-unscientific-benchmarks/issues/66
22:37:43FromDiscord_<deech> Do the docs include inferred pragmas by default? For instance `proc get[T](self: Option[T]): T` says in the documentation that it throws an exception but doesn't have a clickable `{...}` that expands to `{.raises [UnpackError]}` as I would have expected.
22:38:06FromDiscord_<deech> Do the docs include inferred pragmas by default? For instance `proc get[T](self: Option[T]): T` says in the documentation that it throws an exception but doesn't have a clickable `{...}` that expands to `{.raises [UnpackError] .}` as I would have expected.
22:38:14anamokbye
22:38:18*anamok quit (Remote host closed the connection)
22:38:39FromDiscord_<deech> These are docs built from the head of `devel`.
22:38:51*tzui joined #nim
22:38:58FromGitter<zetashift> @mratsim "D demonstrated the best performance among garbage-collected solutions" wow I thought it'd be a tie atleast with Nim
22:39:19*couven92 quit (Read error: Connection reset by peer)
22:39:45FromDiscord_<deech> This is in the `options` module, forgot to include that, sorry.
22:41:11*tzui quit (Client Quit)
22:42:26*tzui joined #nim
22:44:24*tzui quit (Client Quit)
22:45:20FromGitter<mratsim> @zetashift it should mostly fixed in 0.19: https://dendibakh.github.io/blog/2018/01/18/Code_alignment_issues
22:45:43*tzui joined #nim
22:46:45FromGitter<mratsim> argh
22:46:47FromGitter<mratsim> wrong link
22:46:51FromGitter<mratsim> https://github.com/nim-lang/Nim/issues/8745
22:47:36FromGitter<mratsim> on my computer {.noInit.} made frol’s benchmark 1.82x faster on 0.18
22:54:29*tzui quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:54:47*tzui joined #nim
22:54:48*tzui quit (Client Quit)
22:57:29*Tortice quit (Remote host closed the connection)
23:02:21*bankai_23 joined #nim
23:06:43*nsf quit (Quit: WeeChat 2.2)
23:07:07*zodiac5 joined #nim
23:07:51*bankai_23 quit (Killed (Sigyn (Spam is off topic on freenode.)))
23:08:11*zodiac5 quit (Remote host closed the connection)
23:11:12*krux02 quit (Remote host closed the connection)
23:19:28FromGitter<alehander42> i think something like nimfmt can be the only succesful response to all the 'flexible identifier' backlash
23:20:55FromGitter<alehander42> sadly, you can't convince masses of people with paragraphs, one needs a very simple response
23:21:24*PMunch quit (Remote host closed the connection)
23:22:51FromGitter<alehander42> (e.g. "just use nimpretty: formatting of *a project* is always consistent *thanks to flexible naming*")
23:24:25FromGitter<kayabaNerve> Since, I've updated to 0.19, my code is blocking.
23:24:37FromGitter<kayabaNerve> *Since I've *my async code is blocking.
23:28:41FromGitter<kayabaNerve> I have an async function call a sync function which calls an async function (with `asyncCheck`) which has a `while true:` loop. The 1st async function used to resume after the sync function called the 2nd async function and returned. Now, it gets stuck inside the 2nd async function.
23:50:59*cougar_ joined #nim
23:52:46*RatRiot joined #nim
23:54:08*cougar_ quit (Read error: Connection reset by peer)
23:55:36*RatRiot quit (Client Quit)
23:59:13*LeoNerd24 joined #nim