<< 04-03-2020 >>

00:06:21*actuallybatman joined #nim
00:14:57FromDiscord<Elegant Beef> well i throw in the towel
00:15:35FromDiscord<Elegant Beef> Final error
00:15:35FromDiscord<Elegant Beef> https://hastebin.com/sacigelexi.coffeescript
00:23:31*krux02_ joined #nim
00:26:05*krux02 quit (Ping timeout: 240 seconds)
00:38:08shashlickHmm
00:38:23shashlickWhat version of gcc did you go to
00:38:28shashlickNeed to check on that file
00:46:05FromDiscord<Elegant Beef> idk i went back to linux after cryin in the corner
00:53:47shashlickSorry :)
00:53:59shashlickI can build for you
00:55:06shashlickOr you can try Travis
00:55:20shashlickWhere did you get your cmake and what version was it
00:55:27FromDiscord<Elegant Beef> from cmake
00:55:32FromDiscord<Elegant Beef> i dont r ecall
00:55:33FromDiscord<Elegant Beef> i dont recall
00:56:06*Hideki_ joined #nim
00:58:09shashlickOk well
01:02:29FromDiscord<Elegant Beef> Travis supports nim?
01:02:47shashlickUse the script I sent
01:02:52shashlickIt installs Nim
01:02:57shashlickAnd other stuff needed
01:08:29*krux02_ quit (Remote host closed the connection)
01:18:47FromDiscord<Elegant Beef> well seems to be going well
01:27:50*Hideki_ quit (Remote host closed the connection)
01:38:42*ptdel quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
01:39:37shashlickCool
01:41:07FromDiscord<Elegant Beef> although i dont know how to get the build so 😄
01:41:55shashlickYou can post releases onto github
01:42:53FromDiscord<Elegant Beef> yea im sure i could, if i had a modicum of idea how to do that 😛
01:45:23shashlickLet me share an example
01:45:57shashlickhttps://github.com/genotrance/feud/blob/master/.travis.yml#L40
01:46:17shashlickThe api key needs to be set in the project config in Travis
01:46:55shashlickHere's the choosenim example
01:46:58shashlickhttps://github.com/dom96/choosenim/blob/master/.travis.yml#L41
01:48:38FromDiscord<Elegant Beef> i assume you mean as a environmental variable
01:57:02*endragor joined #nim
02:26:58*my_dude joined #nim
02:27:23*my_dude quit (Client Quit)
02:28:32FromDiscord<Rika> I don't think he did
02:29:32FromDiscord<Elegant Beef> I mean it worked so idk
02:44:38*rockcavera quit (Read error: Connection reset by peer)
02:48:00shashlickYes in the config, secret of course
02:48:59disruptekwell, not anymore.
02:50:53FromDiscord<Elegant Beef> now how about making a archive on deploy? 😄
02:57:45*chemist69 quit (Ping timeout: 240 seconds)
03:00:01*chemist69 joined #nim
03:12:23shashlickSee the feud yml
03:12:41shashlickZip it on success
03:14:55*muffindrake quit (Ping timeout: 272 seconds)
03:16:31*muffindrake joined #nim
03:18:13*blueberrypie quit (Quit: leaving)
03:23:23*blueberrypie joined #nim
03:26:25*dadada quit (Ping timeout: 240 seconds)
03:28:28*blueberrypie quit (Quit: leaving)
03:28:29*dadada joined #nim
03:28:53*dadada is now known as Guest31948
03:29:31*blueberrypie joined #nim
03:30:01FromDiscord<Winton> next project of mine 😄
03:30:04FromDiscord<Winton> help me dude
03:30:31FromDiscord<Winton> Someone has some library knowledge, I want to download through the URL youtube mp3
03:30:34*marmotini_ joined #nim
03:31:00disruptekwhotube?
03:31:19FromDiscord<Winton> youtube
03:31:33FromDiscord<Winton> through the url, download extension mp3
03:31:36disruptekis that like redtube?
03:31:39FromDiscord<Winton> convert mp
03:31:55FromDiscord<Winton> redtube mmm wait
03:32:26FromDiscord<Winton> jajjaja not
03:32:39FromDiscord<Winton> https://ytmp3.cc/en13/
03:36:24*blueberrypie quit (Quit: leaving)
03:36:48leorizeif you don't mind some dependencies, youtube_dl is a great way to get audio without having to interact with 3rd party services
03:39:04*hax-scramper quit (Ping timeout: 265 seconds)
03:43:59*marmotini_ quit (Remote host closed the connection)
03:44:36*marmotini_ joined #nim
03:45:46*adalricus joined #nim
03:49:13*marmotini_ quit (Ping timeout: 265 seconds)
03:52:33FromDiscord<Winton> haa ok
03:52:45FromDiscord<Winton> thx
04:04:23*my_dude joined #nim
04:13:29*my_dude quit (Quit: ZZZzzz…)
04:13:51*Lord_Nightmare joined #nim
04:14:32*my_dude joined #nim
04:19:49*my_dude quit (Quit: ZZZzzz…)
04:20:44*Lord_Nightmare quit (Quit: ZNC - http://znc.in)
04:33:10*Lord_Nightmare joined #nim
04:36:51*hax-scramper joined #nim
04:42:21*nsf joined #nim
04:43:24FromDiscord<Rika> Does nim have a functional programming module on github? If not I'm interested in making one
04:44:28FromDiscord<Rika> !repo functional
04:44:30disbothttps://github.com/h3rald/min -- 9min: 11A tiny concatenative programming language and shell 15 146⭐ 7🍴 7& 11 more...
04:44:37FromDiscord<Rika> Hmm
04:45:26*chemist69 quit (Ping timeout: 256 seconds)
04:45:30FromDiscord<Rika> Ah, there is, but it's not what I envisioned
04:45:36FromDiscord<Rika> Time to make my own then
04:46:05*chemist69 joined #nim
04:46:12disruptek!repo zero-functional
04:46:14disbothttps://github.com/zero-functional/zero-functional -- 9zero-functional: 11A library providing zero-cost chaining for functional abstractions in Nim. 15 122⭐ 7🍴 7& 29 more...
04:46:53disruptekmove your head closer to the router; i'm finding your vision quite fuzzy at this distance.
04:46:58FromDiscord<Rika> Still not really what I want
04:47:14FromDiscord<Rika> I'll think of extending zf then
04:47:19FromDiscord<Elegant Beef> Disruptek have you tried squinting, might be a you side problem
04:48:27disruptekit's all black and white. very little contrast. can you turn the Vert knob 65° counter-clockwise and the Horiz knob about 13° clockwise?
04:48:39FromDiscord<Rika> Okay
04:48:52disruptekyou don't have to get it right on the money; even a little bit will help.
04:49:50FromDiscord<Elegant Beef> sorry i only got tau/6 and tau/30
04:49:51disruptekno, i mean a little bit on Horiz. Vert does need to turn way more.
04:49:58FromDiscord<Rika> Sometimes I truly wonder whether disruptek is sane or not
04:50:12disruptekokay, stop fiddling with it. it's worse than it was, even.
04:50:15disrupteklet me do it.
04:50:19disruptekjust let me do it, jesus.
04:50:27FromDiscord<Elegant Beef> sorry your auth seems off
04:50:34FromDiscord<Rika> Lol
04:50:34FromDiscord<Elegant Beef> Try using a package overhere
04:50:38FromDiscord<Rika> What a grudge
04:51:06FromDiscord<Elegant Beef> I mean hopefully disruptek knows i dont have an ill will towards him
04:52:25disruptekjust once i want someone to know what "counter-clockwise" means.
04:52:28disrupteki mean, fuck.
04:52:34disruptek"lefty-loosey"
04:52:37disruptekdoes that shit help?
04:52:44FromDiscord<Elegant Beef> it's called positive rotation
04:52:47FromDiscord<Elegant Beef> and negative rotation
04:52:52disruptekmake a fucking L with your hand or something.
04:53:03disrupteki don't even know anymore.
04:53:09FromDiscord<Elegant Beef> What's an L look like again
04:53:14disruptekwhat the hell are they teaching your people in school?
04:53:15FromDiscord<Elegant Beef> Isnt that the bluetooth symbole?
04:53:21FromDiscord<Elegant Beef> symbol*
04:53:29FromDiscord<Elegant Beef> "My people" wow what a racist
04:53:33FromDiscord<Elegant Beef> Bannerino
04:53:54disruptekit's all a'boot the benjamins.
04:54:22FromDiscord<Elegant Beef> wow mister midwest, probably doesnt even know what healthcare is
04:56:23FromDiscord<Elegant Beef> Also why the fuck is it called the midwest, if it's in the mid, it's also mideast, it's middle
04:58:04kungtotteIt's called the midwest because it's part way to 'the west', because of the eurocentrist perspective that the US was colonised from the east coast towards the west coast.
04:58:34kungtotteSame reason why you'd say you're "half way to <DESTINATION>" when you're travelling as opposed to "half way to <ORIGIN>"
04:59:46FromDiscord<Elegant Beef> Well thanks for the answer but it wasnt sincere
05:19:30disrupteki'm pretty sure he meant every word.
05:20:50disruptekkungtotte: don't listen to beef, buddy, i believe you.
05:21:17*my_dude joined #nim
05:21:21FromDiscord<Elegant Beef> I meant my question wasnt sincere
06:10:46*narimiran joined #nim
06:10:50*Guest31948 quit (Ping timeout: 265 seconds)
06:22:26*couven92 joined #nim
06:23:05shashlickNeed some good answers - https://www.reddit.com/r/nim/comments/fd3dcs/does_nim_have_any_kind_of_protection_against_data/
06:34:43FromDiscord<Rika> Idts
06:36:20leorize@mratsim: ^
06:46:56*silvernode joined #nim
06:48:12silvernodeI am trying to figure out how to create a proc that takes a seq but 'proc myproc(items: seq[string]):' is giving errors
06:52:24*theelous3 quit (Ping timeout: 265 seconds)
06:52:46leorizesilvernode: that's... how you'd do it?
06:52:57leorizewhat errors are you having?
06:53:55silvernodeError: expression expected, but found 'keyword for'
06:54:05silvernodetrying to put a for loop in the proc
06:54:39silvernodeout of time though, need to come back to this later. Goodnight everyone.
06:54:41narimiransilvernode: show us all of your code, preferably using https://play.nim-lang.org/
06:54:59narimiranahhh, i know
06:55:11narimiranyou used `:`, and you should have used `=`
06:59:11*silvernode quit (Ping timeout: 258 seconds)
07:18:20*my_dude quit (Quit: ZZZzzz…)
07:24:37*solitudesf joined #nim
07:33:15*adalricus quit (Remote host closed the connection)
07:37:23muffindrakeIs there a short-hand to clear (i.e. delete) all elements of a seq, or are you supposed to just make a new seq?
07:40:12muffindrakeOh, I suppose 's = @[]' does what I expect?
07:40:31narimiranmuffindrake: maybe `s.setLen(0)`?
07:41:20muffindrakeThat should be fine, too. Thanks!
07:57:16*PMunch joined #nim
08:00:00*gmpreussner quit (Quit: kthxbye)
08:05:10*gmpreussner joined #nim
08:22:56leorizesetLen is more efficient
08:23:04leorizeit wouldn't free the memory though
08:25:04PMunchWhat do you mean, of course it would free the memory
08:25:23PMunchYou can also do `reset s`
08:25:46PMunchOh wait, no it actually wouldn't..
08:26:07FromDiscord<Elegant Beef> the capacity stays the same, the length is reduced
08:26:11PMunchOr would it? Under what conditions does a seq shrink its capacity?
08:26:19PMunchOr does it ever?
08:26:29leorize[m]it never shrinks
08:26:32FromDiscord<Elegant Beef> I assume only when you tell it to
08:26:40FromDiscord<Elegant Beef> If you even can
08:26:51PMunchI mean you can do s = newSeqOfCap()
08:26:57PMunchOr as I said `reset s`
08:27:02leorize[m]set it to an empty seq
08:27:17leorize[m]or yea, reset works
08:27:23PMunchReset essentially does what the initialisation does, and it works for every type :)
08:28:26leorize[m]actually reset it mapped to destroy :p
08:28:55*hax-scramper quit (Ping timeout: 255 seconds)
08:31:41*hax-scramper joined #nim
08:36:19*hax-scramper quit (Read error: Connection reset by peer)
08:36:33*hax-scramper joined #nim
08:50:49*Vladar joined #nim
08:54:21PMunchHmm, and what does destroy do?
08:54:58*s4mu3lbk joined #nim
08:58:17leorizeit's mapped to `=destroy`
08:58:20*zahary joined #nim
08:58:56leorizefor strings/seqs it zeros out all fields and free all memory
08:59:28PMunchOh, it explicitly frees it? Not just leave it for the GC?
09:00:02PMunchBut cool, so reset will run any destructor as well, that's nice
09:00:09leorizestrings v2 is no longer gc-based
09:01:01*s4mu3lbk19 joined #nim
09:05:11*jwm224 quit (Ping timeout: 246 seconds)
09:05:31*floppydh joined #nim
09:09:57*zahary quit (Quit: Leaving.)
09:18:59*jwm224 joined #nim
09:21:24*s4mu3lbk quit (Ping timeout: 258 seconds)
09:21:43*s4mu3lbk19 quit (Ping timeout: 260 seconds)
09:36:19PMunchNot sure if everyone caught this, but the final Nim talk by mratsim is finally up: https://mirror.as35701.net/video.fosdem.org/2020/AW1.125/nimultralowoverheadruntime.mp4
09:37:28FromDiscord<exelotl> ayyy
09:39:30*zahary joined #nim
09:41:30*zahary1 joined #nim
09:41:30*zahary quit (Read error: Connection reset by peer)
09:44:06*marmotini_ joined #nim
09:49:57*adalricus joined #nim
09:52:26*hax-scramper quit (Ping timeout: 240 seconds)
09:54:35*adalricus quit (Quit: ERC (IRC client for Emacs 26.3))
09:54:47*hax-scramper joined #nim
09:56:40*letto quit (Ping timeout: 258 seconds)
09:57:56*letto joined #nim
10:01:04*zahary1 quit (Quit: Leaving.)
10:01:16*hax-scramper quit (Read error: Connection reset by peer)
10:01:28*hax-scramper joined #nim
10:02:25*Romanson joined #nim
10:04:32Araqwe could discuss https://github.com/nim-lang/Nim/issues/11776 and https://github.com/nim-lang/Nim/issues/12862 here
10:04:34disbotThe Defect exceptions are not consistently tracked ; snippet at 12https://play.nim-lang.org/#ix=23Zp
10:09:33*marmotini_ quit (Remote host closed the connection)
10:10:08*marmotini_ joined #nim
10:10:27PMunchOh wow, that's a long discussion to catch up on
10:11:14*solitudesf quit (Ping timeout: 258 seconds)
10:11:36AraqI'll write another proposal, I think
10:14:39Araqspoiler: in the end the fix is a single export marker for 'sysFatal'
10:14:55*marmotini_ quit (Ping timeout: 265 seconds)
10:23:31*s4mu3lbk joined #nim
10:25:07*hax-scramper quit (Read error: Connection reset by peer)
10:25:21*hax-scramper joined #nim
10:31:49*hax-scramper quit (Read error: Connection reset by peer)
10:32:03*hax-scramper joined #nim
10:34:03*NimBot joined #nim
10:42:50*hax-scramper quit (Read error: Connection reset by peer)
10:43:03*hax-scramper joined #nim
10:44:18*marmotini_ joined #nim
10:49:16*xet7 quit (Remote host closed the connection)
10:56:20*zahary joined #nim
10:56:51*dddddd quit (Ping timeout: 260 seconds)
10:56:51*zahary quit (Read error: Connection reset by peer)
10:57:01*zahary joined #nim
10:58:20*xet7 joined #nim
10:59:22FromDiscord<mratsim> My FOSDEM talk has been released yesterday! I'm not too sure what happened in the review process, I only had like 1 hour to review it at 11PM before it was released at midnight (cc @Pmunch): https://video.fosdem.org/2020/AW1.125/nimultralowoverheadruntime.webm
11:01:49Araqmratsim: maybe now we can get some discussion going about exceptions? :P
11:02:06*adalricus joined #nim
11:08:05*chemist69 quit (Ping timeout: 265 seconds)
11:08:13*s4mu3lbk quit (Quit: WeeChat 2.3)
11:08:29*chemist69 joined #nim
11:09:02*s4mu3lbk joined #nim
11:10:08*hax-scramper quit (Read error: Connection reset by peer)
11:10:21*hax-scramper joined #nim
11:15:03*hax-scramper quit (Ping timeout: 260 seconds)
11:15:32*hax-scramper joined #nim
11:17:39*hax-scramper quit (Read error: Connection reset by peer)
11:17:46FromDiscord<mratsim> I'd rather not, if you look into the Status libp2p discord channel, the past 3 days have been about async exceptions handling. It's like a bomb that distracts everyone ;), feel free to read this: https://github.com/status-im/nim-chronos/issues/81
11:17:48disbotAsync procedures and Defects.
11:17:51*hax-scramper joined #nim
11:18:51*adalricus quit (Remote host closed the connection)
11:21:12*lritter joined #nim
11:24:34Araq:-)
11:31:09*adalricus joined #nim
11:40:04*hax-scramper quit (Read error: Connection reset by peer)
11:40:19*hax-scramper joined #nim
11:41:55*s4mu3lbk quit (Ping timeout: 265 seconds)
11:47:28*Hideki_ joined #nim
11:52:13*zahary quit (Quit: Leaving.)
11:54:45*hax-scramper quit (Read error: Connection reset by peer)
11:55:32*hax-scramper joined #nim
12:00:00*zahary joined #nim
12:05:55PMunch@mratsim, wait really? I thought the videos were just pending until the reviewer was done
12:06:09*hax-scramper quit (Read error: Connection reset by peer)
12:06:16*hax-scramper joined #nim
12:07:35PMunchHmm, looks like something weird might've happened, I can't see that I've gotten an e-mail about the first review. So that might've been lost and someone manually sent you one prompting you to review it with a timeframe
12:08:44*Vladar quit (Quit: Leaving)
12:12:47*hax-scramper quit (Read error: Connection reset by peer)
12:13:48*s4mu3lbk joined #nim
12:13:54*hax-scramper joined #nim
12:16:12*adalricus quit (Ping timeout: 258 seconds)
12:19:06*Romanson quit (Quit: Connection closed for inactivity)
12:20:24*nsf quit (Quit: WeeChat 2.7)
12:33:38*s4mu3lbk quit (Ping timeout: 265 seconds)
12:36:46*couven92 quit (Read error: Connection reset by peer)
12:37:12*couven92 joined #nim
12:45:22FromDiscord<Bawbby> quick q: I'm trying to use a header only librariy, stb_image.h and i'm wondering if I can use it without having a c file with just an include.
12:46:26FromDiscord<Bawbby> https://github.com/define-private-public/stb_image-Nim
12:47:18FromDiscord<Bawbby> i've seen this library, probably will use it any ways. but i'm just wondering if I can just use the header only and no c files.
12:47:19Araqyes
12:47:43Araquse .header pragmas and you should be fine
12:49:07FromDiscord<Bawbby> would I do it like this? {.header: "stb_image.h} proc stbi_function(...): ...
12:50:47*uvegbot quit (Ping timeout: 240 seconds)
12:51:47PMunchproc stbi_function(...): ... {.header: "stb_image.h", importc.}
12:52:23PMunchhttps://livebook.manning.com/book/nim-in-action/chapter-8/37
12:53:46FromDiscord<Bawbby> Il'll try that out, thanks.
12:54:26*matti quit (Ping timeout: 240 seconds)
12:54:27*noonien quit (Ping timeout: 240 seconds)
12:54:47*npgm quit (Ping timeout: 260 seconds)
12:55:00*r4vi quit (Ping timeout: 248 seconds)
12:55:13*d10n-work quit (Read error: Connection reset by peer)
12:55:21*r4vi joined #nim
12:55:26*npgm joined #nim
12:55:31*noonien joined #nim
12:55:58*matti joined #nim
12:55:58*d10n-work joined #nim
12:57:56*hax-scramper quit (Read error: Connection reset by peer)
12:58:07*hax-scramper joined #nim
12:58:56*Hideki_ quit (Remote host closed the connection)
13:00:49*Hideki_ joined #nim
13:01:54*hax-scramper quit (Read error: Connection reset by peer)
13:02:12*rockcavera joined #nim
13:03:45*hax-scramper joined #nim
13:03:51*uvegbot joined #nim
13:04:31*endragor quit (Remote host closed the connection)
13:05:32*Hideki_ quit (Ping timeout: 265 seconds)
13:06:42*endragor joined #nim
13:10:35*nullwarp joined #nim
13:10:51*endragor quit (Ping timeout: 240 seconds)
13:11:28*hax-scramper quit (Read error: Connection reset by peer)
13:12:50*hax-scramper joined #nim
13:17:44*hax-scramper quit (Read error: Connection reset by peer)
13:19:06*hax-scramper joined #nim
13:19:17*rockcavera is now known as Guest53709
13:19:17*tiorock joined #nim
13:19:18*Guest53709 quit (Killed (tolkien.freenode.net (Nickname regained by services)))
13:19:18*tiorock is now known as rockcavera
13:22:15*a_chou joined #nim
13:22:35*hax-scramper quit (Read error: Connection reset by peer)
13:22:47*hax-scramper joined #nim
13:22:58*clemens3 quit (Read error: Connection reset by peer)
13:23:48*clemens3 joined #nim
13:24:06*matti quit (Ping timeout: 240 seconds)
13:25:29*matti joined #nim
13:25:33*sz0 joined #nim
13:25:43Araqwhat the ...
13:25:50Araq"The compiler attempts to inline the function, regardless of the characteristics of the function.
13:25:50AraqIn some circumstances the compiler may choose to ignore the __attribute__((always_inline)) attribute and not inline a function. For example:
13:25:50AraqA recursive function is never inlined into itself.
13:25:50AraqFunctions making use of alloca() are never inlined."
13:26:12Araqso 'always_inline' doesn't always inline, wtf
13:26:28*hax-scramper quit (Read error: Connection reset by peer)
13:26:33Araqwhat's the point then? there is already "inline, sometimes, maybe"
13:27:19*hax-scramper joined #nim
13:28:40*tiorock joined #nim
13:28:40*rockcavera quit (Killed (weber.freenode.net (Nickname regained by services)))
13:28:40*tiorock is now known as rockcavera
13:28:40*rockcavera quit (Changing host)
13:28:40*rockcavera joined #nim
13:28:58*adalricus joined #nim
13:31:01*tiorock joined #nim
13:31:01*rockcavera is now known as Guest89822
13:31:01*tiorock quit (Changing host)
13:31:01*tiorock joined #nim
13:31:01*Guest89822 quit (Killed (hitchcock.freenode.net (Nickname regained by services)))
13:31:01*tiorock is now known as rockcavera
13:32:30*krux02 joined #nim
13:33:42*hax-scramper quit (Read error: Connection reset by peer)
13:33:52*hax-scramper joined #nim
13:35:29FromDiscord<mratsim> @PMunch, I didn't even have time to review the video
13:35:41FromDiscord<mratsim> the review request was sent at 11PM and the release at midnight
13:36:23PMunch@mratsim, huh that is weird
13:36:38FromDiscord<mratsim> @Araq, I read this as well, I'm not sure. For me static indicates to the compiler that the proc is defined in the same compilation unit so can easily be inlined
13:36:44FromDiscord<mratsim> extern inline seems really strange
13:37:03PMunchI had plenty of time to review mine. But as I said I think the initial notification got lost somewhere, and what you got was basically a "this is the final warning, review or we'll just release it as-is".
13:37:04FromDiscord<mratsim> that would probably requires extra passes by GCC to find the definitions
13:37:46*Hideki_ joined #nim
13:41:18*rockcavera quit (Ping timeout: 258 seconds)
13:41:43*rockcavera joined #nim
13:41:43*rockcavera quit (Changing host)
13:41:43*rockcavera joined #nim
13:41:45*rockcavera is now known as Guest5689
13:42:27*Hideki_ quit (Ping timeout: 258 seconds)
13:44:05*tiorock joined #nim
13:44:06*tiorock quit (Changing host)
13:44:06*tiorock joined #nim
13:44:06*tiorock is now known as rockcavera
13:44:15*rockcavera is now known as Guest31699
13:44:15*Guest31699 quit (Killed (tolkien.freenode.net (Nickname regained by services)))
13:44:32*tiorock joined #nim
13:46:26*Guest5689 quit (Read error: Connection reset by peer)
13:46:27*tiorock quit (Read error: Connection reset by peer)
13:46:51*tiorock joined #nim
13:46:51*tiorock is now known as rockcavera
13:49:35*dadada joined #nim
13:49:57*dadada is now known as Guest89518
13:52:28*rockcavera quit (Ping timeout: 255 seconds)
13:52:48*tiorock joined #nim
13:52:49*tiorock is now known as rockcavera
13:52:49*rockcavera quit (Changing host)
13:52:49*rockcavera joined #nim
13:56:14*a_chou quit (Ping timeout: 256 seconds)
13:57:16*couven92 quit (Read error: Connection reset by peer)
13:57:42*couven92 joined #nim
13:58:18*marmotini_ quit (Remote host closed the connection)
13:58:50*marmotini_ joined #nim
14:03:16*marmotini_ quit (Ping timeout: 255 seconds)
14:08:51*rockcavera is now known as Guest56230
14:09:34*rockcavera joined #nim
14:18:24*Hideki_ joined #nim
14:22:21FromDiscord<Varriount> @mratsim static is one of those terms that means different things across programming languages
14:23:59*marmotini_ joined #nim
14:25:25*alexander92 joined #nim
14:25:27alexander92hey guys
14:25:43alexander92gitter is not connected again since maybe yesterday
14:25:58alexander92i guess we might need to put our own bot
14:26:39*blueberrypie joined #nim
14:33:24*zahary quit (Quit: Leaving.)
14:34:35*Guest56230 quit (Remote host closed the connection)
14:35:23PMunchWho controls the Gitter bot?
14:37:55*Hideki_ quit (Ping timeout: 255 seconds)
14:44:08lqdev[m]Araq: I wonder why it doesn't error out instead of doing something retarded. but I guess that's just how C is
14:44:45*couven92 quit (Read error: Connection reset by peer)
14:44:51lqdev[m]well, maybe it's not retarded, but the compiler *really* wants your code to get compiled
14:45:12*couven92 joined #nim
14:47:05*gangstacat quit (Quit: Ĝis!)
14:47:15*zahary joined #nim
14:47:44Araqlqdev[m], well it's GCC, not C, C doesn't have always_inline
14:49:02*hax-scramper quit (Read error: Connection reset by peer)
14:49:46*hax-scramper joined #nim
14:54:29*nsf joined #nim
14:58:16*gangstacat joined #nim
15:00:00alexander92PMunch no idea
15:00:04alexander92i think the crystal guys
15:00:10alexander92but i might be wrong
15:00:40PMunchThe crystal guys control our Gitter bot?
15:00:53PMunchOh wait, we're not running our own instance?
15:02:21alexander92i dont remember, i think they have written/maintained one gitter/irc bot
15:02:49alexander92https://github.com/oprypin/critter ?
15:07:20*PMunch quit (Quit: Leaving)
15:13:55FromDiscord<mratsim> Yes it's oprypin
15:25:45*s4mu3lbk joined #nim
15:30:29FromDiscord<Bawbby> I'm having issues with creating bindings to a header library (stb_image.h)
15:30:46FromDiscord<Bawbby> my function decl is as so: proc stbi_load*(filename: cstring, x, y, channels_in_file: var cint, desired_channels: cint): ptr cuchar {.header: "stb_image.h", importc.}
15:31:22FromDiscord<Bawbby> I try to use it but I get a link error.
15:31:44FromDiscord<Varriount> @Bawbby Looks like you need to add a calling convention?
15:32:22FromDiscord<Varriount> `cdecl` is usually the convention for C library calls
15:32:22*hax-scramper quit (Ping timeout: 255 seconds)
15:32:42*hax-scramper joined #nim
15:32:58leorize!repo stb-image
15:33:00disbothttps://github.com/acolley/nim-stb-image -- 9nim-stb-image: 11A Nimrod wrapper for the excellent stb_image library. 15 0⭐ 0🍴
15:33:45leorizeah disbot can't do gitlab
15:33:47leorizehttps://gitlab.com/define-private-public/stb_image-Nim
15:33:52FromDiscord<Bawbby> I changed the pragma to: {.header: "stb_image.h", importc, cdecl.} but still get a link error
15:34:50FromDiscord<Bawbby> I've seen that library leorize, but I'm just trying to get around needing a c file with an include
15:34:56FromDiscord<Varriount> What's the error?
15:35:35FromDiscord<Bawbby> dir\to\nim_game_d\@mnim_game.nim.c.o:@mnim_game.nim.c:(.text+0x3ce): undefined reference to `stbi_load'
15:35:40FromDiscord<clyybber> @Bawbby You are gonna need the c file too, with header: "stb_image.h" ?
15:36:18leorizestb_image is a header-only library
15:36:30FromDiscord<Bawbby> can nim not use header libs without needing a c file?
15:36:55*marmotini_ quit (Remote host closed the connection)
15:37:13FromDiscord<clyybber> what? But std_image is a header only library
15:37:20FromDiscord<clyybber> *stb
15:37:37leorizenim should be able to handle this
15:37:44FromDiscord<Varriount> https://github.com/nothings/stb/issues/3#issuecomment-45367323
15:37:46disbotunresolved external symbol _stbi_load ; snippet at 12https://play.nim-lang.org/#ix=2dnA
15:37:55FromDiscord<mratsim> either you use an C-file like what stb_image-Nim does or you use some currentSourcePath + passC -I hack like this header only wrapper: https://github.com/status-im/nim-ttmath/blob/master/src/ttmath.nim#L4-L5
15:39:22FromDiscord<mratsim> an intermediate C-file*
15:41:05*marmotini_ joined #nim
15:42:39*clyybber joined #nim
15:44:03FromDiscord<Bawbby> hmm, ok. I'll use a c-file then if there is no way without a hack.
15:44:15FromDiscord<Bawbby> thanks for the help.
15:45:09lqdev[m]actually, it should be possible using .emit
15:45:22lqdev[m]to not use a C file
15:45:32disruptekdisbot knows about nimble packages via !package(s)
15:50:06*chemist69 quit (Ping timeout: 240 seconds)
15:51:08FromDiscord<clyybber> @Bawbby But using a c-file is the opposite of a hack
15:51:18*chemist69 joined #nim
15:51:18FromDiscord<clyybber> its how you *should* do it
15:51:33FromDiscord<clyybber> unless you want to dynamically link
15:51:49disruptek#13436
15:51:49disbothttps://github.com/nim-lang/Nim/issues/13436 -- 3cpp --gc:arc --exceptions:goto fails to raise with discard
15:52:11FromDiscord<clyybber> which in this case is a bad idea, since I don't think any repo distributes shared libraries of the stb_* libs
15:52:17disruptekexceptions:goto is not default with cpp+arc. 🐼
15:52:35clyybberyeah it is only with c + arc
15:53:00disrupteksuprise!
15:53:25disrupteksuuuuprise, mofo!
15:54:27alexander92isnt the whole arc thing still experimental
15:55:12disruptekif we don't experiment with it, then no, it's not even that.
15:55:52alexander92it can be just mental
15:56:01disruptekoh, it's mental alright.
15:56:18alexander92thats some kind of slang right
15:56:20alexander92i knew it
15:56:27*abm joined #nim
15:56:37disruptekthe kids say, `metal` now.
15:56:37shashlick@Bawbby: check out how I wrapped a header only lib - https://github.com/genotrance/feud/blob/master/wrappers/fuzzy.nim
15:56:49shashlickNo c file required
15:57:36lqdev[m]btw does .passC work only for the specific file it is used in?
15:57:50shashlickIt is global
15:58:22FromDiscord<mratsim> use {.localpassC:"-foo".}
16:00:43FromDiscord<mratsim> @Bawbby it's a hack because currentSourcePath wasn't suppose to be used like that, but that's the only sane way to handle header-only C++ libraries in my opinion
16:03:15clyybbershashlick: No C file required as in we download it :p
16:06:32*dddddd joined #nim
16:09:17*clyybber quit (Quit: WeeChat 2.7.1)
16:10:15disruptekaraq will stream some stuff.
16:10:23disruptekget ready for incremental compilation wisdom.
16:10:38Araqoh you announced it
16:10:44Araqso now there is no way back
16:11:05disruptekyep.
16:15:32shashlickclyybber? We only download the header
16:16:00*Vladar joined #nim
16:16:26narimiran(shashlick, have you seen my PM? :))
16:16:48shashlickYep
16:18:03*floppydh quit (Quit: WeeChat 2.7.1)
16:26:43*alexander92 quit (Read error: Connection reset by peer)
16:28:57*tiorock joined #nim
16:28:57*rockcavera is now known as Guest43054
16:28:57*tiorock quit (Changing host)
16:28:57*tiorock joined #nim
16:28:57*Guest43054 quit (Killed (hitchcock.freenode.net (Nickname regained by services)))
16:28:57*tiorock is now known as rockcavera
16:29:11*theelous3 joined #nim
16:29:49*marmotini_ quit (Remote host closed the connection)
16:30:11*tiorock joined #nim
16:30:11*tiorock quit (Changing host)
16:30:11*tiorock joined #nim
16:30:11*rockcavera quit (Killed (barjavel.freenode.net (Nickname regained by services)))
16:30:11*tiorock is now known as rockcavera
16:30:26*marmotini_ joined #nim
16:34:19*marmotini_ quit (Read error: Connection reset by peer)
16:34:34*marmotini_ joined #nim
16:36:46*tiorock joined #nim
16:36:46*tiorock quit (Changing host)
16:36:46*tiorock joined #nim
16:36:46*rockcavera is now known as Guest28811
16:36:46*Guest28811 quit (Killed (cherryh.freenode.net (Nickname regained by services)))
16:36:46*tiorock is now known as rockcavera
16:40:58*ptdel joined #nim
16:47:10*marmotini_ quit (Remote host closed the connection)
16:47:45*marmotini_ joined #nim
16:47:58*dwdv joined #nim
16:51:25*marmotini_ quit (Remote host closed the connection)
16:51:38*marmotini_ joined #nim
16:56:59*Trustable joined #nim
17:13:07*Vladar quit (Quit: Leaving)
17:14:16*leorize quit (Quit: WeeChat 2.7.1)
17:21:05*nsf quit (Quit: WeeChat 2.7)
17:24:23*marmotini_ quit (Remote host closed the connection)
17:24:46*marmotini_ joined #nim
17:30:14*zahary quit (Quit: Leaving.)
17:39:25*s4mu3lbk quit (Quit: WeeChat 2.3)
17:39:45*samuel joined #nim
17:40:07*samuel is now known as s4mu3lb
17:40:11*s4mu3lb is now known as s4mu3lbk
17:40:39*s4mu3lbk quit (Client Quit)
17:41:15*s4muelbk joined #nim
17:43:06*Lord_Nightmare quit (Quit: ZNC - http://znc.in)
17:44:17*Lord_Nightmare joined #nim
17:48:31*cyraxjoe quit (Read error: Connection reset by peer)
17:53:04*luis_ joined #nim
17:53:06*cyraxjoe joined #nim
17:58:44*luis_ quit (Quit: luis_)
18:00:24*marmotini_ quit (Remote host closed the connection)
18:00:45*marmotini_ joined #nim
18:00:59*marmotini_ quit (Remote host closed the connection)
18:01:30*marmotini_ joined #nim
18:06:10*marmotini_ quit (Ping timeout: 265 seconds)
18:11:56*s4muelbk quit (Quit: WeeChat 2.3)
18:12:40*s4mu3lbk joined #nim
18:13:55*s4mu3lbk quit (Client Quit)
18:13:55*s4mu3lbk83 joined #nim
18:14:04*s4mu3lbk83 quit (Remote host closed the connection)
18:14:31*s4mu3lbk joined #nim
18:16:45*marmotini_ joined #nim
18:16:49*Guest89518 is now known as dadada
18:39:17ozAh looks like the matrix bridge is off again.
18:40:02*my_dude joined #nim
18:49:12*adalricus quit (Remote host closed the connection)
18:54:40*tane joined #nim
18:56:05FromDiscord<clyybber> shashlick: But stb_image is a header only library
18:56:28FromDiscord<clyybber> Bawbby meant the header itself with C file
18:57:38FromDiscord<clyybber> Wait, you are even wrapping a header only lib there? Of course you are only downloading the header then.
18:58:31shashlickFuzzy is also a header only lib
18:58:41shashlickYou don't need a C file is what I was saying
18:59:46dadadaa button on play.nim-lang.org for expanding all macros would be nice, could help people learn macros or even debug
19:04:09disruptekmacros.expandMacros: ...
19:05:18FromDiscord<clyybber> shashlick: You mean a .c file right? Bawbby meant the .h file with "C file" I suppose
19:06:52shashlickOk I thought he was saying he had to create a C file with #include header and my point was that it wasn't needed
19:07:26FromDiscord<clyybber> Ah okay
19:08:13*Guest32153 joined #nim
19:23:09*nsf joined #nim
19:23:26*sagax quit (Ping timeout: 240 seconds)
19:27:13*lbart_ joined #nim
19:27:44*lbart quit (Ping timeout: 256 seconds)
19:29:41FromDiscord<clyybber> Araq: Lol, amazing that VSCode does that line jumping thing
19:29:54FromDiscord<clyybber> depending on the terminal window
19:29:55FromDiscord<clyybber> hahaha
19:30:34*beatmox quit (Ping timeout: 256 seconds)
19:30:49disruptekwhat?
19:30:50*beatmox joined #nim
19:31:14FromDiscord<clyybber> you missed it on stream 😄
19:35:24disrupteki still don't really have muscle-memory for opening files in vim. i think because the normal auto-find-file-like-blah doesn't work for me 100% of the time.
19:35:45FromDiscord<clyybber> disruptek: At 6:00
19:35:56disruptekbut it's about the only thing i (vaguely) like about vscode; its terminal-clicky-clicky-boom-it's-loaded thing.
19:43:41FromDiscord<Varriount> disruptek: I like VSCode, I just wish it didn't use 3+ processes and half a gigabyte to run
19:44:27disruptekif you like it, i don't think there are any good reasons not to suffer half a gig of memory use.
19:44:39disruptekto me, that's just not impactful enough to worry about it.
19:52:09*lbart_ is now known as lbart
19:53:19FromDiscord<Bawbby> status update: Was able to get stb_image to work with no extra c file by using the emit pragma
19:53:35*marmotini_ quit (Remote host closed the connection)
19:53:48FromDiscord<Bawbby> using the #define STB_IMAGE_IMPLEMENTATION and #include "stb_image.h" in the emit
19:54:11*marmotini_ joined #nim
19:55:00Araqbetter might have been a multi-line .header pragma
19:58:34*marmotini_ quit (Ping timeout: 256 seconds)
20:05:50dadadaI tried to see if I could add support for rust style mut (nim var to rust mut)
20:05:57dadadahttps://play.nim-lang.org/#ix=2dp7
20:06:12dadadaseems like it's not possible with macros
20:06:45dadadaam still a beginner when it comes to macros
20:06:50dadadathough
20:06:56*solitudesf joined #nim
20:07:26dadadaif you ask why, 1) for fun 2) because I think mut is more descriptive
20:11:44*solitudesf quit (Read error: Connection reset by peer)
20:11:50shashlick@Bawbby did you see the example I sent?
20:12:09*solitudesf joined #nim
20:17:52*marmotini_ joined #nim
20:18:26dadadaexpandMacros on https://play.nim-lang.org/#ix=2dp7 shows that the mut macro isn't expanded in the test proc, but the macro is processed with the int parameter, is this a bug?
20:18:31*marmotini_ quit (Remote host closed the connection)
20:18:45*marmotini_ joined #nim
20:20:33dadadahttps://play.nim-lang.org/#ix=2dpd (with expandMacros)
20:21:43FromDiscord<Bawbby> I've saw your example, I'd rather not use flags.
20:22:15FromDiscord<Bawbby> Does this download the header at compile time? Didn't know you could do that.
20:23:20FromDiscord<Varriount> @Bawbby You could make Nim run rm -rf / at compile time if you want
20:24:07FromDiscord<Bawbby> oh
20:24:08FromDiscord<Bawbby> oh dear
20:24:35FromDiscord<Varriount> >:D
20:24:47*my_dude quit (Quit: my_dude)
20:24:59dadadaVarriount: rm -rf / does exactly nothing just in case you didn't know ... it's not allowed :D
20:25:09dadadaeven for root
20:25:27FromDiscord<Varriount> What about with /* ?
20:25:28FromDiscord<Bawbby> how is that prevented?
20:26:09FromDiscord<Bawbby> does nim error? or remove anything with rm?
20:26:12shashlick@Bawbby you can use passC for the #define
20:26:33shashlickAnd the include isn't needed if you are wrapping the header
20:26:34dadadaBawbby: prevention is hard coded into the rm program I assume
20:27:07*sentreen_ quit (Ping timeout: 260 seconds)
20:27:16FromDiscord<Varriount> I guess you could patch the compiler to ask for confirmation on reading/writing files or running arbitrary processes at compile time
20:27:55dadadaVarriount: operation not permitted for rm -rf /* as well
20:27:58FromDiscord<Varriount> Might not be a bad feature to implement...
20:29:24shashlickPlease don't
20:29:41shashlickMake allows all sorts of commands
20:29:43dadada /* seems to delete data with lesser protection though, like content in user diretories, so it's NOT ADVISED to try it
20:29:46shashlickAt compile time
20:32:13*nsf quit (Quit: WeeChat 2.7)
20:33:48*sagax joined #nim
20:41:37*sentreen joined #nim
20:43:21*imogen quit (Ping timeout: 258 seconds)
20:49:10*imogen joined #nim
20:51:17*narimiran quit (Ping timeout: 256 seconds)
20:57:50*letto quit (Quit: Konversation terminated!)
20:59:42*letto joined #nim
20:59:43FromDiscord<clyybber> dadada: The macro still works right?
20:59:46FromDiscord<clyybber> AFAICT at least
21:00:00FromDiscord<clyybber> but expandMacros doesn't show the expected output?
21:01:52dadadaclyybber: no it doesn't work AFAI can see
21:03:46dadadaclyybber: the test func should work as if mut was var, but when trying to pass a variable to it, the compiler complains that it's not compatible with mut int, yet after the expansion of macros the compiler ought to know it's var int and not complain
21:03:48*imogen quit (Read error: Connection reset by peer)
21:04:00FromDiscord<clyybber> huh?
21:04:06FromDiscord<clyybber> I cant rerproduce
21:04:10FromDiscord<clyybber> you are passing a literal to it
21:04:13FromDiscord<clyybber> thats not mutable
21:04:47disruptekmaybe start with writing nim in nim and then move on to writing rust in nim.
21:06:09*imogen joined #nim
21:14:09*jjido joined #nim
21:15:13dadadaclyybber, disruptek: the plan isn't rust in nim, but to see what macros are capable of, ty for pointing out my mistake, it's reassuring to see that it's indeed possible
21:24:23*FromGitter joined #nim
21:25:05FromGitter<matrixbot> `Alistair Keys` The $ operator should do the trick: https://play.nim-lang.org/#ix=2dpq
21:25:31*NimBot joined #nim
21:29:34*blackbeard420 quit (Quit: ZNC 1.7.5 - https://znc.in)
21:30:02*blackbeard420 joined #nim
21:37:13*Lord_Nightmare quit (Quit: ZNC - http://znc.in)
21:40:14*Lord_Nightmare joined #nim
21:46:53*jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:02:45*couven92 quit (Read error: Connection reset by peer)
22:03:10*couven92 joined #nim
22:03:55FromDiscord<clyybber> np
22:07:37*a_b_m joined #nim
22:08:56*abm quit (Ping timeout: 268 seconds)
22:15:33*Kaivo quit (Quit: WeeChat 2.7.1)
22:15:56*marmotini_ quit (Remote host closed the connection)
22:16:18*s4mu3lbk quit (Remote host closed the connection)
22:16:28*marmotini_ joined #nim
22:18:34*jjido joined #nim
22:20:09*a_b_m quit (Quit: Leaving)
22:20:58*marmotini_ quit (Ping timeout: 255 seconds)
22:28:37*xet7 quit (Quit: Leaving)
22:29:23*solitudesf quit (Ping timeout: 260 seconds)
22:36:00shashlickit isn't possible to use function pointers with generic procs right?
22:36:39shashlicklike casting a generic proc to a pointer
22:36:54disruptekit has to be instantiated by something.
22:37:00disruptekotherwise it doesn't exist.
22:37:33*Trustable quit (Remote host closed the connection)
22:38:01disrupteki'd expect it to work if you can call it with a concrete type.
22:42:20shashlickya and in this case, i don't know what types users will create
22:42:24shashlickso out of luck
22:42:33FromDiscord<clyybber> yeah
22:42:56FromDiscord<clyybber> what do you need it for tho?
22:46:12disrupteksounds strange, alright.
22:55:26FromDiscord<mratsim> if it's not known at compile-time you probably need closures/callbacks/handlers with a specific signature and a ref object (possibly inherited)
22:55:34FromDiscord<mratsim> or use methods
22:56:18disruptekprobably smarter to make your own dispatch.
22:56:54FromDiscord<mratsim> this is what I use for generic proc pointer when I don't know the actual final type: https://github.com/mratsim/Arraymancer/blob/master/src/autograd/autograd_common.nim#L85-L96
22:58:56FromDiscord<mratsim> that's for building a direct acyclic graph of operations, operations are not predetermined and can be added by users
23:03:53disruptekusers make my eyes sweat.
23:03:54*tane quit (Quit: Leaving)
23:11:12*Hideki_ joined #nim
23:15:14*Hideki_ quit (Ping timeout: 240 seconds)
23:15:48*Hideki_ joined #nim
23:22:20*lritter quit (Quit: Leaving)
23:27:07*Hideki_ quit (Ping timeout: 255 seconds)
23:27:26*ptdel quit (Ping timeout: 240 seconds)
23:37:36shashlickbasically, i have a bunch of generic procs in the plugin manager that each plugin also needs access to
23:37:59shashlickbut i don't want each plugin to have to compile and maintain its own copy of those procs
23:38:21shashlicki can give plugins access to the plugin manager procs by pointer but it won't work for generic procs
23:43:30*ptdel joined #nim
23:44:41*zyklon joined #nim
23:46:45disruptekwhy would you not want to have another layer here so you can do some introspection, etc. strings, baby.
23:46:47*uvegbot quit (Ping timeout: 240 seconds)
23:51:44*Hideki_ joined #nim
23:55:09FromDiscord<Rika> What can I use to make a repl like system on nim (just the input output part)
23:55:47disruptekhttps://nim-lang.org/docs/linenoise.html
23:56:10*Hideki_ quit (Ping timeout: 258 seconds)
23:56:46*couven92 quit (Read error: Connection reset by peer)
23:57:09*couven92 joined #nim
23:57:36FromDiscord<Rika> Oh wow, it's in the std lib
23:57:37FromDiscord<Rika> Wtf
23:57:40FromDiscord<Rika> That's cool
23:58:11FromDiscord<Rika> Undocumented tho rip, guess it's a wrapper to linenoise?