00:12:12 | * | theelous3 quit (Ping timeout: 244 seconds) |
00:30:35 | * | theelous3 joined #nim |
00:30:43 | * | Ils quit (Ping timeout: 256 seconds) |
00:40:21 | * | Aareon quit (Ping timeout: 256 seconds) |
00:43:35 | * | kapil____ quit (Quit: Connection closed for inactivity) |
00:43:36 | * | Aareon joined #nim |
00:57:18 | * | honeyYouForgotTh joined #nim |
00:59:50 | * | honeyYouForgotTh left #nim (#nim) |
01:01:04 | * | honeyYouForgotTh joined #nim |
01:01:05 | * | honeyYouForgotTh quit (Client Quit) |
01:20:01 | * | Aareon quit (Ping timeout: 256 seconds) |
01:49:47 | * | Snircle joined #nim |
01:54:35 | * | endragor joined #nim |
01:58:30 | * | rockcavera joined #nim |
02:02:03 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
02:19:24 | * | dddddd quit (Remote host closed the connection) |
02:24:07 | * | krux02 quit (Remote host closed the connection) |
03:05:14 | * | banc quit (Quit: ZNC - http://znc.in) |
03:09:32 | * | kapil____ joined #nim |
03:21:23 | * | banc joined #nim |
03:22:58 | * | rockcavera quit (Remote host closed the connection) |
04:08:39 | * | jxy_ joined #nim |
04:10:58 | * | jxy quit (Ping timeout: 268 seconds) |
04:19:46 | * | chemist69 quit (Ping timeout: 260 seconds) |
04:21:27 | * | chemist69 joined #nim |
04:22:58 | * | vlad1777d quit (Ping timeout: 245 seconds) |
04:35:41 | * | empxre joined #nim |
04:36:55 | * | empxre is now known as citycide |
05:00:03 | * | Death916 quit (Ping timeout: 264 seconds) |
05:02:33 | * | chemist69 quit (Ping timeout: 245 seconds) |
05:04:15 | * | chemist69 joined #nim |
05:18:28 | * | citycide quit (Remote host closed the connection) |
05:24:16 | * | nsf joined #nim |
05:44:11 | * | vlad1777d joined #nim |
05:50:22 | * | theelous3 quit (Remote host closed the connection) |
05:53:25 | * | narimiran joined #nim |
06:33:21 | * | rockcavera joined #nim |
06:52:09 | * | opi_ quit (Quit: ZNC - http://znc.in) |
06:56:58 | narimiran | here comes the solution for the RFC repo: https://twitter.com/natfriedman/status/1057678371256119297 (cc Araq) |
07:00:20 | Araq | wow |
07:00:34 | Araq | that's so cool :-) |
07:00:49 | Araq | I just realize now how much I wanted this |
07:00:54 | Araq | :D |
07:01:12 | narimiran | i'm glad i could make you happy :) |
07:01:47 | * | aaltohenrik quit (Quit: WeeChat 2.3) |
07:02:45 | * | mech422 quit (Ping timeout: 252 seconds) |
07:03:22 | narimiran | btw, have you seen the new 0.19.2 branch? (all cherry picks are made with -x) |
07:09:32 | Araq | yeah the plan for today is to make the nightlies build 0.19.2 |
07:18:38 | * | mech422 joined #nim |
07:19:45 | Araq | narimiran, minor thing, the branch is the 0.19 branch, not 0.19.2 |
07:21:47 | Araq | there is also an interesting problem, if devel will become 0.20, what is its devel version, it cannot be 0.19.1 |
07:22:12 | narimiran | ok, i can change the branch name, but please tell me the exact name you would like to use |
07:22:32 | Araq | we could use 0.19.3 for devel |
07:22:43 | narimiran | devel = 0.20.dev ? can we use letters? |
07:22:53 | Araq | no |
07:23:19 | narimiran | then it is 0.19.3 until it becomes 0.20.0? |
07:28:33 | * | kapil____ quit (Quit: Connection closed for inactivity) |
07:28:44 | Araq | yeah |
07:29:33 | Araq | it implies there won't be a 0.19.4 |
07:30:00 | Araq | maybe we should use 0.20.1 and with the release it becomes 0.20.0, no screw that |
07:30:24 | narimiran | well, 0.19.4 can be a bugfix version, if we find some showstopping regression, before 0.20 is released |
07:30:35 | narimiran | devel = 0.19.99? :D |
07:33:06 | Araq | narimiran, branch name is version-0-19 |
07:33:21 | narimiran | ok, jokes aside, 0.19.9 *does* look better (more logical) than 0.20.1, and it allows for more 0.19.x stable versions if necessary |
07:33:32 | narimiran | ok, will change it |
07:33:37 | Araq | yeah let's use that number then |
07:33:52 | Araq | 0.19.9 is cool |
07:35:27 | narimiran | "version-0-19" is up |
07:36:12 | Araq | ok cool, we have more fixes for 0.19 |
07:36:31 | Araq | so if I were to commit another [backport] how would it work? |
07:37:43 | narimiran | cherry-picking + tagging a release? |
07:38:07 | narimiran | so on the branch "version-0-19" you have tags 0.19.2, 0.19.4, etc |
07:38:26 | Araq | yes, but I'm asking for a cherry-pick tool |
07:40:35 | narimiran | a tool, when run, would cherry pick all the [backport] commits. (not the fixes without it, because we want to spend the least amount on effort on 0.19 branch, and focus on 0.20 and beyond) |
07:40:52 | Araq | sorry, I mean, does it exist already? |
07:41:06 | narimiran | it doesn't yet :) |
07:44:07 | Araq | ok. I can write one but it will be fun to figure out which commits are new |
07:45:38 | narimiran | you should focus on more important/harder things ;) |
07:46:04 | Araq | btw we're still hiring |
07:46:26 | narimiran | :) |
07:47:58 | narimiran | i'm not satisfying the conditions, i'm an amateur |
07:49:51 | Araq | we need to put money on issues |
07:53:50 | Araq | so what do we do with Complex128* = Complex[float64] |
07:53:57 | Araq | it's terrible |
07:54:29 | narimiran | yeah, the more i look at it, the more i don't like it |
07:54:37 | Araq | ComplexD for the float64 variant, ComplexF for the float32 variant? |
07:55:10 | narimiran | my first idea was to be similar to the "usual conventions", but 128 for f64 seems kinda weird |
07:57:10 | Araq | it gets worse once we add float128 support to Nim |
07:57:24 | Araq | Complex256 = Complex[float128] |
07:58:18 | narimiran | how would you that one with the letter suffix? |
07:58:37 | Araq | that's a ComplexH then for "huge" |
07:58:46 | Araq | or something like that |
07:59:00 | Araq | ComplexT for tremendous |
07:59:09 | Araq | it scales :P |
08:02:20 | narimiran | :D |
08:08:46 | * | krux02 joined #nim |
08:12:12 | * | Vladar joined #nim |
08:15:30 | * | leorize quit (Quit: WeeChat 2.2) |
08:23:46 | * | leorize joined #nim |
08:28:45 | * | PMunch joined #nim |
08:44:41 | * | Ils joined #nim |
09:03:12 | Araq | http://www.yodaiken.com/2018/05/20/depressing-and-faintly-terrifying-days-for-the-c-standard/ |
09:06:42 | * | floppydh joined #nim |
09:13:46 | * | LimeBlack joined #nim |
09:19:24 | * | leorize quit (Quit: WeeChat 2.2) |
09:25:17 | * | druonysus quit (Read error: Connection reset by peer) |
09:25:54 | * | leorize joined #nim |
09:42:21 | * | stefanos82 joined #nim |
09:55:40 | * | alehander2 joined #nim |
10:01:23 | * | dom96_w joined #nim |
10:03:22 | * | alehander2 quit (Quit: Page closed) |
10:13:56 | PMunch | Hmm, I wonder if we could get Nim to work on IncludeOS |
10:27:08 | * | NimBot joined #nim |
11:09:32 | * | theelous3 joined #nim |
11:25:01 | * | xet7 quit (Quit: Leaving) |
11:45:28 | * | ehmry joined #nim |
11:50:09 | * | xet7 joined #nim |
11:52:22 | * | endragor quit (Remote host closed the connection) |
11:52:50 | * | endragor joined #nim |
11:57:33 | * | endragor quit (Ping timeout: 252 seconds) |
12:22:59 | * | leorize quit (Quit: WeeChat 2.2) |
12:39:37 | * | kapil____ joined #nim |
12:45:49 | * | Snircle joined #nim |
12:59:04 | * | nsf quit (Quit: WeeChat 2.2) |
13:21:30 | PMunch | That would actually be pretty cool |
13:22:10 | PMunch | A fully stand-alone Nim program with integrated OS |
13:23:31 | Araq | the Ocaml people are doing similar things |
13:23:49 | PMunch | Yeah I saw that |
13:25:00 | PMunch | But since IncludeOS requires C++, it should theoretically be possible to use Nim to generate that C++ |
13:27:31 | * | masterdonx joined #nim |
13:28:11 | * | Ils quit (Ping timeout: 256 seconds) |
13:40:42 | PMunch | Would the GC be able to work with IncludeOS? |
13:45:56 | Araq | the GC doesn't require an OS, it just deals with memory |
13:46:31 | PMunch | But it doesn't run on microcontrollers. Or is that just because it's silly and doesn't make much sense? |
13:47:05 | Araq | depends on what "microcontroller" means |
13:47:46 | PMunch | I was thinking of a typical Arduino |
13:52:42 | PMunch | It would be pretty cool to have a GC'd Nim VM that starts in under a second and can utilize 100% of it's allocated resources |
13:52:57 | PMunch | Or at least close to |
13:57:51 | * | Aareon_ quit (Ping timeout: 260 seconds) |
13:57:54 | * | citycide joined #nim |
14:00:53 | * | citycide quit (Client Quit) |
14:01:08 | * | citycide joined #nim |
14:08:27 | * | leorize joined #nim |
14:09:57 | * | Aareon_ joined #nim |
14:13:12 | Araq | the biggest problem with a GC is not that it's some mystical thing that keeps you from writing an OS kernel |
14:13:48 | Araq | it's that tends to encourage programs that are not careful with memory |
14:14:18 | Araq | and that it is really hard to write a GC that doesn't have a space overhead of a factor of 2 compared to manually managed memory |
14:14:34 | PMunch | Why 2 specifically? |
14:15:31 | Araq | that's what studies showed |
14:16:11 | Araq | one reason is that the GC cannot run all the time as that would be too expensive so it lets you allocate until it kicks in |
14:16:34 | Araq | often that threshold is 2*currentMemUsage |
14:17:54 | Araq | a tracing GC starts with O(heap size) and then you need optimizations like generations to make it behave |
14:18:30 | Araq | manual memory management starts with O(1) for an O(1) allocator (that Nim uses btw) |
14:19:19 | PMunch | Huh, interesting |
14:20:30 | Araq | it's a wonder GCs work as well as they do :-) |
14:20:58 | PMunch | Yeah I remember the first time I really learned how a GC works, I was shocked :P |
14:21:26 | FromDiscord_ | <🐍 Aareon 🐳> Any other good studies on GC? I know Go's is known to be either really good, or really in the way |
14:23:28 | PMunch | By the way http://ix.io/1qJQ would it be possible to sort the list of potential calls based on some metric. Cause that output is pretty annoying to debug.. |
14:23:45 | PMunch | Simplest would probably be sort by mismatch position |
14:25:24 | * | endragor joined #nim |
14:30:09 | Araq | PMunch, I have an improvement for that |
14:32:22 | PMunch | Oh? |
14:52:08 | * | endragor quit (Remote host closed the connection) |
14:52:41 | * | endragor joined #nim |
14:52:55 | * | citycide quit (Ping timeout: 268 seconds) |
14:57:20 | * | citycide joined #nim |
14:57:24 | * | endragor quit (Ping timeout: 252 seconds) |
15:01:33 | * | leorize quit (Quit: WeeChat 2.2) |
15:02:18 | PMunch | Plan on pushing it soon? |
15:03:01 | Araq | sure, I'm working on #9491 but can do it afterwards |
15:05:18 | PMunch | I mean it's not super critical, so if you have better stuff to do it can wait :) |
15:07:40 | * | leorize joined #nim |
15:07:56 | Araq | it's not critical but the code for it already exists |
15:10:28 | Araq | you can also do it if you want to |
15:12:30 | Araq | the 'when false' blocks in semcall.nim proc presentFailedCandidates |
15:12:40 | PMunch | Ah, that should be an easy fix :P |
15:12:48 | PMunch | Why was it in a when false block? |
15:13:10 | Araq | because the compiler then lies about the mismatches, it filters them |
15:13:20 | Araq | so we need a --showAllCandidates switch |
15:13:29 | Araq | and when matches are hidden the compiler should say |
15:13:45 | Araq | "Compile with --showAllCandidates to show all" |
15:14:05 | PMunch | Oh it filters them, hmm |
15:14:13 | PMunch | I'll have to take a look at that |
15:14:17 | Araq | well the filtering is smart |
15:14:20 | PMunch | But yeah that sounds like a good solution |
15:14:21 | Araq | :-) |
15:16:05 | PMunch | Oh well, I'm off work now |
15:16:07 | * | PMunch quit (Quit: Leaving) |
15:18:10 | * | Trustable joined #nim |
15:42:13 | * | floppydh quit (Quit: WeeChat 2.3) |
15:49:39 | shashlick | appveyor is having random issues accessing github repos |
16:02:39 | FromDiscord_ | <treeform> so I have a raw c pointer to a known size memory, what is the best way to convert it to seq[uint8] ? |
16:03:39 | FromDiscord_ | <treeform> is there a way I can set seq's internal pointer to my raw c pointer? |
16:03:49 | FromDiscord_ | <treeform> will that break gc |
16:03:51 | shashlick | why is this not working on OSX? works fine on Linux |
16:03:52 | shashlick | ``` |
16:03:53 | shashlick | export RELEASE=`curl --silent https://api.github.com/repos/nim-lang/nightlies/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/'` |
16:03:54 | shashlick | ``` |
16:09:27 | * | vlad1777d quit (Ping timeout: 252 seconds) |
16:24:09 | Calinou | sed or grep behavior differently? |
16:24:12 | Calinou | behaving* |
16:24:33 | Calinou | (BSD utilities vs GNU utilities) |
16:25:26 | shashlick | works fine on a laptop here but not on travis |
16:26:47 | * | ehmry left #nim (#nim) |
16:27:11 | * | ehmry_ joined #nim |
16:30:33 | * | ehmry_ left #nim (#nim) |
16:31:50 | FromDiscord_ | <🐍 Aareon 🐳> Are all `.nim` files read as UTF-8 when compiled? |
16:32:26 | * | jken joined #nim |
16:33:46 | leorize | iirc that is required by the spec |
16:34:06 | leorize | http://nim-lang.github.io/Nim/manual.html#lexical-analysis-encoding |
16:35:14 | * | Ils joined #nim |
16:59:55 | * | LimeBlack quit (Quit: Leaving.) |
17:04:04 | * | wildlander joined #nim |
17:05:43 | * | theelous3_ joined #nim |
17:10:58 | * | theelous3_ quit (Ping timeout: 272 seconds) |
17:29:01 | * | Ils quit (Ping timeout: 256 seconds) |
17:46:34 | * | theelous3 quit (Ping timeout: 250 seconds) |
17:46:53 | * | Trustable quit (Remote host closed the connection) |
17:48:42 | FromDiscord_ | <🐍 Aareon 🐳> Thank you |
18:01:55 | * | druonysus joined #nim |
18:10:11 | * | rayman22201 joined #nim |
18:35:10 | * | alehander2 joined #nim |
18:37:57 | * | rayman22201 quit (Quit: Page closed) |
18:38:33 | * | rayman22201 joined #nim |
18:39:35 | rayman22201 | Hi everybody! What can we do to fix the gitter bridge? We are lonely over there, and sad because we are missing all the cool stuff like Araq giving tidbits of wisdom about GC's |
18:40:22 | FromDiscord_ | <Shield> when did gitter bridge break? |
18:40:27 | Araq | ah ... |
18:40:59 | rayman22201 | It's been broken for about a day and a half now I think |
19:12:37 | * | PMunch joined #nim |
19:15:21 | FromDiscord_ | <Epictek> rayman22201: make your own gitter bridge in nim? |
19:15:41 | rayman22201 | lol. I prefer not to duplicate work :-P |
19:17:46 | rayman22201 | does anybody know who normally maintains the bridge? |
19:17:49 | FromDiscord_ | <Epictek> It wouldn't be duplicate if it was written in nim since the existing one isn't. So it would already be an improvement |
19:18:16 | FromDiscord_ | <Epictek> Also there are many ways the bridge could be better |
19:18:22 | Araq | oprypin is responsible, I think |
19:18:33 | Araq | +1 for a bridge in Nim |
19:19:04 | * | stefanos82 quit (Quit: Quitting for now...) |
19:19:27 | rayman22201 | Well, I would write my own OS in Nim if I could.... But I have to spend my time doing things that people want to pay me for so I can eat :-P |
19:22:05 | FromDiscord_ | <Epictek> That's fair enough, who was the guy working on an irc to discord bridge in Nim? |
19:22:45 | * | FromGitter joined #nim |
19:22:54 | FromDiscord_ | <Epictek> @Yardanico yo what happened to that bot? |
19:23:19 | * | Vladar quit (Remote host closed the connection) |
19:24:03 | oprypin | sigh. sorry about that. the bridge is back up |
19:24:12 | Araq | oprypin, thanks |
19:25:31 | FromGitter | <rayman22201> Thanks oprypin! |
19:25:39 | FromGitter | <rayman22201> wait, is the bridge back up? |
19:25:40 | FromDiscord_ | <Epictek> oprypin: I'm confused about something, is the discord bridge a separate instance? |
19:25:40 | FromGitter | <rayman22201> Oh I see. there is a slight delay |
19:26:08 | oprypin | Epictek, I only work with IRC and Gitter |
19:26:41 | FromGitter | <rayman22201> oprypin how does the IRC -> Gitter bridge work? |
19:26:42 | * | d10n-work joined #nim |
19:26:43 | FromGitter | <rayman22201> or I should say what lang / where is it hosted? |
19:27:04 | FromDiscord_ | <Epictek> Ohhh, thought all the bridges would be ran by the same person lol |
19:27:13 | FromGitter | <alehander42> oh wow |
19:27:17 | * | dom96_w quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
19:27:17 | FromGitter | <alehander42> alive |
19:27:22 | oprypin | https://github.com/oprypin/critter hosted on my VPS running Arch Linux |
19:28:08 | oprypin | this time i guess it was just that the system update has updated some libs so the executable needed to be recompiled |
19:28:08 | FromGitter | <rayman22201> ah. cool. |
19:28:20 | oprypin | i really just need automatic notifications when the nickname is not in the channel |
19:28:52 | FromDiscord_ | <Epictek> >The irc bot that Nim uses is written in Crystal |
19:28:52 | FromDiscord_ | <Epictek> |
19:28:53 | FromDiscord_ | <Epictek> I don't know how to feel about this 😂 |
19:29:22 | FromGitter | <alehander42> :D :D friendship goals |
19:29:37 | FromGitter | <rayman22201> lol. It is ironic :-D |
19:29:52 | FromGitter | <tim-st> Thanks oprypin, I will post this again to reach the irc'ers: anyone uses the [(K, V)] array constructor `{...}` for other semantics than for table semantics? |
19:30:10 | FromGitter | <alehander42> well i prefer crystal than go |
19:32:59 | FromDiscord_ | <Epictek> Well from what I can tell Nim and Crystal aren't enemies just languages working towards a similar goal in different ways. I personally dislike Ruby syntax being a Python Dev primarily. |
19:32:59 | FromGitter | <tim-st> Araq: when I have an iterator that matches in local scope but also in system.nim, shouldnt it prefer the local sope? |
19:34:28 | FromGitter | <tim-st> (with local scope I meant it's defined in the same file) |
19:47:13 | * | dom96_w joined #nim |
19:47:19 | * | darithorn joined #nim |
19:51:35 | * | dom96_w quit (Remote host closed the connection) |
20:10:34 | * | nsf joined #nim |
20:15:05 | * | zachk joined #nim |
20:19:55 | * | zachk quit (Changing host) |
20:19:55 | * | zachk joined #nim |
20:21:12 | * | krux02 quit (Remote host closed the connection) |
20:25:11 | * | abm joined #nim |
20:28:49 | shashlick | Araq: looks like c2nim is broken |
20:39:34 | * | darithorn quit () |
20:40:12 | xace | https://pastebin.com/raw/bNb24v71 # on the last line compiler complains about type mismatch anyone care to explain what I'm doing wrong? |
20:42:51 | Araq | tim-st: that is indeed the case but it's likely that the system one matches better than yours :P |
20:42:58 | Araq | shashlick, how so? |
20:55:45 | shashlick | well, i don't think it is c2nim |
20:56:03 | shashlick | https://github.com/nim-lang/c2nim/commit/be3e8b9ab81c25cc0cb10b1ae117da57f71560e3 <= this PR now breaks nim7z |
20:56:16 | shashlick | it compiles fine on Windows but not on Linux |
20:56:16 | FromGitter | <tim-st> Araq: should I open an issue for it? |
20:57:40 | FromGitter | <tim-st> btw we discussed yesterday on gitter that compiling c files with `nim cpp` freezes on windows, is that known already? |
20:58:00 | FromGitter | <tim-st> or should this work at all? |
20:58:07 | shashlick | Araq: yep - now that c2nim adds "struct X" in importC, the generated C code doesn't compile anymore |
20:58:42 | * | Aareon_ quit (Ping timeout: 264 seconds) |
20:59:58 | shashlick | ok, i need to figure out what is causing the compile error |
21:00:29 | shashlick | ``` |
21:00:30 | shashlick | nim7z_svnz.c:88:43: error: invalid application of ?sizeof? to incomplete type ?struct CSzArEx? |
21:00:31 | shashlick | NTI_vvTAOkpiEyWSoVYOQj1z3A_.size = sizeof(struct CSzArEx); |
21:00:33 | shashlick | ``` |
21:08:04 | * | FromGitter quit (Remote host closed the connection) |
21:09:45 | * | alehander2 quit (Quit: Page closed) |
21:10:52 | dom96 | oprypin: FromGitter gone :/ |
21:11:25 | * | nsf quit (Quit: WeeChat 2.2) |
21:14:38 | * | nsf joined #nim |
21:15:39 | xace | https://pastebin.com/raw/bNb24v71 # Jesus christ, could someone explain what I did wrong? the line where i type `var server = newServer` required () like so: `var server = newServer()` otherwise it wouldn't compile. I thought nim allowed paranthesis to be omitted. Is there something I should know? |
21:18:24 | PMunch | What was the syntax to pass two blocks of code to a template? I'm creating a template that is an if block and now I want to need an else block. |
21:19:27 | * | FromGitter joined #nim |
21:20:47 | xace | My best guess in `var server = newServer` vs `var server = newServer()` is that without the parentheses the var server stores the proc newServer, while the () calls the actual newServer() and gets assigned its returned value... Could someone who knows better confirm? |
21:21:48 | FromGitter | <zacharycarter> anyone looking for someone to work with for the gameoff Jam? |
21:22:01 | PMunch | gameoff jam? |
21:22:02 | FromGitter | <zetashift> I'm not sure if I should enter with Nim :( |
21:22:19 | PMunch | I entered a gamejam with Nim earlier this year |
21:22:19 | FromGitter | <zacharycarter> it's a gamejam by google I think? https://itch.io/jam/game-off-2018 |
21:22:22 | PMunch | Was a lot of fun |
21:22:37 | * | Aareon_ joined #nim |
21:22:38 | FromGitter | <zacharycarter> sorry - github |
21:23:10 | FromGitter | <zacharycarter> I kind of have an idea - but I'd like to bounce it off someone and maybe collaborate |
21:23:12 | PMunch | Oooh hybrid, cool theme |
21:23:12 | FromGitter | <zacharycarter> if no one is interested though - I'll just try to put together something myself |
21:23:29 | Araq | xace, that's widely documented behaviour |
21:24:22 | xace | Araq: im still learning the language and haven't encountered this documentation yet. any hints on where I can read about it? |
21:24:51 | PMunch | What do you plan on writing it in zacharycarter? When I jammed I used my gamelib to try it out |
21:24:53 | xace | i've read the tutorial part1, some skimming through the manual and checking peoples code on github, currently checking out nim in action |
21:25:05 | Araq | https://nim-lang.org/docs/manual.html#procedures-command-invocation-syntax |
21:25:13 | Araq | "Function calls with no arguments still needs () to distinguish between a call and the function itself as a first class value." |
21:26:03 | xace | Interesting, thank you, this helps a lot :-) |
21:26:27 | FromGitter | <iffy> Is there a programmatic way to find `nimbase.h` on the filesystem? |
21:26:36 | FromGitter | <iffy> using nim, I mean :) |
21:27:08 | FromGitter | <zacharycarter> PMunch: good question - i'd like to use Nim but as far as what libraries or engine I use - I guess it'd depend on what the art style is |
21:27:16 | FromGitter | <zacharycarter> I'm thinking about using godot + gdnative and going 3d |
21:27:32 | FromGitter | <zacharycarter> but my idea might be a bit too ridiculous |
21:27:34 | PMunch | Oh cool, I've been meaning to try Godot with Nim |
21:27:35 | FromGitter | <zacharycarter> I don't think so though |
21:27:59 | Araq | xace, to be fair though, the tut1 needs some serious rework or we need a cheat sheet |
21:27:59 | FromGitter | <zacharycarter> well PM me if you want to discuss |
21:28:06 | PMunch | Not a huge fan of the whole integrated editor thing that is common with Unity and Godot, but I'd still like to try it |
21:28:06 | FromGitter | <zacharycarter> oh you're on irc shoot |
21:28:15 | PMunch | I have a Gitter account as well :) |
21:28:16 | FromGitter | <tim-st> @iffy maybe not best but you could call `nim dump` and take last line |
21:28:26 | FromGitter | <zacharycarter> ah - sweet! |
21:28:33 | Araq | I used to have a the syntax on 2 slides and then you can read Nim code |
21:28:52 | PMunch | And I don't think any idea is too ridiculous for a game jam |
21:28:53 | FromGitter | <iffy> @tim-st it's something; better than guessing |
21:29:45 | PMunch | First jam I was on had a morph theme, and someone created a game where you played as the land-dwelling Steven Seagal morphing into the airborne Steven Seagull |
21:31:54 | FromGitter | <tim-st> @iffy or better iterate over the list and look for the file without recursive |
21:32:25 | xace | Araq: Yeah, i noticed part 2 mentioning that the tutorials may be outdated, nevertheless tut1 got me interested. The language has many traits that I like and I hope to make it my new "main" goto programming language, infact hoping to get involved in developing nim once i get more used to the environment of nim |
21:33:45 | PMunch | xace, I think you'll like what you find |
21:33:46 | FromGitter | <tim-st> Araq: would you allow a subset of table procs used with kv array gotten by `{...}` like `var y = {"a": 1, "b": 2}; doAssert y["a"] == 1` ? |
21:34:01 | PMunch | The docs might be a bit rough around the edges from time to time, but the language is great |
21:34:50 | xace | PMunch: yeah, but its so simple to look things up, just clicking the source button brings me to very simple code |
21:35:22 | Araq | oh yay somebody uses these :-) |
21:35:29 | PMunch | Oh yeah, I use them all the time :) |
21:36:55 | * | darithorn joined #nim |
21:39:14 | dom96 | xace: You don't need parenthesis when the context isn't ambiguous |
21:41:36 | * | theelous3_ joined #nim |
21:44:21 | * | FromGitter quit (Remote host closed the connection) |
21:44:39 | * | FromGitter joined #nim |
21:46:36 | xace | dom96: yeah. im still wrapping my head around the language. but i think that for my personal [rpjects ill avoid command invocation in expressions |
21:47:26 | shashlick | Araq: so it fails on windows and linux, although I'm not sure how the "struct X" is causing a sizeof failure |
21:47:36 | Araq | usually that feeling passes by quickly |
21:47:58 | Araq | and laziness wins over () |
21:48:19 | oprypin | @rayman22201, you know what? thanks for bringing up that delay because there really was a horrible delay -- each message would appear only after another message was sent |
21:48:29 | shashlick | for example, CLookToRead2 is a `typedef struct` converted to type object by c2nim with importc "struct X" |
21:48:39 | * | dddddd joined #nim |
21:49:01 | Araq | shashlick, I think we have to revert this change and only do it with --barbaricStructs:on |
21:49:15 | shashlick | when compiled, generated C code has sizeof(struct CLookToRead2) which results in ``` |
21:49:17 | shashlick | invalid application of ?sizeof? to incomplete type ?struct CLookToRead2? |
21:49:18 | shashlick | NTI_Bg4HPUgE9a1cNEhvU2DjizA_.size = sizeof(struct CLookToRead2); |
21:49:19 | shashlick | ``` |
21:49:21 | xace | haha, yeah. atm the language is occupying an unhealthy amount of my mental thoughts, but i like it |
21:49:39 | shashlick | well, so c2nim generates the correct thing but nim compiles it wrong |
21:49:50 | shashlick | and this fails with 0.18.0 and 0.19.0, and devel |
21:50:44 | FromGitter | <rayman22201> np @oprypin Excuse to rewrite it nim? :-P |
21:50:45 | FromGitter | <zetashift> @zacharycarter @PMunch I could hop on to the gdnative Nim as I'm currently writing some code in it! |
21:51:36 | oprypin | rayman22201, well i fixed it anyway. but nah, never again - not touching IRC with a ten foot pole |
21:51:37 | * | nsf quit (Quit: WeeChat 2.3) |
21:51:47 | PMunch | Oh cool, got more knowledge than me then :P |
21:51:54 | PMunch | zetashift ^ |
21:52:24 | FromGitter | <rayman22201> lol. I don't blame you. Glad you fixed the bug though |
21:52:24 | FromGitter | <zetashift> well it's mostly GDScript 1:1 in Nim, trying to make more code nim-ish |
21:53:14 | PMunch | Well I've never even used GDScript |
21:54:13 | FromGitter | <zacharycarter> @zetashift - I have my idea now |
21:54:24 | FromGitter | <zacharycarter> if anyone is curious - I'll share - would love feedback |
21:55:58 | shashlick | Araq: I'm going to lock nimgen to a specific c2nim #, hopefully that should be enough |
21:56:11 | FromGitter | <zetashift> @PMunch it's python with some different keywords |
21:56:33 | FromGitter | <iffy> If I'm getting ⏎ ⏎ ``` "_NimMain", referenced from:``` ⏎ ⏎ what include directory do I need to add? This is for obj-c [https://gitter.im/nim-lang/Nim?at=5bdcc8115905a9195544fae8] |
21:56:41 | FromGitter | <zetashift> @zacharycarter love to hear it, in a PM or maybe in the offtopic channel? |
21:56:58 | FromGitter | <zacharycarter> good idea - will share in OT |
21:57:47 | dom96 | oprypin: IRC? Is Gitter not the problem here? |
21:59:04 | FromDiscord_ | <Shield> what is it with Nim and IRC? |
21:59:48 | oprypin | dom96, this time it's actually Crystal's fault but IRC is generally scary to handle, that was the previous problem I ran into |
22:00:11 | Araq | shashlick, nah, I didn't like this change |
22:00:18 | Araq | we should revert it |
22:00:19 | FromDiscord_ | <Shield> and gdnative with Nim is only worth it if you want to write critical code, not worth it otherwise, gdscript is really close to nim (pythonic, can inherite one type..) |
22:00:21 | dom96 | oprypin: What specific part about it was scary? |
22:00:40 | oprypin | well, for one, to make it work I added `sleep 10` |
22:00:57 | oprypin | before sending privmsg nickserv for authentication |
22:01:12 | dom96 | There is a specific numeric you need to wait for |
22:01:14 | oprypin | otherwise it doesnt work. i guess i'm supposed to listen to what the server is saying |
22:02:20 | dom96 | I hate to brag but NimBot has been running (fairly) solidly for the past 5 years |
22:04:06 | PMunch | Shield, what do you have against IRC? |
22:04:44 | FromDiscord_ | <Shield> Nim with gdscript had some annoying quirks like you can't modify a vector field without assigning a new vector, it's the same case with most godot types, and the crash message won't tell you that vec.x = 10 isn't allowed |
22:06:58 | FromDiscord_ | <Shield> I was asking oprypin why he's not touching IRC code and I thought he tried to made it in Nim and that's why he switched to Crystal |
22:07:24 | shashlick | Araq: hold off |
22:07:37 | shashlick | i don't think it is that specific change, let me do some testing and complain more concretely |
22:07:47 | shashlick | i'm testing each commit to verify |
22:10:57 | shashlick | Araq: this specific commit breaks me - https://github.com/nim-lang/c2nim/commit/be3e8b9ab81c25cc0cb10b1ae117da57f71560e3 |
22:11:02 | shashlick | not the struct one |
22:11:20 | shashlick | ugh - that is the struct one 😐 |
22:13:13 | shashlick | ok - so ya, it is breaking the sizeof() - i'm not sure how |
22:16:58 | * | citycide quit (Ping timeout: 250 seconds) |
22:19:17 | PMunch | Well shit |
22:19:38 | PMunch | So the SublimeText LSP plugin appears to not follow the spec properly.. |
22:20:02 | PMunch | Which means it doesn't verify properly |
22:31:32 | * | darithorn quit () |
22:32:29 | FromDiscord_ | <Epictek> don't bother with sublime for now then? |
22:32:48 | FromDiscord_ | <Epictek> They should fix the plugin, you shouldn't have to workaround it |
22:33:24 | PMunch | It's what I was using to debug it though.. |
22:39:38 | PMunch | I guess I could add a lax mode to the JSON verifier |
22:39:52 | PMunch | Which allows other fields |
22:43:33 | * | cozachk joined #nim |
22:45:27 | * | zachk quit (Ping timeout: 252 seconds) |
22:52:47 | FromGitter | <zetashift> @Shield huh? you can set the x, y's from fields of types and vectors |
22:53:24 | FromGitter | <zetashift> e.g. `var foo = vec2()` and then `foo.x = 23.3993929292` |
22:54:27 | FromGitter | <zetashift> https://pragmagic.github.io/godot-nim/v0.5.0/vector2.html#=,Vector2,float32 |
23:00:23 | * | vlad1777d joined #nim |
23:01:27 | * | rayman22201 left #nim (#nim) |
23:15:37 | * | gmpreussner quit (Quit: kthxbye) |
23:15:57 | * | gmpreussner joined #nim |
23:18:03 | * | PMunch quit (Excess Flood) |
23:18:16 | * | cozachk quit (Quit: Leaving) |
23:18:33 | * | kapil____ quit (Quit: Connection closed for inactivity) |
23:18:34 | * | PMunch joined #nim |
23:18:47 | * | zachk joined #nim |
23:18:48 | PMunch | Okay, seems to have the LSP interface under control. Now to make a nimsuggest interface so I can map the two together |
23:18:55 | * | zachk quit (Changing host) |
23:18:56 | * | zachk joined #nim |
23:21:12 | PMunch | Time to actually learn how to use nimsuggest I guess :P |
23:25:37 | FromDiscord_ | <hollywoo> What can you all recommend in the way of a simple 2d game library for Nim? I just want to make a text-based RPG, really, but I'd like to be able to have sprites for the edges of frames, and include sound and music and things changing colors, so it seems like the easy thing to do is still to use a library. |
23:26:13 | FromDiscord_ | <Shield> @zetashift I meant the fields of position, which is a field of node2D, you can't do position.x = ..., you have to do position = vec2(..,position.y) |
23:28:47 | * | narimiran quit (Ping timeout: 240 seconds) |
23:29:15 | PMunch | hollywoo, I've used SDL with my SDLGamelib project |
23:29:30 | PMunch | Should have all you need and more :) |
23:30:05 | FromDiscord_ | <hollywoo> Cool. Now to go figure out how to set it up. |
23:30:08 | FromDiscord_ | <hollywoo> Thanks! |
23:31:46 | PMunch | Well, it should be pretty simple |
23:33:25 | PMunch | http://ix.io/1qMH/Nim |
23:33:37 | PMunch | A little sample from a test of the collisions system I made |
23:34:07 | FromDiscord_ | <hollywoo> Thanks! |
23:39:38 | FromGitter | <skellock> pmunch: nice favicon |
23:39:42 | FromGitter | <tim-st> can someone confirm that c code used with nim should work with `nim cpp`? |
23:39:47 | PMunch | Huh? |
23:39:57 | PMunch | Oh yeah, ix.io's favicon.. |
23:40:12 | PMunch | One of the few things about that site I don't like |
23:46:57 | FromGitter | <zetashift> @Shield oh yeah that could be annoying |
23:48:32 | FromDiscord_ | <hollywoo> So, I can compile programs from within VS Code, but Windows Powershell doesn't recognize nim as a command. I know it has to do with the path, but I don't actually know how to fix it. |
23:48:37 | FromDiscord_ | <hollywoo> I'm also not sure how to use nimble. |
23:49:08 | PMunch | If you get it in your path it's as easy as "nimble install <package>" |
23:49:10 | dom96 | Google "how to add directories to PATH" |
23:49:20 | dom96 | and add wherever nim.exe is |
23:49:26 | dom96 | and wherever nimble.exe is |
23:49:36 | FromDiscord_ | <hollywoo> Thanks! |
23:50:04 | PMunch | dom96, is there a minimal sample on how to work with nimsuggest? |
23:50:22 | FromGitter | <zetashift> @Shield I think that's a limit of the GDNative binding though one could add a position.x setter to the Node2D class no? |
23:50:32 | * | zachk quit (Read error: Connection reset by peer) |
23:51:02 | * | vhotsyk joined #nim |
23:51:05 | * | zachk joined #nim |
23:51:24 | dom96 | Btw, to all of you using Nim with GoDot etc. note down your gripes with its Nim support |
23:51:40 | dom96 | Share it with us so we can fix it, or better yet so you can fix it in the future ;) |
23:52:27 | * | fyber quit (Quit: Ping timeout (120 seconds)) |
23:53:00 | * | fyber joined #nim |
23:53:10 | PMunch | I'm trying to open a socket to "localhost", 6000. But I get connection refused.. |
23:54:03 | dom96 | then a server isn't running on that port |
23:54:44 | PMunch | Yeah, got that much.. |
23:55:02 | PMunch | Oh, so if I call nimsuggest with --address:localhost it starts the server |