00:06:21 | * | actuallybatman joined #nim |
00:14:57 | FromDiscord | <Elegant Beef> well i throw in the towel |
00:15:35 | FromDiscord | <Elegant Beef> Final error |
00:15:35 | FromDiscord | <Elegant Beef> https://hastebin.com/sacigelexi.coffeescript |
00:23:31 | * | krux02_ joined #nim |
00:26:05 | * | krux02 quit (Ping timeout: 240 seconds) |
00:38:08 | shashlick | Hmm |
00:38:23 | shashlick | What version of gcc did you go to |
00:38:28 | shashlick | Need to check on that file |
00:46:05 | FromDiscord | <Elegant Beef> idk i went back to linux after cryin in the corner |
00:53:47 | shashlick | Sorry :) |
00:53:59 | shashlick | I can build for you |
00:55:06 | shashlick | Or you can try Travis |
00:55:20 | shashlick | Where did you get your cmake and what version was it |
00:55:27 | FromDiscord | <Elegant Beef> from cmake |
00:55:32 | FromDiscord | <Elegant Beef> i dont r ecall |
00:55:33 | FromDiscord | <Elegant Beef> i dont recall |
00:56:06 | * | Hideki_ joined #nim |
00:58:09 | shashlick | Ok well |
01:02:29 | FromDiscord | <Elegant Beef> Travis supports nim? |
01:02:47 | shashlick | Use the script I sent |
01:02:52 | shashlick | It installs Nim |
01:02:57 | shashlick | And other stuff needed |
01:08:29 | * | krux02_ quit (Remote host closed the connection) |
01:18:47 | FromDiscord | <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:37 | shashlick | Cool |
01:41:07 | FromDiscord | <Elegant Beef> although i dont know how to get the build so 😄 |
01:41:55 | shashlick | You can post releases onto github |
01:42:53 | FromDiscord | <Elegant Beef> yea im sure i could, if i had a modicum of idea how to do that 😛 |
01:45:23 | shashlick | Let me share an example |
01:45:57 | shashlick | https://github.com/genotrance/feud/blob/master/.travis.yml#L40 |
01:46:17 | shashlick | The api key needs to be set in the project config in Travis |
01:46:55 | shashlick | Here's the choosenim example |
01:46:58 | shashlick | https://github.com/dom96/choosenim/blob/master/.travis.yml#L41 |
01:48:38 | FromDiscord | <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:32 | FromDiscord | <Rika> I don't think he did |
02:29:32 | FromDiscord | <Elegant Beef> I mean it worked so idk |
02:44:38 | * | rockcavera quit (Read error: Connection reset by peer) |
02:48:00 | shashlick | Yes in the config, secret of course |
02:48:59 | disruptek | well, not anymore. |
02:50:53 | FromDiscord | <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:23 | shashlick | See the feud yml |
03:12:41 | shashlick | Zip 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:01 | FromDiscord | <Winton> next project of mine 😄 |
03:30:04 | FromDiscord | <Winton> help me dude |
03:30:31 | FromDiscord | <Winton> Someone has some library knowledge, I want to download through the URL youtube mp3 |
03:30:34 | * | marmotini_ joined #nim |
03:31:00 | disruptek | whotube? |
03:31:19 | FromDiscord | <Winton> youtube |
03:31:33 | FromDiscord | <Winton> through the url, download extension mp3 |
03:31:36 | disruptek | is that like redtube? |
03:31:39 | FromDiscord | <Winton> convert mp |
03:31:55 | FromDiscord | <Winton> redtube mmm wait |
03:32:26 | FromDiscord | <Winton> jajjaja not |
03:32:39 | FromDiscord | <Winton> https://ytmp3.cc/en13/ |
03:36:24 | * | blueberrypie quit (Quit: leaving) |
03:36:48 | leorize | if 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:33 | FromDiscord | <Winton> haa ok |
03:52:45 | FromDiscord | <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:24 | FromDiscord | <Rika> Does nim have a functional programming module on github? If not I'm interested in making one |
04:44:28 | FromDiscord | <Rika> !repo functional |
04:44:30 | disbot | https://github.com/h3rald/min -- 9min: 11A tiny concatenative programming language and shell 15 146⭐ 7🍴 7& 11 more... |
04:44:37 | FromDiscord | <Rika> Hmm |
04:45:26 | * | chemist69 quit (Ping timeout: 256 seconds) |
04:45:30 | FromDiscord | <Rika> Ah, there is, but it's not what I envisioned |
04:45:36 | FromDiscord | <Rika> Time to make my own then |
04:46:05 | * | chemist69 joined #nim |
04:46:12 | disruptek | !repo zero-functional |
04:46:14 | disbot | https://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:53 | disruptek | move your head closer to the router; i'm finding your vision quite fuzzy at this distance. |
04:46:58 | FromDiscord | <Rika> Still not really what I want |
04:47:14 | FromDiscord | <Rika> I'll think of extending zf then |
04:47:19 | FromDiscord | <Elegant Beef> Disruptek have you tried squinting, might be a you side problem |
04:48:27 | disruptek | it'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:39 | FromDiscord | <Rika> Okay |
04:48:52 | disruptek | you don't have to get it right on the money; even a little bit will help. |
04:49:50 | FromDiscord | <Elegant Beef> sorry i only got tau/6 and tau/30 |
04:49:51 | disruptek | no, i mean a little bit on Horiz. Vert does need to turn way more. |
04:49:58 | FromDiscord | <Rika> Sometimes I truly wonder whether disruptek is sane or not |
04:50:12 | disruptek | okay, stop fiddling with it. it's worse than it was, even. |
04:50:15 | disruptek | let me do it. |
04:50:19 | disruptek | just let me do it, jesus. |
04:50:27 | FromDiscord | <Elegant Beef> sorry your auth seems off |
04:50:34 | FromDiscord | <Rika> Lol |
04:50:34 | FromDiscord | <Elegant Beef> Try using a package overhere |
04:50:38 | FromDiscord | <Rika> What a grudge |
04:51:06 | FromDiscord | <Elegant Beef> I mean hopefully disruptek knows i dont have an ill will towards him |
04:52:25 | disruptek | just once i want someone to know what "counter-clockwise" means. |
04:52:28 | disruptek | i mean, fuck. |
04:52:34 | disruptek | "lefty-loosey" |
04:52:37 | disruptek | does that shit help? |
04:52:44 | FromDiscord | <Elegant Beef> it's called positive rotation |
04:52:47 | FromDiscord | <Elegant Beef> and negative rotation |
04:52:52 | disruptek | make a fucking L with your hand or something. |
04:53:03 | disruptek | i don't even know anymore. |
04:53:09 | FromDiscord | <Elegant Beef> What's an L look like again |
04:53:14 | disruptek | what the hell are they teaching your people in school? |
04:53:15 | FromDiscord | <Elegant Beef> Isnt that the bluetooth symbole? |
04:53:21 | FromDiscord | <Elegant Beef> symbol* |
04:53:29 | FromDiscord | <Elegant Beef> "My people" wow what a racist |
04:53:33 | FromDiscord | <Elegant Beef> Bannerino |
04:53:54 | disruptek | it's all a'boot the benjamins. |
04:54:22 | FromDiscord | <Elegant Beef> wow mister midwest, probably doesnt even know what healthcare is |
04:56:23 | FromDiscord | <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:04 | kungtotte | It'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:34 | kungtotte | Same reason why you'd say you're "half way to <DESTINATION>" when you're travelling as opposed to "half way to <ORIGIN>" |
04:59:46 | FromDiscord | <Elegant Beef> Well thanks for the answer but it wasnt sincere |
05:19:30 | disruptek | i'm pretty sure he meant every word. |
05:20:50 | disruptek | kungtotte: don't listen to beef, buddy, i believe you. |
05:21:17 | * | my_dude joined #nim |
05:21:21 | FromDiscord | <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:05 | shashlick | Need some good answers - https://www.reddit.com/r/nim/comments/fd3dcs/does_nim_have_any_kind_of_protection_against_data/ |
06:34:43 | FromDiscord | <Rika> Idts |
06:36:20 | leorize | @mratsim: ^ |
06:46:56 | * | silvernode joined #nim |
06:48:12 | silvernode | I 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:46 | leorize | silvernode: that's... how you'd do it? |
06:52:57 | leorize | what errors are you having? |
06:53:55 | silvernode | Error: expression expected, but found 'keyword for' |
06:54:05 | silvernode | trying to put a for loop in the proc |
06:54:39 | silvernode | out of time though, need to come back to this later. Goodnight everyone. |
06:54:41 | narimiran | silvernode: show us all of your code, preferably using https://play.nim-lang.org/ |
06:54:59 | narimiran | ahhh, i know |
06:55:11 | narimiran | you 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:23 | muffindrake | Is 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:12 | muffindrake | Oh, I suppose 's = @[]' does what I expect? |
07:40:31 | narimiran | muffindrake: maybe `s.setLen(0)`? |
07:41:20 | muffindrake | That 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:56 | leorize | setLen is more efficient |
08:23:04 | leorize | it wouldn't free the memory though |
08:25:04 | PMunch | What do you mean, of course it would free the memory |
08:25:23 | PMunch | You can also do `reset s` |
08:25:46 | PMunch | Oh wait, no it actually wouldn't.. |
08:26:07 | FromDiscord | <Elegant Beef> the capacity stays the same, the length is reduced |
08:26:11 | PMunch | Or would it? Under what conditions does a seq shrink its capacity? |
08:26:19 | PMunch | Or does it ever? |
08:26:29 | leorize[m] | it never shrinks |
08:26:32 | FromDiscord | <Elegant Beef> I assume only when you tell it to |
08:26:40 | FromDiscord | <Elegant Beef> If you even can |
08:26:51 | PMunch | I mean you can do s = newSeqOfCap() |
08:26:57 | PMunch | Or as I said `reset s` |
08:27:02 | leorize[m] | set it to an empty seq |
08:27:17 | leorize[m] | or yea, reset works |
08:27:23 | PMunch | Reset essentially does what the initialisation does, and it works for every type :) |
08:28:26 | leorize[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:21 | PMunch | Hmm, and what does destroy do? |
08:54:58 | * | s4mu3lbk joined #nim |
08:58:17 | leorize | it's mapped to `=destroy` |
08:58:20 | * | zahary joined #nim |
08:58:56 | leorize | for strings/seqs it zeros out all fields and free all memory |
08:59:28 | PMunch | Oh, it explicitly frees it? Not just leave it for the GC? |
09:00:02 | PMunch | But cool, so reset will run any destructor as well, that's nice |
09:00:09 | leorize | strings 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:19 | PMunch | Not 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:28 | FromDiscord | <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:32 | Araq | we could discuss https://github.com/nim-lang/Nim/issues/11776 and https://github.com/nim-lang/Nim/issues/12862 here |
10:04:34 | disbot | ➥ The 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:27 | PMunch | Oh wow, that's a long discussion to catch up on |
10:11:14 | * | solitudesf quit (Ping timeout: 258 seconds) |
10:11:36 | Araq | I'll write another proposal, I think |
10:14:39 | Araq | spoiler: 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:22 | FromDiscord | <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:49 | Araq | mratsim: 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:46 | FromDiscord | <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:48 | disbot | ➥ Async 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:34 | Araq | :-) |
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:55 | PMunch | @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:35 | PMunch | Hmm, 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:22 | FromDiscord | <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:26 | FromDiscord | <Bawbby> https://github.com/define-private-public/stb_image-Nim |
12:47:18 | FromDiscord | <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:19 | Araq | yes |
12:47:43 | Araq | use .header pragmas and you should be fine |
12:49:07 | FromDiscord | <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:47 | PMunch | proc stbi_function(...): ... {.header: "stb_image.h", importc.} |
12:52:23 | PMunch | https://livebook.manning.com/book/nim-in-action/chapter-8/37 |
12:53:46 | FromDiscord | <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:43 | Araq | what the ... |
13:25:50 | Araq | "The compiler attempts to inline the function, regardless of the characteristics of the function. |
13:25:50 | Araq | In some circumstances the compiler may choose to ignore the __attribute__((always_inline)) attribute and not inline a function. For example: |
13:25:50 | Araq | A recursive function is never inlined into itself. |
13:25:50 | Araq | Functions making use of alloca() are never inlined." |
13:26:12 | Araq | so 'always_inline' doesn't always inline, wtf |
13:26:28 | * | hax-scramper quit (Read error: Connection reset by peer) |
13:26:33 | Araq | what'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:29 | FromDiscord | <mratsim> @PMunch, I didn't even have time to review the video |
13:35:41 | FromDiscord | <mratsim> the review request was sent at 11PM and the release at midnight |
13:36:23 | PMunch | @mratsim, huh that is weird |
13:36:38 | FromDiscord | <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:44 | FromDiscord | <mratsim> extern inline seems really strange |
13:37:03 | PMunch | I 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:04 | FromDiscord | <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:21 | FromDiscord | <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:27 | alexander92 | hey guys |
14:25:43 | alexander92 | gitter is not connected again since maybe yesterday |
14:25:58 | alexander92 | i 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:23 | PMunch | Who controls the Gitter bot? |
14:37:55 | * | Hideki_ quit (Ping timeout: 255 seconds) |
14:44:08 | lqdev[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:51 | lqdev[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:44 | Araq | lqdev[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:00 | alexander92 | PMunch no idea |
15:00:04 | alexander92 | i think the crystal guys |
15:00:10 | alexander92 | but i might be wrong |
15:00:40 | PMunch | The crystal guys control our Gitter bot? |
15:00:53 | PMunch | Oh wait, we're not running our own instance? |
15:02:21 | alexander92 | i dont remember, i think they have written/maintained one gitter/irc bot |
15:02:49 | alexander92 | https://github.com/oprypin/critter ? |
15:07:20 | * | PMunch quit (Quit: Leaving) |
15:13:55 | FromDiscord | <mratsim> Yes it's oprypin |
15:25:45 | * | s4mu3lbk joined #nim |
15:30:29 | FromDiscord | <Bawbby> I'm having issues with creating bindings to a header library (stb_image.h) |
15:30:46 | FromDiscord | <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:22 | FromDiscord | <Bawbby> I try to use it but I get a link error. |
15:31:44 | FromDiscord | <Varriount> @Bawbby Looks like you need to add a calling convention? |
15:32:22 | FromDiscord | <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:58 | leorize | !repo stb-image |
15:33:00 | disbot | https://github.com/acolley/nim-stb-image -- 9nim-stb-image: 11A Nimrod wrapper for the excellent stb_image library. 15 0⭐ 0🍴 |
15:33:45 | leorize | ah disbot can't do gitlab |
15:33:47 | leorize | https://gitlab.com/define-private-public/stb_image-Nim |
15:33:52 | FromDiscord | <Bawbby> I changed the pragma to: {.header: "stb_image.h", importc, cdecl.} but still get a link error |
15:34:50 | FromDiscord | <Bawbby> I've seen that library leorize, but I'm just trying to get around needing a c file with an include |
15:34:56 | FromDiscord | <Varriount> What's the error? |
15:35:35 | FromDiscord | <Bawbby> dir\to\nim_game_d\@mnim_game.nim.c.o:@mnim_game.nim.c:(.text+0x3ce): undefined reference to `stbi_load' |
15:35:40 | FromDiscord | <clyybber> @Bawbby You are gonna need the c file too, with header: "stb_image.h" ? |
15:36:18 | leorize | stb_image is a header-only library |
15:36:30 | FromDiscord | <Bawbby> can nim not use header libs without needing a c file? |
15:36:55 | * | marmotini_ quit (Remote host closed the connection) |
15:37:13 | FromDiscord | <clyybber> what? But std_image is a header only library |
15:37:20 | FromDiscord | <clyybber> *stb |
15:37:37 | leorize | nim should be able to handle this |
15:37:44 | FromDiscord | <Varriount> https://github.com/nothings/stb/issues/3#issuecomment-45367323 |
15:37:46 | disbot | ➥ unresolved external symbol _stbi_load ; snippet at 12https://play.nim-lang.org/#ix=2dnA |
15:37:55 | FromDiscord | <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:22 | FromDiscord | <mratsim> an intermediate C-file* |
15:41:05 | * | marmotini_ joined #nim |
15:42:39 | * | clyybber joined #nim |
15:44:03 | FromDiscord | <Bawbby> hmm, ok. I'll use a c-file then if there is no way without a hack. |
15:44:15 | FromDiscord | <Bawbby> thanks for the help. |
15:45:09 | lqdev[m] | actually, it should be possible using .emit |
15:45:22 | lqdev[m] | to not use a C file |
15:45:32 | disruptek | disbot knows about nimble packages via !package(s) |
15:50:06 | * | chemist69 quit (Ping timeout: 240 seconds) |
15:51:08 | FromDiscord | <clyybber> @Bawbby But using a c-file is the opposite of a hack |
15:51:18 | * | chemist69 joined #nim |
15:51:18 | FromDiscord | <clyybber> its how you *should* do it |
15:51:33 | FromDiscord | <clyybber> unless you want to dynamically link |
15:51:49 | disruptek | #13436 |
15:51:49 | disbot | https://github.com/nim-lang/Nim/issues/13436 -- 3cpp --gc:arc --exceptions:goto fails to raise with discard |
15:52:11 | FromDiscord | <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:17 | disruptek | exceptions:goto is not default with cpp+arc. 🐼 |
15:52:35 | clyybber | yeah it is only with c + arc |
15:53:00 | disruptek | suprise! |
15:53:25 | disruptek | suuuuprise, mofo! |
15:54:27 | alexander92 | isnt the whole arc thing still experimental |
15:55:12 | disruptek | if we don't experiment with it, then no, it's not even that. |
15:55:52 | alexander92 | it can be just mental |
15:56:01 | disruptek | oh, it's mental alright. |
15:56:18 | alexander92 | thats some kind of slang right |
15:56:20 | alexander92 | i knew it |
15:56:27 | * | abm joined #nim |
15:56:37 | disruptek | the kids say, `metal` now. |
15:56:37 | shashlick | @Bawbby: check out how I wrapped a header only lib - https://github.com/genotrance/feud/blob/master/wrappers/fuzzy.nim |
15:56:49 | shashlick | No c file required |
15:57:36 | lqdev[m] | btw does .passC work only for the specific file it is used in? |
15:57:50 | shashlick | It is global |
15:58:22 | FromDiscord | <mratsim> use {.localpassC:"-foo".} |
16:00:43 | FromDiscord | <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:15 | clyybber | shashlick: 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:15 | disruptek | araq will stream some stuff. |
16:10:23 | disruptek | get ready for incremental compilation wisdom. |
16:10:38 | Araq | oh you announced it |
16:10:44 | Araq | so now there is no way back |
16:11:05 | disruptek | yep. |
16:15:32 | shashlick | clyybber? We only download the header |
16:16:00 | * | Vladar joined #nim |
16:16:26 | narimiran | (shashlick, have you seen my PM? :)) |
16:16:48 | shashlick | Yep |
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:17 | oz | Ah 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:05 | FromDiscord | <clyybber> shashlick: But stb_image is a header only library |
18:56:28 | FromDiscord | <clyybber> Bawbby meant the header itself with C file |
18:57:38 | FromDiscord | <clyybber> Wait, you are even wrapping a header only lib there? Of course you are only downloading the header then. |
18:58:31 | shashlick | Fuzzy is also a header only lib |
18:58:41 | shashlick | You don't need a C file is what I was saying |
18:59:46 | dadada | a button on play.nim-lang.org for expanding all macros would be nice, could help people learn macros or even debug |
19:04:09 | disruptek | macros.expandMacros: ... |
19:05:18 | FromDiscord | <clyybber> shashlick: You mean a .c file right? Bawbby meant the .h file with "C file" I suppose |
19:06:52 | shashlick | Ok 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:26 | FromDiscord | <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:41 | FromDiscord | <clyybber> Araq: Lol, amazing that VSCode does that line jumping thing |
19:29:54 | FromDiscord | <clyybber> depending on the terminal window |
19:29:55 | FromDiscord | <clyybber> hahaha |
19:30:34 | * | beatmox quit (Ping timeout: 256 seconds) |
19:30:49 | disruptek | what? |
19:30:50 | * | beatmox joined #nim |
19:31:14 | FromDiscord | <clyybber> you missed it on stream 😄 |
19:35:24 | disruptek | i 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:45 | FromDiscord | <clyybber> disruptek: At 6:00 |
19:35:56 | disruptek | but it's about the only thing i (vaguely) like about vscode; its terminal-clicky-clicky-boom-it's-loaded thing. |
19:43:41 | FromDiscord | <Varriount> disruptek: I like VSCode, I just wish it didn't use 3+ processes and half a gigabyte to run |
19:44:27 | disruptek | if you like it, i don't think there are any good reasons not to suffer half a gig of memory use. |
19:44:39 | disruptek | to me, that's just not impactful enough to worry about it. |
19:52:09 | * | lbart_ is now known as lbart |
19:53:19 | FromDiscord | <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:48 | FromDiscord | <Bawbby> using the #define STB_IMAGE_IMPLEMENTATION and #include "stb_image.h" in the emit |
19:54:11 | * | marmotini_ joined #nim |
19:55:00 | Araq | better might have been a multi-line .header pragma |
19:58:34 | * | marmotini_ quit (Ping timeout: 256 seconds) |
20:05:50 | dadada | I tried to see if I could add support for rust style mut (nim var to rust mut) |
20:05:57 | dadada | https://play.nim-lang.org/#ix=2dp7 |
20:06:12 | dadada | seems like it's not possible with macros |
20:06:45 | dadada | am still a beginner when it comes to macros |
20:06:50 | dadada | though |
20:06:56 | * | solitudesf joined #nim |
20:07:26 | dadada | if 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:50 | shashlick | @Bawbby did you see the example I sent? |
20:12:09 | * | solitudesf joined #nim |
20:17:52 | * | marmotini_ joined #nim |
20:18:26 | dadada | expandMacros 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:33 | dadada | https://play.nim-lang.org/#ix=2dpd (with expandMacros) |
20:21:43 | FromDiscord | <Bawbby> I've saw your example, I'd rather not use flags. |
20:22:15 | FromDiscord | <Bawbby> Does this download the header at compile time? Didn't know you could do that. |
20:23:20 | FromDiscord | <Varriount> @Bawbby You could make Nim run rm -rf / at compile time if you want |
20:24:07 | FromDiscord | <Bawbby> oh |
20:24:08 | FromDiscord | <Bawbby> oh dear |
20:24:35 | FromDiscord | <Varriount> >:D |
20:24:47 | * | my_dude quit (Quit: my_dude) |
20:24:59 | dadada | Varriount: rm -rf / does exactly nothing just in case you didn't know ... it's not allowed :D |
20:25:09 | dadada | even for root |
20:25:27 | FromDiscord | <Varriount> What about with /* ? |
20:25:28 | FromDiscord | <Bawbby> how is that prevented? |
20:26:09 | FromDiscord | <Bawbby> does nim error? or remove anything with rm? |
20:26:12 | shashlick | @Bawbby you can use passC for the #define |
20:26:33 | shashlick | And the include isn't needed if you are wrapping the header |
20:26:34 | dadada | Bawbby: prevention is hard coded into the rm program I assume |
20:27:07 | * | sentreen_ quit (Ping timeout: 260 seconds) |
20:27:16 | FromDiscord | <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:55 | dadada | Varriount: operation not permitted for rm -rf /* as well |
20:27:58 | FromDiscord | <Varriount> Might not be a bad feature to implement... |
20:29:24 | shashlick | Please don't |
20:29:41 | shashlick | Make allows all sorts of commands |
20:29:43 | dadada | /* seems to delete data with lesser protection though, like content in user diretories, so it's NOT ADVISED to try it |
20:29:46 | shashlick | At 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:43 | FromDiscord | <clyybber> dadada: The macro still works right? |
20:59:46 | FromDiscord | <clyybber> AFAICT at least |
21:00:00 | FromDiscord | <clyybber> but expandMacros doesn't show the expected output? |
21:01:52 | dadada | clyybber: no it doesn't work AFAI can see |
21:03:46 | dadada | clyybber: 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:00 | FromDiscord | <clyybber> huh? |
21:04:06 | FromDiscord | <clyybber> I cant rerproduce |
21:04:10 | FromDiscord | <clyybber> you are passing a literal to it |
21:04:13 | FromDiscord | <clyybber> thats not mutable |
21:04:47 | disruptek | maybe 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:13 | dadada | clyybber, 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:05 | FromGitter | <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:55 | FromDiscord | <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:00 | shashlick | it isn't possible to use function pointers with generic procs right? |
22:36:39 | shashlick | like casting a generic proc to a pointer |
22:36:54 | disruptek | it has to be instantiated by something. |
22:37:00 | disruptek | otherwise it doesn't exist. |
22:37:33 | * | Trustable quit (Remote host closed the connection) |
22:38:01 | disruptek | i'd expect it to work if you can call it with a concrete type. |
22:42:20 | shashlick | ya and in this case, i don't know what types users will create |
22:42:24 | shashlick | so out of luck |
22:42:33 | FromDiscord | <clyybber> yeah |
22:42:56 | FromDiscord | <clyybber> what do you need it for tho? |
22:46:12 | disruptek | sounds strange, alright. |
22:55:26 | FromDiscord | <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:34 | FromDiscord | <mratsim> or use methods |
22:56:18 | disruptek | probably smarter to make your own dispatch. |
22:56:54 | FromDiscord | <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:56 | FromDiscord | <mratsim> that's for building a direct acyclic graph of operations, operations are not predetermined and can be added by users |
23:03:53 | disruptek | users 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:36 | shashlick | basically, i have a bunch of generic procs in the plugin manager that each plugin also needs access to |
23:37:59 | shashlick | but i don't want each plugin to have to compile and maintain its own copy of those procs |
23:38:21 | shashlick | i 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:45 | disruptek | why 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:09 | FromDiscord | <Rika> What can I use to make a repl like system on nim (just the input output part) |
23:55:47 | disruptek | https://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:36 | FromDiscord | <Rika> Oh wow, it's in the std lib |
23:57:37 | FromDiscord | <Rika> Wtf |
23:57:40 | FromDiscord | <Rika> That's cool |
23:58:11 | FromDiscord | <Rika> Undocumented tho rip, guess it's a wrapper to linenoise? |