00:01:15 | * | D__ joined #nim |
00:01:20 | * | D_ quit (Quit: đš) |
00:57:28 | * | NimBot joined #nim |
01:19:28 | * | ldlework quit (Ping timeout: 260 seconds) |
01:30:19 | FromDiscord | <juan_carlos> Any library to load YAML with unknown structure?, nimyaml requires an object as argument, and wont work with orc. |
01:34:59 | * | lmariscal quit (Quit: I'm Out!) |
01:37:48 | * | lmariscal joined #nim |
01:42:47 | * | apahl quit (Ping timeout: 244 seconds) |
01:44:46 | * | apahl joined #nim |
01:52:58 | * | Tanger joined #nim |
01:54:45 | FromDiscord | <flywind> I don't think there are |
01:54:58 | FromDiscord | <juan_carlos> :( |
01:55:21 | disruptek | you might be able to use sealmove's stuff. |
01:55:32 | disruptek | he had to impl yaml parsing in npeg iirc. |
02:03:17 | FromDiscord | <Avatarfighter> Disruptek are you planning on going live on twitch anytime soon? |
02:03:42 | disruptek | not tonight. |
02:04:01 | disruptek | why? |
02:04:12 | FromDiscord | <Avatarfighter> To be honest Iâm interested in watching |
02:04:26 | disruptek | weird. |
02:04:34 | FromDiscord | <Avatarfighter> đ |
02:05:06 | disruptek | well, i have to mess with my mic. i guess something got screwed up during my last move. |
02:05:19 | disruptek | araq says the audio is fucked up. |
02:06:09 | disruptek | it should be a pretty terrible stream 'cause i have very low bandwidth. |
02:07:11 | FromDiscord | <Avatarfighter> no worries if streaming is too much, youâre just the only person I know of who streams nim stuff lol |
02:07:54 | disruptek | yeah, i will probably get back to it. i think it was useful, it's just that i'm not in a good position at the moment. |
02:08:56 | FromDiscord | <Avatarfighter> Do whatâs best for you, donât feel forced, thatâs the last thing I want |
02:09:39 | disruptek | nah, i've been planning on giving it a shot. |
02:09:43 | disruptek | what would you want to watch? |
02:10:37 | FromDiscord | <Avatarfighter> Anything youâre interested in, imo itâs super interesting watching someone work on something that interests them |
02:11:17 | disruptek | well, lemme see... |
02:12:30 | disruptek | first i build my special wayland version of obs... |
02:13:23 | FromDiscord | <Avatarfighter> ahah |
02:13:47 | FromDiscord | <Avatarfighter> brb for a bit just ping me or something when youâre planning on going live in the future |
02:18:28 | disruptek | the idea @avatarfighter is that you can help me fix my audio. |
02:18:50 | * | lritter joined #nim |
02:19:25 | FromDiscord | <Avatarfighter> can you give me 30 minutes while i consume nutrients |
02:19:46 | disruptek | whatever. |
02:25:08 | FromDiscord | <shashlick> disruptek: any idea on this - https://travis-ci.org/github/genotrance/travister/jobs/733132922#L6574 |
02:26:25 | disruptek | it's the jbb problem, right? |
02:27:38 | disruptek | i don't think it has ever worked. |
02:27:51 | FromDiscord | <shashlick> it has passed before - and passes on devel |
02:28:53 | disruptek | really? i don't think it passes for me. |
02:31:45 | disruptek | travister just tests gittyup? |
02:32:50 | disruptek | my github actions aren't working as well as your travis thing right now. |
02:33:04 | disruptek | i cannot get a 2.1.8 ref out of the repo. |
02:39:41 | * | rusua_ quit (Quit: Connection closed for inactivity) |
02:43:12 | FromDiscord | <Avatarfighter> 30 minutes on da dot |
02:43:23 | FromDiscord | <Avatarfighter> Minus 6 minutes |
02:44:15 | FromDiscord | <Avatarfighter> disruptek are you still down to test your audio? |
02:45:20 | disruptek | yeah. |
02:45:28 | disruptek | i guess my bot doesn't work. |
02:47:53 | disruptek | ah, it says i'm offline. |
02:49:31 | * | vicfred joined #nim |
02:53:41 | FromDiscord | <Avatarfighter> disruptek: you're microphone level is lower than your music and the music is overpowering you |
02:53:42 | FromDiscord | <Avatarfighter> lol |
02:58:00 | * | lritter quit (Quit: Leaving) |
03:09:16 | FromDiscord | <shashlick> travister tests a bunch of things - nimterop, choosenim, nimarchive, nimgit2, gittyup, nimbass |
03:09:30 | FromDiscord | <shashlick> make sure I don't break stuff with my nimterop changes |
03:09:31 | disruptek | right, i got that eventually. |
03:48:32 | * | ldlework joined #nim |
03:59:55 | * | waleee-cl quit (Quit: Connection closed for inactivity) |
04:06:01 | * | supakeen quit (Quit: WeeChat 2.9) |
04:06:33 | * | supakeen joined #nim |
04:09:10 | * | a_chou quit (Quit: a_chou) |
04:09:45 | * | thomasross quit (Ping timeout: 240 seconds) |
04:11:01 | * | a_chou joined #nim |
04:32:02 | * | njoseph quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) |
04:32:09 | * | njoseph joined #nim |
04:32:58 | Tanger | Hmmm, I'm confused why my call to open() fails for this code: https://play.nim-lang.org/#ix=2zRV It just spits out "cannot open: X" for each file it tries to write |
04:34:02 | FromDiscord | <hobbledehoy> which line is the open? |
04:36:01 | Tanger | writeFile |
04:37:19 | Tanger | Same effect when I replace it with more standard open, write, close calls |
04:37:40 | FromDiscord | <hobbledehoy> shouldn't targetPath include parentPath? |
04:38:15 | Tanger | Originally, but I removed it (for now) just to look into why the files won't write |
04:38:34 | FromDiscord | <hobbledehoy> ah ok |
04:39:07 | Tanger | Worked for one set of data, then stopped working, haha. It's probably something on my machine :S |
04:57:35 | disruptek | zzzz |
05:03:57 | * | snowolf quit (Quit: No Ping reply in 180 seconds.) |
05:04:57 | * | solitudesf joined #nim |
05:05:16 | * | snowolf joined #nim |
05:16:08 | * | snowolf quit (Quit: No Ping reply in 180 seconds.) |
05:26:48 | * | narimiran joined #nim |
05:28:09 | * | snowolf joined #nim |
05:31:27 | * | snowolf quit (Client Quit) |
05:32:08 | * | a_chou quit (Quit: a_chou) |
05:45:53 | * | PMunch joined #nim |
05:51:23 | * | leorize quit (Ping timeout: 240 seconds) |
06:05:01 | * | ormiret quit (*.net *.split) |
06:05:01 | * | stever quit (*.net *.split) |
06:05:01 | * | alehander92 quit (*.net *.split) |
06:05:01 | * | enthus1ast quit (*.net *.split) |
06:05:01 | * | Prestige quit (*.net *.split) |
06:05:01 | * | euantorano quit (*.net *.split) |
06:05:01 | * | vegai quit (*.net *.split) |
06:05:10 | * | vegai joined #nim |
06:05:16 | * | stever joined #nim |
06:05:21 | * | Prestige joined #nim |
06:05:21 | * | ormiret joined #nim |
06:05:32 | * | alehander92 joined #nim |
06:05:36 | * | euantorano joined #nim |
06:07:42 | * | snowolf joined #nim |
06:10:10 | * | enthus1ast joined #nim |
06:15:49 | supakeen | Mrm, I have a function that takes a generic T (uint32, etc), now I need some literals in there that are 'u32 how would I get numbers in the correct width? |
06:16:17 | supakeen | T(int)? |
06:22:25 | * | narimiran quit (Ping timeout: 240 seconds) |
06:22:57 | * | narimiran joined #nim |
06:29:15 | Tanger | supakeen, Sorry, which numbers need to be in the correct with? If you need to constrain T to certain types, you can use this syntax: proc printFields[T: Ordinal | uint32] |
06:29:23 | Tanger | *width |
06:30:09 | Tanger | So maybe procname[T: uint32](myVar: T) |
06:32:19 | supakeen | Tanger: Ah, specifically I have this: https://github.com/supakeen/simba/blob/master/src/simba/lcg.nim#L30 |
06:32:57 | supakeen | Since T(int) works for me now, I'm just exploring the 'better' way to write this :) |
06:34:41 | FromDiscord | <Elegant Beef> I believe that using `T(int)` or `int.T` is the best way |
06:35:20 | * | vicfred quit (Remote host closed the connection) |
06:35:26 | FromDiscord | <Elegant Beef> I assume the output file will have multiple functions where those constants are just of type T, but i've been known to be wrong đ |
06:35:42 | * | vicfred joined #nim |
06:36:12 | supakeen | Yea, it probably has one for each T it's called with (as is the usual with generics). |
06:36:13 | FromDiscord | <Elegant Beef> You really should make it `LCG[T: SomeInteger]` though |
06:36:33 | supakeen | Thanks. |
06:37:06 | supakeen | How about if I want to constrain it just to uint32 and uint64 would it be T: uint32 | uint64? |
06:37:14 | FromDiscord | <Elegant Beef> Yea |
06:37:49 | supakeen | Done that, that is a bunch cleaner :) |
06:38:24 | Tanger | Cool project supakeen |
06:38:36 | FromDiscord | <Elegant Beef> https://nim-lang.org/docs/system.html#SomeSignedIntâ”All the named generics are below here |
06:38:44 | supakeen | Tanger: Thank you, LSFRs are next. |
06:45:54 | FromDiscord | <Elegant Beef> sent a code paste, see https://play.nim-lang.org/#ix=2zSe |
06:46:09 | FromDiscord | <Elegant Beef> whoops `!=` đ |
06:46:45 | FromDiscord | <Elegant Beef> I dont like repeating myself. Like i said i dont like repeating myself |
06:51:30 | supakeen | Exactly the type of thing I like haha. |
06:52:25 | FromDiscord | <Elegant Beef> lol i reopend the link and see "less repeating of myself" |
06:52:57 | supakeen | Also rolled this line into one: ` var next: T = state.a * state.seed + state.c` ;) |
06:55:19 | FromDiscord | <Elegant Beef> The true question is do you do `next: T` or `= (mathsHere).T` đ |
06:58:12 | supakeen | That's something to think about another day or I'll just keep flip flopping. |
07:02:20 | Tanger | Can Nim interface with Delphi? |
07:09:11 | * | Vladar joined #nim |
07:09:52 | * | fredrikhr quit (Read error: Connection reset by peer) |
07:10:05 | * | fredrikhr joined #nim |
07:19:02 | * | gmaggior joined #nim |
07:21:21 | PMunch | Tanger, probably |
07:22:28 | Tanger | I believe delphi can be converted to C++ at least. So maybe a long, roundabout trip |
07:22:35 | Tanger | Shame it's delphi |
07:23:22 | PMunch | You can also compile your Nim code into a DLL and load it into Delphi |
07:23:34 | PMunch | Depends on which way you want to do the interaction |
07:25:07 | Araq | Delphi can link to the standard .obj/.o files |
07:25:15 | Araq | and Nim can produce these |
07:25:30 | Tanger | Oooh, thanks guys |
07:26:34 | Tanger | I'm trying to replace an ancient delphi exe, so I was hoping to go decompile to delphi -> convert to C -> c2nim it up and *hopefully* get something that I can put back together so it's readable |
07:29:45 | Araq | sorry, but forget this idea |
07:30:08 | Araq | there is no Delphi to C++ converter that I know of that would work well enough |
07:30:42 | Araq | it's also not the syntax, Delphi builds on the VCL, a large library that has no C++ equivalent |
07:31:17 | Araq | you can translate the Delphi code to Nim directly via pas2nim |
07:31:34 | Araq | nah, I'm kidding, but even that is more realistic than converting it to C++ |
07:32:09 | FromDiscord | <Elegant Beef> What are converting anywho? |
07:32:26 | Tanger | Haha |
07:33:08 | Tanger | Some dude wrote a kind of database interface for a POS system that I'm looking to replace because it has a bunch of memory leaks |
07:33:24 | Tanger | Customer has to restart their machine once a day or it locks up |
07:33:48 | FromDiscord | <Elegant Beef> Memory leaks are just bits trying to get their freedom! |
07:34:03 | Tanger | I don't know what it does, but I reckon it's like an ad-hoc database connection pooling implementation for their POS database |
07:34:05 | Tanger | Haha |
07:34:13 | idf | sounds fun |
07:34:13 | Tanger | Fly free! |
07:37:01 | PMunch | Every time I read POS system my mind reads it as "piece of shit system" even though I used to work with creating one.. |
07:37:14 | FromDiscord | <Elegant Beef> Lol, glad im not the only one |
07:38:56 | Araq | what does POS mean? |
07:39:00 | PMunch | Point of sales |
07:39:11 | FromDiscord | <Elegant Beef> Point of service |
07:39:13 | PMunch | It's like cash registers and such |
07:39:20 | FromDiscord | <Elegant Beef> Cmon it's not always about sales đ |
07:39:44 | PMunch | Sure, but that is literally what it's short for :P |
07:39:46 | Araq | "point of service system". |
07:39:59 | Araq | the only clear word here is the "of" |
07:40:25 | FromDiscord | <Elegant Beef> I've honestly never heard it as point of sale |
07:40:38 | Araq | what is a "service system"? is it opposed to all the other systems that don't "serve"? |
07:40:58 | Araq | what is a "point"? it's most certainly not a dot on paper... |
07:41:04 | PMunch | A place |
07:41:42 | PMunch | Point of sale - the point at which someone sells you something |
07:41:48 | PMunch | Like the till at a store |
07:42:31 | Araq | software has no place |
07:42:47 | PMunch | No, but the hardware it is installed on has a place |
07:42:54 | PMunch | POS refers to the whole physical system |
07:43:07 | PMunch | POS software would be the software part |
07:43:13 | Araq | aha |
07:43:52 | Araq | ok, so it's a physical system and it runs software related to sells? |
07:44:01 | FromDiscord | <Elegant Beef> sales, yes |
07:44:03 | PMunch | Pretty much |
07:44:13 | Araq | my bad, yes, 'sales' |
07:44:13 | PMunch | Typically integrated with a receipt printer and a card terminal |
07:44:14 | FromDiscord | <Elegant Beef> It's just a computer that runs software that talks to their backend |
07:44:37 | Araq | oh wait |
07:45:03 | Araq | it's about tills? |
07:45:16 | FromDiscord | <Elegant Beef> Yea, store cashier's machines |
07:45:17 | PMunch | Yeah, tills are a POS system |
07:45:51 | Araq | ah ok |
07:46:01 | FromDiscord | <flywind> These cause problems with `threads:on` in windows([email protected] has installed). |
07:46:09 | FromDiscord | <flywind> sent a code paste, see https://play.nim-lang.org/#ix=2zSt |
07:46:16 | FromDiscord | <flywind> D:\QQPCmgr\Desktop\redis\test.nim(5, 6) Hint: Non-matching candidates for not true |
07:46:54 | FromDiscord | <flywind> https://play.nim-lang.org/#ix=2zSu |
07:50:55 | * | oculux quit (Ping timeout: 240 seconds) |
07:51:00 | Tanger | PMunch, Yeah, I work pretty close with POS systems and it always tickles me when I think of it like piece of shit |
07:51:14 | * | oculux joined #nim |
07:52:55 | * | voltist quit (Ping timeout: 240 seconds) |
07:53:15 | * | voltist joined #nim |
08:00:53 | Oddmonger | disruptek: hello, from your gitnim repo, what branch would you recommand for someone who wants news, but stability ? 1.0.9 or 1.2.7 ? |
08:04:09 | FromDiscord | <Elegant Beef> 1.2.7 is stable and 1.0.9 is LTS |
08:05:28 | Oddmonger | ok, thank you |
08:06:22 | Oddmonger | because on the website of nim, there is «install 1.2.6» on the main page |
08:11:19 | Araq | 1.2.6 is stable, 1.2.7 isn't |
08:11:30 | Araq | no stable version is ever odd |
08:11:34 | Oddmonger | ok back to 1.2.6 then |
08:11:50 | Araq | all even numbers are stable :-) |
08:12:03 | Oddmonger | noted, thank you :) |
08:20:47 | FromDiscord | <Elegant Beef> Ah my bad, thought it was 1.2.x was stable and 1.0.x was LTS đ |
08:27:20 | * | hnOsmium0001 quit (Quit: Connection closed for inactivity) |
08:30:21 | Araq | that's true too :-) |
08:30:52 | Araq | it's more correct to phrase it this way: In reality there is no version 1.2.7 |
08:31:18 | Araq | 1.2.7 is 1.2.8 in "testing" state |
08:38:04 | Oddmonger | it's common numbering in software (at least for linux kernel ?) |
08:39:23 | Oddmonger | uhm i have 5.7.9 kernel installed, only odd numbers⊠maybe archlinux installs dev kernels, or i'm wrong :) |
08:40:45 | Araq | I think it's pretty uncommon these days but it worked well for us so far and changing how versioning is done would only cause even more confusions |
08:54:27 | * | Trustable joined #nim |
09:02:37 | FromDiscord | <mratsim> GnuGO still uses the same versioning system đ |
09:02:43 | FromDiscord | <mratsim> I was super confused at first |
09:06:05 | FromDiscord | <Rika> "but 1 is odd, does that mean version 1 is unstable?" |
09:06:11 | FromDiscord | <Rika> (i am joking) |
09:06:15 | Araq | But I still dream of a Nim-2020 world where we use years instead of versions :-) |
09:06:44 | FromDiscord | <Rika> ~~maybe for nim 2?~~ |
09:08:52 | * | Tanger quit (Quit: Leaving) |
09:13:48 | FromDiscord | <hugogranstrom> Year versioning â€ïž |
09:19:38 | PMunch | I kinda like Minecrafts versioning for their snapshots |
09:20:38 | idf | i remember i was so hyped for minecraft 2 when minecraft was around 1.8 |
09:20:43 | idf | i thought at 1.10 it would become 2.0 |
09:20:46 | Oddmonger | there this gnu software (emacs ?) which version number is a better pi approximation at each new release |
09:21:29 | Oddmonger | a nice way to say perfection is never reached :) |
09:22:06 | * | arecacea1 quit (Remote host closed the connection) |
09:22:15 | FromDiscord | <Vindaar> TeX |
09:22:25 | * | arecacea1 joined #nim |
09:22:38 | FromDiscord | <Vindaar> emacs is more sane that way, haha |
09:23:13 | PMunch | Although you end up with really long version numbers :P |
09:23:42 | FromDiscord | <Rika> until the last version |
09:23:53 | FromDiscord | <Rika> in which case itll just show as the pi symbol |
09:23:57 | FromDiscord | <Vindaar> well, at some point you can just do `versionNumber.len` to get a proper number đ
|
09:24:30 | PMunch | The Minecraft system is two last characters of the year, a literal 'w', the week number, and then a letter (starting with 'a') to denote sub-version |
09:24:55 | FromDiscord | <Rika> thats only for snapshots |
09:25:00 | PMunch | I know |
09:25:12 | idf | make every version a sum of the previous version and the total number of characters in all the commits combined |
09:25:20 | FromDiscord | <Rika> thats fun |
09:25:31 | PMunch | That number quickly gets big :P |
09:26:04 | idf | divide it by uhhhh the month of the update |
09:27:00 | Oddmonger | the browser way: add 1 (more sophisticated calculus are hazardous with javacrypt) |
09:27:30 | idf | the browser way: add by 1 everytime it gets worse |
09:27:54 | Oddmonger | the user divides by 100 to get the real version |
09:27:56 | * | abm joined #nim |
09:28:47 | idf | nim browser when |
09:29:11 | idf | make it support nimscript instead of javascript |
09:35:17 | PMunch | Okay, I've implemented the stream interface for sockets, should I PR it to Nim, or create a new library? http://ix.io/2zap |
09:46:36 | idf | i think i saw a Nim issue similar to what you achieved |
09:47:11 | idf | so you could try to PR it |
09:48:29 | * | leorize joined #nim |
09:53:53 | idf | speaking of PRs, is there a way I can make the CI to use my new tests, I have a PR that adds a new hint in an already existing case, and one of the tests fails because it expects the old hint |
09:54:05 | idf | i changed that test and i did the koch test on my computer and it works |
09:54:12 | idf | do i have to setup my own CI on my fork or |
09:57:56 | * | skrzyp quit (Ping timeout: 258 seconds) |
09:59:52 | FromDiscord | <mratsim> update the tests in the same PR |
10:00:12 | idf | I did and it still fails |
10:01:23 | idf | oh i got a comment on the PR |
10:11:03 | * | leorize quit (Ping timeout: 240 seconds) |
10:15:56 | * | sealmove joined #nim |
10:16:17 | sealmove | what's the meaning of "Warning: observable stores to 'x' [ObservableStores]" |
10:17:03 | FromDiscord | <mratsim> Go to Walmart now or all the food will be gone |
10:17:07 | * | luis joined #nim |
10:17:34 | * | narimiran quit (Ping timeout: 246 seconds) |
10:19:51 | FromDiscord | <mratsim> but TBH I don't know what they are for, partial initialization? |
10:30:03 | FromDiscord | <lqdev> sealmove: it's something about NRVO but i'd ask Araq to be sure |
10:30:24 | FromDiscord | <lqdev> i'm pretty sure nobody but him understands this warning :) |
10:33:02 | sealmove | NRVO stands for? |
10:33:12 | * | luis quit (Remote host closed the connection) |
10:33:13 | * | ee7[m] quit (*.net *.split) |
10:33:13 | * | Prestige quit (*.net *.split) |
10:33:13 | * | stever quit (*.net *.split) |
10:33:14 | * | Jjp137 quit (*.net *.split) |
10:33:14 | * | hoek quit (*.net *.split) |
10:33:14 | * | JStoker quit (*.net *.split) |
10:33:14 | * | EastByte quit (*.net *.split) |
10:33:14 | * | silvernode[m] quit (*.net *.split) |
10:33:14 | * | OMGOMG quit (*.net *.split) |
10:33:22 | * | luis joined #nim |
10:33:59 | Araq | I wrote an RFC about it... |
10:34:39 | Araq | we should disable the warning for 1.4 and be happy |
10:34:40 | * | Prestige joined #nim |
10:34:41 | * | stever joined #nim |
10:34:41 | * | Jjp137 joined #nim |
10:34:41 | * | hoek joined #nim |
10:34:41 | * | JStoker joined #nim |
10:34:41 | * | EastByte joined #nim |
10:34:41 | * | silvernode[m] joined #nim |
10:34:41 | * | OMGOMG joined #nim |
10:38:27 | Araq | sealmove, disable the warning |
10:39:13 | * | ee7[m] joined #nim |
10:40:11 | sealmove | I don't mind it, just being curious |
10:42:13 | Araq | it's about a tranformation that is a leaky abstraction but cannot be gained easily otherwise |
10:43:03 | Araq | we transform 'x = f()' into 'f(addr x)' and so depending on the 'f' the stores to 'result' are visible when 'f' raises an exception |
10:45:39 | Araq | so far we only found code that relies on this behaviour and no code where it introduced bugs. In an ideal world the code *inside* the f is optimized to use a side-channel for 'result' if it cannot prove exceptions can happen |
10:46:30 | FromDiscord | <JSGRANT> Evidently stands for 'Named Return Value Optimization' ; Reading a bit about it now -- but suspect I'm too tired to hold the concept very well lol |
10:46:41 | Araq | (but that solution only occured to me five minutes ago) |
10:47:21 | sealmove | :D |
11:16:07 | * | luis_ joined #nim |
11:18:55 | idf | ok so I fixed my PR problem, my local repo and the repo on github were desynced |
11:19:27 | * | luis quit (Ping timeout: 240 seconds) |
11:19:28 | * | luis_ is now known as luis |
11:19:30 | idf | and on my disk I didn't have the part that would fail the CI |
11:19:40 | idf | now all passed |
11:22:25 | * | sealmove quit (Ping timeout: 264 seconds) |
11:23:51 | FromDiscord | <Clyybber> idf: Left a review on your PR |
11:38:17 | * | jken quit (Quit: ZNC - https://znc.in) |
11:38:54 | * | jken joined #nim |
11:40:52 | * | luis quit (Quit: luis) |
11:41:07 | * | luis joined #nim |
11:46:04 | * | a_b_m joined #nim |
11:49:28 | * | abm quit (Ping timeout: 256 seconds) |
11:50:03 | * | a_b_m quit (Read error: Connection reset by peer) |
12:06:02 | * | supakeen quit (Quit: WeeChat 2.9) |
12:06:33 | * | supakeen joined #nim |
12:07:44 | idf | thanks |
12:09:52 | * | vegai left #nim ("=> matrix") |
12:11:56 | * | luis_ joined #nim |
12:13:04 | * | luis quit (Remote host closed the connection) |
12:13:04 | * | luis_ is now known as luis |
12:17:05 | * | leorize joined #nim |
12:36:03 | PMunch | Is this implemented anywhere in the stdlib? https://nim-lang.org/docs/manual.html#lexical-analysis-identifier-equality |
12:37:29 | FromDiscord | <lqdev> there's a thing in strutils on devel |
12:38:52 | FromGitter | <matrixbot> `matthias` I have a macro that generates a seq that I'd like to then pass to a proc. The AST looks correct but I'm getting "expression '@["someval", "someotherval"]' is of type 'seq[string]' and has to be discarded. Am I misunderstanding something about macros or do I probably just have some error that I'm missing? |
12:39:09 | FromDiscord | <lqdev> http://nim-lang.github.io/Nim/strutils.html#nimIdentNormalize%2Cstring |
12:41:04 | FromDiscord | <Rika> matthias, got a link to the code? or a paste? |
12:41:23 | Araq | don't make your macro produce 'void' |
12:41:34 | Araq | macro m(...) # bad |
12:41:41 | Araq | macro m(...): untyped # good |
12:42:25 | FromDiscord | <Rika> oh i assume its the "no return type means typed" thing |
12:43:06 | FromGitter | <matrixbot> `matthias` đł that was it. I should have caught that. Thanks Araq! |
12:43:11 | PMunch | Hmm, does anyone feel up for a parsing challenge? Basically write a parser (or an npeg grammar) to parse the docopt format on compile-time? |
12:43:31 | * | luis_ joined #nim |
12:44:26 | * | arecacea1 quit (Remote host closed the connection) |
12:45:28 | * | luis quit (Ping timeout: 260 seconds) |
12:45:30 | * | luis_ is now known as luis |
12:45:37 | * | arecacea1 joined #nim |
12:47:40 | * | gmaggior quit (Quit: Leaving) |
12:49:06 | PMunch | This would allow us to write a compile-time docopt implementation that created an efficient parser and could create a (more) type-safe dispatcher. |
12:54:47 | FromDiscord | <mratsim> confutils already does that |
13:02:25 | * | luis quit (Ping timeout: 240 seconds) |
13:03:16 | * | narimiran joined #nim |
13:05:02 | * | luis joined #nim |
13:13:30 | * | luis quit (Quit: luis) |
13:15:23 | * | leorize quit (Ping timeout: 240 seconds) |
13:20:37 | PMunch | @mratsim, but confutils is much harder to set up.. |
13:21:17 | * | luis joined #nim |
13:22:02 | FromDiscord | <mratsim> The minimal confutils setup is just this: https://github.com/status-im/nim-beacon-chain/blob/4b38619c4f51847fc591e85327ed226ad46d24ac/nbench/nbench_spec_scenarios.nim#L89-L93 |
13:22:15 | FromDiscord | <mratsim> cli do(arg0, arg1) |
13:23:11 | FromDiscord | <mratsim> Otherwise the complete setup is basically a type declaration: https://github.com/status-im/nim-beacon-chain/blob/4b38619c4f51847fc591e85327ed226ad46d24ac/nbench/scenarios.nim#L23-L127 |
13:26:17 | * | leorize joined #nim |
13:33:21 | * | luis quit (Quit: luis) |
13:35:46 | FromGitter | <gogolxdong> what's the roadmap of concept redesign? |
13:35:57 | narimiran | 2021 :) |
13:36:01 | * | filcuc joined #nim |
13:37:03 | Zevv | PMunch: docopt? |
13:37:09 | FromDiscord | <mratsim> VTable are scheduled for 2018 |
13:37:36 | Zevv | oh docopt. that should be trivial |
13:37:54 | Zevv | I see where you're going |
13:37:55 | * | Vladar quit (Quit: Leaving) |
13:40:43 | * | leorize quit (Ping timeout: 240 seconds) |
13:44:14 | * | luis joined #nim |
13:47:37 | PMunch | Zevv, what about it? |
13:47:53 | Zevv | it'll cost you |
13:48:14 | Zevv | i write your parser. you order a sixpack at a local takeway and have it delivered to me |
13:48:14 | PMunch | Huh? |
13:48:17 | Zevv | fair deal, or what |
13:48:22 | PMunch | Hmm, tempting |
13:48:41 | PMunch | Wait, where do you live? Or more important, what does beer cost :P |
13:48:54 | Zevv | not as expensive as a coffee for disruptek |
13:48:57 | narimiran | PMunch: wherever he is, it is cheaper than in norway |
13:48:57 | PMunch | I mean here you can't even get six-pack as a takeaway.. |
13:49:17 | supakeen | 16.99 for a 24-bottle crate. |
13:50:30 | PMunch | That's the price of two pints here.. |
13:52:06 | * | luis quit (Quit: luis) |
13:52:13 | * | luis joined #nim |
14:19:59 | * | luis quit (Read error: Connection reset by peer) |
14:28:20 | FromDiscord | <mratsim> btw is there a fix for push raises: [Defect] warning in devel? https://media.discordapp.net/attachments/371759389889003532/763044976862953472/unknown.png |
14:32:24 | Araq | once that PR is merged, yes |
14:33:44 | Zevv | PMunch: https://github.com/docopt/docopt.nim ! |
14:33:48 | Zevv | why am I doing this |
14:34:01 | FromDiscord | <shashlick> @dom96 - I got a static musl binary of choosenim built but even openssl will need to be statically linked |
14:34:21 | FromDiscord | <shashlick> of course this means the binary will be truly portable and this can be done on Win/OSX as well |
14:34:36 | FromGitter | <kamilchm> hi, I struggle to use a reference to tuple type, e.g. https://play.nim-lang.org/#ix=2zUd â IDK what to do with /usercode/in.nim(7, 12) Error: () must have a tuple type |
14:42:19 | FromDiscord | <slonik_az> Nim is back in TIOBE index between 51 and 100 positionâ”https://www.tiobe.com/tiobe-index/ |
14:43:01 | * | idxu_ joined #nim |
14:43:19 | * | idxu quit (Read error: Connection reset by peer) |
14:43:35 | FromDiscord | <Rika> thats a big range |
14:45:09 | * | idxu_ is now known as idxu |
14:45:11 | * | tane joined #nim |
14:51:46 | * | leorize joined #nim |
14:52:25 | * | nixfreak quit (Ping timeout: 240 seconds) |
14:52:36 | Yardanico | but the fact itself |
14:52:40 | Yardanico | top 100 :) |
14:53:37 | Araq | so ... 1.4 is feature complete |
14:53:43 | Araq | but I said that weeks ago too |
14:53:57 | FromGitter | <iffy> congrats! |
14:53:58 | Yardanico | 1.4 is really a big-big release |
14:54:06 | Yardanico | tons of stuff |
14:54:13 | Araq | and maybe we want to add https://github.com/nim-lang/RFCs/issues/260 |
14:54:14 | disbot | â„ File specific localpassC for wrapped C/C++/ASM/(JS?) {.compile.} files |
14:54:16 | * | a_chou joined #nim |
14:55:06 | disruptek | no, get it out while you can. |
14:55:38 | leorize[m]1 | I think 1.4 is ready to ship now |
14:55:40 | Yardanico | disruptek: well, if 1.4 gets out it means we won't get a new feature release in some months :P |
14:55:57 | disruptek | don't care. 1.4 has no major feature to recommend it afaik. |
14:56:08 | leorize[m]1 | maybe it means that we gotta stick to our schedule better :P |
14:56:24 | FromDiscord | <lqdev> Araq i think that issue is pretty important |
14:56:24 | leorize[m]1 | 1.4 is delayed by a few months already afaik |
14:56:38 | Araq | disruptek, it has --gc:orc, for the first time. and view types |
14:56:48 | disruptek | gc:orc is not the default, though. |
14:57:18 | leorize[m]1 | and it has my ssl security fixes... |
14:57:23 | Yardanico | disruptek: because we need wide testing :) |
14:57:26 | disruptek | when we ask someone what version they are using, "1.4" won't mean much to us. |
14:57:35 | Araq | yeah, we changed the plan, can't make the newest GC that we have the default |
14:57:36 | Yardanico | and we will need to spam people about orc a lot so they actually test it :P |
14:58:07 | leorize[m]1 | just flip the switch once 1.4 ships |
14:58:09 | FromDiscord | <shashlick> you don't need to solve world hunger to do a minor release |
14:58:22 | leorize[m]1 | then we can use the next cycle figuring out what's left to be done for --gc:orc |
14:58:24 | disruptek | look, my point is simply that 1.4 should ship. |
14:58:34 | FromDiscord | <shashlick> i agree too - i want to see the new nimble stuff tested |
14:58:45 | FromDiscord | <shashlick> since it has gotten almost no real world coverage |
14:59:29 | FromDiscord | <juan_carlos> I am using orc but cant make it crash, just some lib wont support it. |
14:59:35 | Yardanico | what lib? |
14:59:49 | Yardanico | if you do --deepcopy:on everything should work except if a lib does GC-specific casts |
14:59:53 | Yardanico | like status's chronicles |
14:59:54 | FromDiscord | <juan_carlos> eg. nimyaml |
15:00:03 | * | leorize quit (Ping timeout: 240 seconds) |
15:00:25 | Yardanico | https://github.com/flyx/NimYAML/issues/85 |
15:00:26 | disbot | â„ NimYAML compatibility with ARC/ORC. |
15:01:37 | Araq | bbl |
15:04:59 | leorize[m]1 | sink inference is off by default now iirc |
15:05:04 | Yardanico | for user code |
15:05:06 | Yardanico | it's on for the stdlib |
15:05:15 | Yardanico | but even then NimYAML doesn't work without that patch |
15:05:26 | leorize[m]1 | I kinda hoped that it can be on by default |
15:05:38 | Yardanico | there still seem to be undiscovered issues with it AFAIK |
15:05:48 | Yardanico | and I have a few more libs failing with orc in my backlog |
15:06:08 | Yardanico | some examples in nigui and nimly - didn't find out the issue yet |
15:06:12 | Yardanico | and macroutils - https://github.com/nim-lang/Nim/issues/15043 |
15:06:14 | disbot | â„ [ARC] Compiler error with a closure proc in a macro ; snippet at 12https://play.nim-lang.org/#ix=2sKu |
15:06:18 | disruptek | it doesn't have to be the last 1.4 release. |
15:06:20 | Yardanico | there's probably more, but I didn't test :P |
15:07:44 | leorize[m]1 | disruptek: just talking about what to do for the future, I think we all pretty much agreed that 1.4 can be shipped now |
15:13:15 | FromDiscord | <Clyybber> https://dev.azure.com/nim-lang/Nim/_build/results?buildId=8425&view=logs&j=9ce34ca5-78e3-50eb-e582-5eabb51cd3ed&t=96a0fe61-4831-51a3-7585-5f390132c17a&l=1747 |
15:13:22 | FromDiscord | <Clyybber> poor compiler was cut off |
15:13:32 | FromDiscord | <Clyybber> H |
15:13:42 | Yardanico | H |
15:13:47 | Yardanico | that is meme quality stuff |
15:15:02 | * | arecacea1 quit (Remote host closed the connection) |
15:15:25 | * | arecacea1 joined #nim |
15:16:51 | Yardanico | btw, it's still funny to me that GitHub does not have a minimum char limit for nicknames like most other services |
15:16:52 | Yardanico | https://github.com/a |
15:17:13 | * | leorize joined #nim |
15:17:23 | idf | h |
15:23:23 | leorize[m]1 | I think minimum char limit is kinda dumb :p |
15:24:02 | FromDiscord | <Rika> just have no username ez |
15:25:41 | Yardanico | btw, it still amazes me that Nim has CI working on 5 OSes :) |
15:25:44 | FromDiscord | <slonik_az> > thats a big rangeâ”@Rika Everything from 51 to 100 is listed alphabetically. No way to tell exact ranking. But it is top 100 ! |
15:25:53 | Yardanico | Linux, macOS, Windows, FreeBSD, OpenBSD |
15:26:02 | Yardanico | and maybe if sourcehut adds NetBSD we're gonna have it too |
15:26:10 | leorize[m]1 | euanator is working on netbsd too |
15:26:16 | Yardanico | yeah that's what I meant |
15:26:32 | leorize[m]1 | they are hosting their own ci server |
15:26:40 | FromDiscord | <shashlick> We need to expand to more c compilers |
15:26:55 | FromDiscord | <shashlick> Clang across all os, vcc, Intel etc |
15:27:11 | leorize[m]1 | clang should work across all os |
15:27:15 | FromDiscord | <mratsim> I tried CI to get working on x86_64 x86_32, ARM64, PPC64LE and s390x but s"çà x is missing some config |
15:27:20 | FromDiscord | <shashlick> It isn't tested though |
15:27:26 | Yardanico | interesting https://forum.nim-lang.org/t/6895 |
15:27:27 | leorize[m]1 | and I don't think there's any advantages to the intel compiler |
15:27:42 | FromDiscord | <Rika> mratsim, what is missing config? |
15:27:52 | Yardanico | ah that forum post is a easy one |
15:27:54 | Yardanico | it fails because "const" |
15:27:56 | FromDiscord | <mratsim> s390x |
15:28:15 | disruptek | show me a picture of your s390x. |
15:28:22 | FromDiscord | <Rika> how did that become `s"çà x` |
15:28:23 | FromDiscord | <shashlick> It's not a question of advantage, coverage increases confidence |
15:28:44 | leorize[m]1 | I don't think we should be supporting too many compilers |
15:28:58 | leorize[m]1 | just cover the major ones for each platform and we should be set |
15:28:58 | Yardanico | that's why 4raq cleaned the list a bit |
15:29:22 | Yardanico | icc needs to be separate, although I wonder if anyone is using it with Nim nowadays |
15:29:31 | Yardanico | I've tested it in 2017 iirc, and fixed one importc bug for it |
15:29:32 | disruptek | only mratsim. |
15:29:36 | leorize[m]1 | tell me how to setup nim + vcc and I will add it to CI |
15:29:52 | leorize[m]1 | does he? |
15:30:01 | Yardanico | he's on macos |
15:30:10 | Yardanico | oh nvm icc exists for macos too |
15:30:12 | disruptek | only for research afaik. |
15:30:42 | Yardanico | good old 2017 https://github.com/nim-lang/Nim/pull/5998 |
15:30:43 | disbot | â„ Add intel compiler support to times module |
15:31:53 | FromDiscord | <mratsim> @disruptek: https://media.discordapp.net/attachments/371759389889003532/763060969927737374/unknown.png |
15:32:06 | Yardanico | lol |
15:32:12 | FromDiscord | <mratsim> s390x is BigEndian which is VERY interesting |
15:32:12 | FromDiscord | <shashlick> the point is that industry doesn't just use gcc |
15:32:20 | FromDiscord | <mratsim> it also includes elliptic curve builtin code |
15:32:23 | Yardanico | yeah, I saw mratsim's posts about bigints in stint |
15:32:26 | Yardanico | and that gcc is the worst |
15:32:39 | Yardanico | its assembly output is the least performant in that case compared to others |
15:32:52 | FromDiscord | <shashlick> and if we can prove consistent support for proprietary compilers, it will expand Nim's reach |
15:32:55 | idf | use HolyC compiler |
15:33:00 | Yardanico | idf: won't work |
15:33:03 | leorize[m]1 | wait, travis have native s390x support? |
15:33:05 | Yardanico | it doesn't support C |
15:33:13 | Yardanico | HolyC isn't C |
15:33:14 | idf | make nim compile to holyc |
15:33:22 | Yardanico | no |
15:33:23 | leorize[m]1 | @shashlick we should only be concerned with vcc on windows |
15:33:26 | idf | i will |
15:33:29 | leorize[m]1 | hardly anyone uses icc |
15:33:44 | FromDiscord | <shashlick> sure, just vcc is a big lift - i'm just pushing the issue |
15:33:47 | FromDiscord | <mratsim> I use ICC |
15:33:52 | FromDiscord | <Clyybber> idf: famous last words |
15:34:09 | FromDiscord | <mratsim> @leorize, yes Travis has PPC and s390x support |
15:34:12 | leorize[m]1 | don't you have to pay if you use icc for commercial purposes? |
15:34:14 | FromDiscord | <mratsim> and they have beefy PPC machine |
15:34:19 | disruptek | i don't care about s390x. |
15:34:23 | disruptek | and neither should you. |
15:34:25 | Yardanico | hah lol HolyC has no-parens function call syntax |
15:34:26 | Yardanico | https://harrisontotty.github.io/p/a-lang-design-analysis-of-holyc |
15:34:37 | Yardanico | x = Foo(); and x = Foo; mean the same in HolyC lol |
15:34:40 | FromDiscord | <mratsim> icc is free with Intel SYstem Studio, you only need to renew a community subscription every year now |
15:34:40 | FromDiscord | <shashlick> anyone who is optimizing to the processor specific extensions will use icc and similar compilers |
15:34:43 | disruptek | but, i believe we will move towards an llvm backend, so most of this compiler talk is irrelevant. |
15:34:46 | FromDiscord | <shashlick> i know many in my industry |
15:34:56 | Yardanico | disruptek: I don't think it will be the *only* one anyway |
15:35:02 | Yardanico | having C as one of the main backends is an advantage |
15:35:10 | disruptek | it will quickly subsume other methods of codegen. |
15:35:11 | Yardanico | for more obscure platforms |
15:35:26 | Yardanico | like I easily got nim programs to run on Kolibri OS because they provide a version of gcc with their own mini libc |
15:35:30 | Yardanico | --os:any --gc:arc go brr |
15:35:34 | disruptek | don't care. |
15:35:34 | FromDiscord | <mratsim> IOT has a lot of custom (bad) compilers |
15:35:38 | FromDiscord | <mratsim> and no LLVM support |
15:35:45 | disruptek | don't care. |
15:35:46 | FromDiscord | <mratsim> tht said, even Nvidia is using LLVM now |
15:35:47 | Yardanico | disruptek: if you don't, it doesn't mean that others are the same |
15:36:01 | disruptek | i know, but i won't support it. |
15:36:04 | Yardanico | _you_ |
15:36:05 | disruptek | will you? |
15:36:05 | Yardanico | not others |
15:36:15 | Yardanico | sorry, but we're not talking about you specifically now :) |
15:36:17 | disruptek | so, you don't care, either. |
15:36:19 | * | JustASlacker joined #nim |
15:36:46 | FromDiscord | <dom96> Yardanico++ |
15:36:53 | * | thomasross joined #nim |
15:36:54 | FromDiscord | <dom96> Compilation to C is wonderful |
15:36:59 | idf | inc Yardanico |
15:37:01 | Yardanico | time to create #nim-disruptek |
15:37:05 | idf | yes |
15:37:14 | FromDiscord | <Rika> with only disruptek |
15:37:18 | FromDiscord | <Rika> everyone else is not allowed to join |
15:37:27 | idf | me and him |
15:37:27 | idf | 1v1 |
15:37:30 | Yardanico | also zevv |
15:37:37 | Yardanico | zevv can decipher disruptek's messages |
15:37:38 | FromDiscord | <dom96> haha |
15:37:49 | Yardanico | sometimes |
15:38:00 | disruptek | oh, you can join, i'll just kick you immediately. |
15:38:09 | FromDiscord | <dom96> We can just bridge #nim in there, but only one way |
15:38:23 | leorize[m]1 | lol |
15:38:32 | Yardanico | also it's nice that we got more people contributing |
15:38:36 | Yardanico | probably it's related to hacktoberfest |
15:38:39 | disruptek | yeah, great. |
15:38:50 | Yardanico | I've seen more PRs from unknown (to me) people over the last few days to the nim repo |
15:39:12 | FromDiscord | <Avatarfighter> what is good everyone |
15:39:17 | Yardanico | nim is good |
15:39:48 | FromDiscord | <mratsim> you don't knnow timotheecour? |
15:40:03 | disruptek | i wish i didn't. |
15:40:17 | Yardanico | HAHAHA |
15:40:23 | Yardanico | sorry |
15:40:30 | leorize[m]1 | @mratsim do you plan to write any multithreading guide in the future? |
15:40:42 | Yardanico | well, he did a FOSDEM talk about multithreading runtimes |
15:40:48 | leorize[m]1 | multi threading is the hot new thing and I don't feel like I know enough to write multi threaded stuff |
15:40:51 | Yardanico | and you know about it first-hand :P |
15:41:05 | Yardanico | btw, https://dev.to/ seems like a nice new(ish) lightweight medium alternative |
15:41:09 | FromDiscord | <mratsim> It would start with "if you're here for multithreaded IO, turn left towards the cliff" :p |
15:41:10 | Yardanico | maybe I should write a few posts there |
15:41:16 | FromDiscord | <dom96> hot new thing? lol |
15:41:23 | * | leorize quit (Ping timeout: 240 seconds) |
15:41:29 | FromDiscord | <mratsim> it certainly make my CPU hot |
15:41:36 | FromDiscord | <Avatarfighter> lmao |
15:41:46 | Yardanico | it seems more similar to mostly-russian habr.com |
15:41:48 | Yardanico | one main feed |
15:41:48 | FromDiscord | <Avatarfighter> Disruptek: when is Nim's most famous streamer going live đ |
15:41:53 | Yardanico | you can subscribe to different topics |
15:42:04 | FromDiscord | <Clyybber> AVX is the other hot thing |
15:42:05 | FromDiscord | <dom96> I prefer to keep Core #0 hot and the rest cold as ice |
15:42:06 | Yardanico | https://habr.com |
15:42:07 | FromDiscord | <Rika> dev.to has been existing for a while now |
15:42:39 | Yardanico | habr has stricter rules than dev.to or medium and is invite-only though |
15:43:11 | Yardanico | (you can only get an invite from other people directly or via writing an article into sandbox, and then some user or a moderator can give you an invite if they deem that article good enough) |
15:43:20 | Yardanico | I got my invite from a small nim article |
15:43:25 | Yardanico | "article" |
15:43:32 | FromDiscord | <dom96> guess I should brush up on my Russian |
15:43:40 | FromDiscord | <dom96> time to get that invite |
15:43:40 | Yardanico | habr has english nowadays too |
15:43:44 | FromDiscord | <Avatarfighter> aha |
15:43:48 | Yardanico | so yeah, you can make an english article |
15:43:51 | disruptek | oh yeah streaming, i forgot. |
15:44:24 | * | ldlework quit (Ping timeout: 272 seconds) |
15:46:46 | * | hnOsmium0001 joined #nim |
15:48:31 | disruptek | i guess i could fix the bot. i don't think anyone wants to watch me work on the compiler. |
15:48:47 | FromDiscord | <Avatarfighter> i enjoyed it ngl |
15:49:15 | FromDiscord | <Avatarfighter> its the type of hassle that is fun to watch but not participate in lol |
15:49:21 | disruptek | i'm talking about normal people. |
15:49:47 | FromDiscord | <Avatarfighter> wowww |
15:49:59 | FromDiscord | <Clyybber> ur special |
15:50:15 | FromDiscord | <shashlick> @dom96 - I got a static musl binary of choosenim built but even openssl will need to be statically linkedâ”of course this means the binary will be truly portable and this can be done on Win/OSX as well |
15:54:28 | disruptek | i, for one, welcome our 70mb choosenim overlords. |
15:55:38 | * | NimBot joined #nim |
15:58:30 | * | Vladar joined #nim |
16:00:13 | disruptek | lemme just rub one out and then i'll stream. |
16:00:19 | disruptek | ~stream |
16:00:20 | disbot | stream: 11https://twitch.tv/disruptek (live video/audio) and mumble://uberalles.mumbl.io/ (live voice chat) -- disruptek |
16:00:29 | Yardanico | ALARM ALARM |
16:00:33 | Yardanico | DISRUPTEK IS ABOUT TO START STREAMING |
16:00:36 | Yardanico | EVERYONE WAKE UP |
16:00:45 | disruptek | quiet down chucklhead. |
16:00:51 | Yardanico | ill join mumble |
16:00:57 | FromDiscord | <Avatarfighter> Oh my god |
16:01:04 | FromDiscord | <Avatarfighter> The HEAD OF STREAMING for Nim is Live |
16:05:36 | FromDiscord | <Rika> `@everyone` |
16:06:02 | FromDiscord | <Rika> ~~i oh so hope that didnt do a ping in gitter~~ |
16:09:02 | * | leorize joined #nim |
16:09:30 | * | aenesidemus joined #nim |
16:09:50 | FromDiscord | <lqdev> i don't think ateveryone is a thing on gitter but lemme check |
16:10:11 | FromDiscord | <lqdev> _if it loads with my shiternet connection today_ |
16:10:23 | FromDiscord | <lqdev> yeah that isn't a ping on gitter |
16:10:28 | FromDiscord | <lqdev> unless there's a person called everyon |
16:10:29 | FromDiscord | <lqdev> (edit) 'everyon' => 'everyone' |
16:10:31 | FromDiscord | <lqdev> in which case |
16:10:32 | FromDiscord | <lqdev> hi! |
16:10:46 | Yardanico | disruptek won't be in mumble today :( |
16:10:49 | Yardanico | but others can join guyss |
16:10:54 | Yardanico | or maybe discord :think: |
16:11:23 | FromDiscord | <Avatarfighter> I will join laterâąïž |
16:11:30 | * | JustASlacker quit (Ping timeout: 256 seconds) |
16:11:31 | Yardanico | discord or irc? |
16:11:33 | Yardanico | mumble* |
16:11:46 | FromDiscord | <Avatarfighter> Which is easiest for you |
16:12:28 | * | solitudesf quit (Read error: Connection reset by peer) |
16:14:03 | * | leorize quit (Ping timeout: 240 seconds) |
16:14:24 | * | ldlework joined #nim |
16:28:07 | * | thomasross quit (Quit: Leaving) |
16:29:22 | * | nature joined #nim |
16:34:54 | Yardanico | ~mumble |
16:34:54 | disbot | no footnotes for `mumble`. đ |
16:47:19 | * | solitudesf joined #nim |
17:07:21 | * | luis_ joined #nim |
17:07:56 | FromDiscord | <shashlick> @dom96 - why does choosenim use curl on osx again - openssl related? |
17:08:50 | FromDiscord | <dom96> @shashlick yep. Statically linking openssl sounds annoying. Do we have to do it for musl? |
17:09:13 | FromDiscord | <shashlick> ya no choice since the openssl so files installed on the system will be glibc compiled |
17:09:21 | FromDiscord | <shashlick> so choosenim is not able to load it |
17:10:14 | FromDiscord | <shashlick> statically linking openssl is easy with nimterop / julia binary builder and will work across all OS |
17:10:22 | * | abm joined #nim |
17:13:54 | disruptek | shashlick: we can only run one nimterop build at a time? |
17:14:15 | FromDiscord | <shashlick> threads? |
17:14:23 | disruptek | nah. |
17:14:51 | * | leorize joined #nim |
17:15:03 | * | opal quit (Ping timeout: 240 seconds) |
17:15:16 | FromDiscord | <shashlick> should be able to run in parallel - toast is standalone, and compile time is single threaded no |
17:17:27 | * | opal joined #nim |
17:18:05 | * | luis_ quit (Remote host closed the connection) |
17:19:13 | * | D__ is now known as D_ |
17:20:03 | * | leorize quit (Ping timeout: 240 seconds) |
17:22:50 | FromDiscord | <Clyybber> leorize @dom96 can you review https://github.com/nim-lang/Nim/pull/15275 |
17:22:50 | disbot | â„ getPeerCertificates() for libressl and openssl10 |
17:23:16 | FromDiscord | <iWonderAboutTuatara> @Yardanico I have an idea to make edited messages show up in IRC |
17:23:24 | Yardanico | they're already showing up in IRC |
17:23:27 | Yardanico | with edit diffing |
17:23:29 | FromDiscord | <Avatarfighter> yeah |
17:23:29 | FromDiscord | <iWonderAboutTuatara> oh are they? |
17:23:30 | FromDiscord | <iWonderAboutTuatara> nevermind |
17:23:32 | Yardanico | :D |
17:23:41 | FromDiscord | <iWonderAboutTuatara> didn't realize lmao |
17:23:49 | FromDiscord | <iWonderAboutTuatara> I kinda want to contribute PR to something nim related though |
17:24:01 | FromDiscord | <iWonderAboutTuatara> does Nim accept additions to modules? |
17:24:13 | FromDiscord | <iWonderAboutTuatara> like to algorithms, there are some I want to add |
17:24:46 | Yardanico | yes but some of the stuff might go to fusion instead |
17:26:07 | FromDiscord | <iWonderAboutTuatara> !repo fusion |
17:26:07 | disbot | https://github.com/nim-lang/fusion -- 9fusion: 11Fusion is for now an idea about how to grow Nim's ecosystem without the pain points of more traditional approaches. 15 62â 4đŽ 7& 1 more... |
17:26:22 | FromDiscord | <iWonderAboutTuatara> this one? |
17:26:24 | Yardanico | yes |
17:27:47 | FromDiscord | <iWonderAboutTuatara> I don't want to contribute a whole module |
17:27:52 | FromDiscord | <iWonderAboutTuatara> just some functions to smaller modules |
17:28:02 | disruptek | !requires fusion |
17:28:02 | disbot | fusion: no results đą |
17:31:38 | FromDiscord | <iWonderAboutTuatara> Should I submit the PR to !repo Nim or to !repo fusion? |
17:31:51 | Yardanico | idk |
17:32:05 | FromDiscord | <iWonderAboutTuatara> or will they shift it for me if i get it on the wrong repo |
17:32:18 | Yardanico | it won't get automatically shifted |
17:34:21 | FromDiscord | <iWonderAboutTuatara> They'll ask me to shift then, which is good enough |
17:34:47 | FromDiscord | <iWonderAboutTuatara> Araq: If there is a specific place it should go, please lmk |
17:35:13 | * | haxscramper joined #nim |
17:38:29 | jken | I am trying to get some data from assimp, anyone have any idea how to cast array[ptr SomeType] to an UncheckedArray? Example: type |
17:38:29 | jken | SomeType: int |
17:38:29 | jken | |
17:38:29 | jken | Mesh: |
17:38:29 | jken | vertices: ptr SomeType |
17:38:30 | jken | normals: ptr SomeType |
17:38:34 | jken | texCoords: array[ptr SomeType] |
17:38:36 | jken | |
17:38:38 | jken | # Cast to an unchecked array of SomeTypes (Really Vec3s) |
17:38:40 | jken | let vertices = cast[ptr UncheckedArray[SomeType]](mesh.vertices) |
17:38:42 | jken | let normals = cast[ptr UncheckedArray[SomeType]](mesh.normals) |
17:38:44 | jken | # How do I do the same from array[ptr SomeType]? |
17:38:46 | jken | let textureCoordinates = #?? |
17:38:51 | jken | sorry.. thought i had the URL on my clipboard.. https://play.nim-lang.org/#ix=2zVa |
17:38:55 | FromDiscord | <Rika> :MonkaS: |
17:39:22 | FromDiscord | <Clyybber> ` ` |
17:41:44 | FromDiscord | <iWonderAboutTuatara> do I have to build nim from source to contribute to stdlib? |
17:43:10 | FromDiscord | <haxscramper> You might want to run full unit test suite on a freshly built compiler |
17:44:04 | * | waleee-cl joined #nim |
17:44:29 | * | haxscramper left #nim ("ERC (IRC client for Emacs 27.1)") |
17:49:25 | * | idf quit (Ping timeout: 240 seconds) |
17:52:34 | * | idf joined #nim |
18:00:21 | * | tiorock joined #nim |
18:00:21 | * | tiorock quit (Changing host) |
18:00:21 | * | tiorock joined #nim |
18:00:21 | * | rockcavera quit (Killed (orwell.freenode.net (Nickname regained by services))) |
18:00:21 | * | tiorock is now known as rockcavera |
18:00:37 | FromDiscord | <iWonderAboutTuatara> how do I do that? |
18:00:42 | FromDiscord | <iWonderAboutTuatara> Not contributing to compiler btw |
18:03:16 | FromDiscord | <demotomohiro> sent a code paste, see https://play.nim-lang.org/#ix=2zVj |
18:03:53 | Yardanico | you don't have to |
18:06:53 | FromDiscord | <iWonderAboutTuatara> oh ok solid |
18:07:11 | Yardanico | but stdlib has tests too |
18:07:14 | FromDiscord | <iWonderAboutTuatara> what do I do instead, just clone the repo, add the thing to the module, submit that? |
18:09:11 | Yardanico | as a PR, yes |
18:09:18 | Yardanico | some tests can be done via runnableExamples |
18:09:39 | * | leorize joined #nim |
18:12:08 | jken | Heres a better example of my question.. https://play.nim-lang.org/#ix=2zVl |
18:27:03 | * | leorize quit (Ping timeout: 240 seconds) |
18:29:12 | * | filcuc quit (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/) |
18:31:24 | * | leorize joined #nim |
18:37:23 | * | leorize quit (Ping timeout: 240 seconds) |
18:41:50 | * | leorize joined #nim |
18:43:49 | FromDiscord | <brainproxy> sent a code paste, see https://play.nim-lang.org/#ix=2zVz |
18:44:22 | * | aenesidemus quit (Read error: Connection reset by peer) |
18:44:26 | FromDiscord | <brainproxy> (edit) 'https://play.nim-lang.org/#ix=2zVz' => 'https://play.nim-lang.org/#ix=2zVA' |
18:46:32 | * | FromDiscord quit (Remote host closed the connection) |
18:46:47 | * | FromDiscord joined #nim |
18:46:49 | FromDiscord | <demotomohiro> I think declaring `cdefs` as const array would work |
18:47:09 | FromDiscord | <demotomohiro> Or put your loop under `static:` |
18:47:16 | FromDiscord | <brainproxy> the loop is in `static:` |
18:47:56 | FromDiscord | <brainproxy> > I think declaring cdefs as const array would workâ”can you help me with syntax for trying that? It's not possible to know the length of the array in advance, unfortunately |
18:48:10 | FromDiscord | <brainproxy> which is why I am computing it as a seq |
18:48:24 | jken | Why is `m[i]` at line 10 giving me "cannot evaluate at compile time: i"? https://play.nim-lang.org/#ix=2zVD |
18:50:03 | * | leorize quit (Ping timeout: 240 seconds) |
18:50:33 | FromDiscord | <demotomohiro> But you need to determine the size of cdefs at compile time to pass items of it to `static[string]`. |
18:50:54 | FromDiscord | <demotomohiro> You can also use compile time pragma |
18:50:55 | FromDiscord | <demotomohiro> https://nim-lang.org/docs/manual.html#pragmas-compiletime-pragma |
18:51:48 | Yardanico | Araq: would it make sense to add an "ORC" label specifically for ORC? there's at least 1 open issue which is ORC-specific right now |
18:52:59 | FromDiscord | <Vindaar> @jken: Does the result of the `texCoords` call return a tuple? |
18:53:41 | jken | Vindar, That's what I am trying to find out honestly. The type def is: array[MAX_TEXTURE_COORDS - 1, ptr TVector3d] |
18:53:43 | FromDiscord | <brainproxy> so I can compute a seq of strings but I don't know their individual lengths or the the length of the seq in advance; but once I've computed that seq, in a loop can I cast each string to a static[string]? |
18:53:57 | jken | TVector3d is a tuple of 3 cfloats |
18:56:27 | FromDiscord | <demotomohiro> At least, `cdefs` need to be created at compile time. If you can create it only at runtime, you cannot pass items of it to `static[string]`. |
18:56:55 | FromDiscord | <Vindaar> Then that's the reason the compilation fails there. Access to tuples via `[]` can only be done if the index is known at compile time |
18:57:46 | jken | Vindaar, any idea on how to move forward then? :/ Based on the type I know its a ptr to a tuple with 3 fields. |
18:58:05 | jken | From here: https://github.com/barcharcraz/nim-assimp/blob/master/assimp.nim#L60 |
18:58:22 | FromDiscord | <brainproxy> @demotomohiro none of this is at runtime, the only purpose of the `gen.nim` file is to dump out generated nim code |
19:02:53 | FromDiscord | <brainproxy> sent a code paste, see https://play.nim-lang.org/#ix=2zVJ |
19:05:47 | FromDiscord | <Vindaar> @jken oh that file clears it up a bit for me. So `texCoords` is a field, an array containing `ptr TVector3D`. So it's different from what I thought. That means `var m = mesh.texCoords[0]` is actually just a `ptr TVector3D`. â”I'm not sure, but I think what might be going on now is that the Nim compiler realizes that `TVector3D` is a tuple, dereferences the `ptr` and tries to access the field at index `i` (which as I stated it can't) |
19:06:16 | FromDiscord | <Vindaar> does your `mesh.vertexCounts` only go from 0 to 2? |
19:06:22 | FromDiscord | <Vindaar> *your loop |
19:06:37 | jken | no, there are thousands of vertices.. I am also confused about this. |
19:06:45 | * | leorize joined #nim |
19:07:16 | jken | I am using this as a guide: https://github.com/jackmott/easygl/blob/master/src/easygl/model.nim#L67 |
19:07:23 | jken | Another nim lib that uses assimp. |
19:09:31 | FromDiscord | <Vindaar> I'm confused. I would somewhat understand if what was contained in `texCoords` were pointers to some arrays. Then using `cast[ptr UncheckedArray[T]]` you could access the `i`th element just fine |
19:11:35 | jken | Vindaar, you are a genius. |
19:11:49 | jken | This works: https://play.nim-lang.org/#ix=2zVM |
19:12:41 | FromDiscord | <Vindaar> đ |
19:12:43 | FromDiscord | <Vindaar> bbl |
19:17:05 | * | narimiran quit (Ping timeout: 240 seconds) |
19:20:32 | disruptek | so. you still think streaming is worth attempting? |
19:21:04 | Yardanico | XD |
19:21:27 | FromDiscord | <Clyybber> disruptek: Did you make mangling progress? |
19:22:18 | disruptek | problem i have now is that i have redundant types between ansi_c and the rest of system and no way to connect the two conflict scopes. |
19:22:59 | disruptek | this is a new issue due to disolving all types but enums and objects. |
19:23:13 | FromDiscord | <demotomohiro> @brainproxy, how about to make `cdefs` in a macro and call `cDefines` like this?â”https://play.nim-lang.org/#ix=2zVP |
19:34:03 | * | leorize quit (Ping timeout: 240 seconds) |
19:35:20 | * | leorize joined #nim |
19:37:00 | FromGitter | <Yardanico> 123 |
19:40:23 | * | leorize quit (Ping timeout: 240 seconds) |
19:41:10 | * | leorize joined #nim |
19:45:12 | * | haxscramper joined #nim |
19:46:23 | * | leorize quit (Ping timeout: 240 seconds) |
19:48:11 | * | leorize joined #nim |
19:52:31 | haxscramper | alehander92: are you still working/planning to work on RFC for enum flow checking/typestate? https://irclogs.nim-lang.org/24-07-2020.html#13:05:36 |
19:58:45 | * | solitudesf quit (Ping timeout: 240 seconds) |
20:13:17 | * | tane quit (Read error: Connection reset by peer) |
20:22:33 | FromDiscord | <shashlick> @disruptek @dom96 some competition - https://github.com/c-blake/nimp |
20:23:28 | FromDiscord | <shashlick> @brainproxy - you will need to write a macro for that |
20:24:25 | FromDiscord | <shashlick> https://github.com/nimterop/nimterop/blob/0c2ca16f7ad9b1798f1c28ca0a3268d98e845a8d/nimterop/cimport.nim#L216 |
20:38:28 | FromDiscord | <Yardanico> Good night Nim people |
20:38:59 | FromDiscord | <Elegant Beef> gday |
20:48:34 | FromDiscord | <Avatarfighter> goodnight |
20:50:30 | FromDiscord | <brainproxy> @shashlick I couldn't get `macro cDefine*(values: static seq[string])` (from `nimterop` itself) to work even with a hand-written `static seq[string]`. It didn't result in an error but also didn't result in the expected `{.passC: "...".}` output; unlike calling `cDefine("ON_SOME_STRING`)` which does produce the expected output. |
21:00:26 | FromDiscord | <shashlick> Did you run it in a static block |
21:00:36 | FromDiscord | <shashlick> Also might need to define it as a const |
21:00:44 | FromDiscord | <shashlick> The seq |
21:04:13 | FromDiscord | <dom96> @shashlick cool |
21:06:43 | FromDiscord | <Clyybber> good night! |
21:07:27 | FromDiscord | <demotomohiro> good night! |
21:07:31 | FromDiscord | <Avatarfighter> good night! |
21:07:52 | FromDiscord | <demotomohiro> @brainproxy This code can pass a string from compile time seq[string] to macro with static[string] param inside macro.â”https://play.nim-lang.org/#ix=2zVP |
21:08:32 | FromDiscord | <brainproxy> @demotomohiro thanks for that, I've been trying to adapt it, can't get it to work |
21:08:50 | FromDiscord | <brainproxy> in that case "foo" and "bar" are static strings, right? |
21:09:19 | FromDiscord | <brainproxy> or maybe that's not at issue, but in any case `cDefine` complained about it in the same way |
21:14:02 | FromDiscord | <brainproxy> I take it back, it does work, I probably screwed something up in my first pass at adapting it. thanks @demotomohiro !! |
21:18:24 | FromDiscord | <demotomohiro> np |
21:22:52 | * | disruptek left #nim (#nim) |
21:23:12 | * | disruptek joined #nim |
21:23:26 | * | disruptek left #nim (#nim) |
21:25:05 | * | disruptek joined #nim |
21:27:38 | * | rockcavera is now known as Guest75406 |
21:27:38 | * | Guest75406 quit (Killed (hitchcock.freenode.net (Nickname regained by services))) |
21:27:39 | * | rockcavera joined #nim |
21:32:14 | FromDiscord | <Avatarfighter> Can you reuse httpclient to make multiple requests back to back? |
21:33:06 | FromDiscord | <shashlick> should be |
21:33:39 | FromDiscord | <Avatarfighter> I can't remember what the issue with httpclient was where you couldn't do something with it |
21:34:02 | FromDiscord | <shashlick> https://github.com/nim-lang/Nim/blob/devel/lib/pure/httpclient.nim#L730 |
21:43:55 | FromDiscord | <Avatarfighter> If I wrap an api should I present the user with objects they can interact with or should I let them mess with the raw responses themselves? |
21:44:28 | * | a_chou quit (Ping timeout: 260 seconds) |
21:44:44 | FromDiscord | <Avatarfighter> actually nvm |
21:44:48 | FromDiscord | <Avatarfighter> I'm going to do something really ugly |
21:45:15 | * | a_chou joined #nim |
21:46:32 | * | haxscramper quit (Remote host closed the connection) |
21:51:31 | disruptek | make sure you get it on video. |
21:51:54 | FromDiscord | <shashlick> https://github.com/dom96/choosenim/pull/225 |
21:51:55 | disbot | â„ Static build with musl |
21:52:19 | disruptek | i think mangling is going to kill me. |
21:53:24 | FromDiscord | <Avatarfighter> disruptek: whatâs the new issue with mangling |
21:53:24 | FromDiscord | <Avatarfighter> disruptek: whatâs the new issue with mangling |
21:54:57 | disruptek | ssdd |
21:56:00 | disruptek | it's fucking hard, basically. hard to thread the needle. |
21:56:26 | disruptek | we never had to choose names before. |
21:56:29 | disruptek | now we do. |
21:58:01 | PMunch | Zevv, sorry I had to leave. Basically what I want to do is to create a more type-safe compile-time evaluated version of docopt to flex the strengths of Nim |
21:58:08 | PMunch | But right now I'm off to bed |
21:58:09 | * | PMunch quit (Quit: leaving) |
21:58:33 | FromDiscord | <Avatarfighter> goddamn the reddit api docs arz shit |
21:58:52 | disruptek | maybe treeform can give you a better source. |
22:06:19 | * | a_chou quit (Remote host closed the connection) |
22:06:37 | * | a_chou joined #nim |
22:07:03 | FromDiscord | <Avatarfighter> Maybe i just dislike how the api docs dont even tell you the base url nor how you get submissions in a specific subreddit |
22:07:19 | FromDiscord | <Avatarfighter> Forgot a comma after "maybe" |
22:10:57 | disruptek | i could really go for a coma right about now. |
22:17:46 | * | Vladar quit (Quit: Leaving) |
22:20:14 | FromDiscord | <dom96> Taking bump to the next level https://twitter.com/theprincessxena/status/1313585993862311936?s=21 |
22:25:03 | disruptek | nothing like taking software that shouldn't exist and making it even more complex. |
22:29:01 | * | a_chou quit (Ping timeout: 264 seconds) |
22:51:56 | * | abm quit (Quit: Leaving) |
22:59:30 | FromDiscord | <UNIcodeX> > Taking bump to the next level https://twitter.com/theprincessxena/status/1313585993862311936?s=21â”@dom96 what fresh hell is this...? |
22:59:52 | FromDiscord | <UNIcodeX> (edit) 'https://twitter.com/theprincessxena/status/1313585993862311936?s=21â”<@132595483838251008>' => 'â”@dom96' |
22:59:59 | disruptek | more bad ideas made worse by implementation. |
23:00:26 | FromDiscord | <UNIcodeX> Not gonna lie. I cracked up at the first few sentences and closed the article. |
23:01:01 | disruptek | hey, at least it's written in rust. |
23:01:11 | FromDiscord | <UNIcodeX> LMAO |
23:06:52 | * | Trustable quit (Remote host closed the connection) |
23:09:41 | FromDiscord | <Avatarfighter> well guys i just received a haircut and I wish it was a bowlcut |
23:15:12 | FromDiscord | <Rebel> congrats |
23:45:09 | * | a_chou joined #nim |
23:56:18 | * | NimBot joined #nim |