<< 07-02-2020 >>

00:02:07*acidx quit (Ping timeout: 240 seconds)
00:08:41*acidx joined #nim
00:14:49*krux02 joined #nim
00:15:09*Kaivo quit (Quit: WeeChat 2.7)
00:23:21*icebattle quit (Ping timeout: 265 seconds)
00:27:24*Hideki_ joined #nim
00:27:25*Hideki_ quit (Remote host closed the connection)
00:27:59*Hideki_ joined #nim
00:30:46*acidx quit (Ping timeout: 256 seconds)
00:32:07*krux02 quit (Remote host closed the connection)
00:35:11*Hideki_ quit (Ping timeout: 272 seconds)
00:45:57*dadada quit (Ping timeout: 272 seconds)
00:47:24*dadada joined #nim
00:47:48*dadada is now known as Guest41651
00:49:41*acidx_ joined #nim
00:51:55*acidx_ is now known as acidx
00:52:00*acidx quit (Changing host)
00:52:00*acidx joined #nim
00:52:26*acidx is now known as acidx_
00:53:58*Hideki_ joined #nim
00:55:08*Hideki_ quit (Remote host closed the connection)
01:01:26*acidx_ quit (Remote host closed the connection)
01:01:47*Guest41651 quit (Ping timeout: 272 seconds)
01:02:19*dadada_ joined #nim
01:06:31*endragor joined #nim
01:07:01*acidx joined #nim
01:07:14leorize[m]shashlick whatever caused those task failures
01:07:23leorize[m]tests*
01:08:02leorize[m]I tried on my machine and managed to reproduce those errors
01:08:15leorize[m]nim devel is not affected because they use stable nimble
01:14:23shashlickOk I'll also take a look
01:16:59*dadada_ quit (Ping timeout: 272 seconds)
01:17:24*dadada_ joined #nim
01:31:30*dadada_ quit (Ping timeout: 265 seconds)
01:32:19*dadada joined #nim
01:32:42*dadada is now known as Guest32534
01:39:43*disrupteq quit (Ping timeout: 265 seconds)
01:45:45*willowthewhisper joined #nim
01:46:15*willowthewhisper left #nim ("https://quassel-irc.org - Chat comfortably. Anywhere.")
01:46:45*Guest32534 quit (Ping timeout: 272 seconds)
01:47:22*dadada_ joined #nim
01:52:38*xet7 quit (Remote host closed the connection)
01:54:05*xet7 joined #nim
02:00:55*dadada_ quit (Ping timeout: 260 seconds)
02:02:20*dadada_ joined #nim
02:07:46*lritter quit (Quit: Leaving)
02:07:59*Tongir joined #nim
02:08:53*dddddd quit (Read error: Connection reset by peer)
02:14:52*icebattle joined #nim
02:15:38*dadada_ quit (Ping timeout: 240 seconds)
02:16:14*disrupteq joined #nim
02:17:23*dadada_ joined #nim
02:19:50*icebattle quit (Ping timeout: 265 seconds)
02:27:03*chemist69 quit (Ping timeout: 246 seconds)
02:29:12*chemist69 joined #nim
02:30:57*dadada_ quit (Ping timeout: 265 seconds)
02:32:14*dadada joined #nim
02:32:37*dadada is now known as Guest60771
02:34:36*yewpad joined #nim
02:36:56*Zectbumo joined #nim
02:42:09*yewpad quit (Quit: Leaving)
02:43:24leorizeshashlick: so, can I clean this up by just making it take a nimble file instead? https://github.com/nim-lang/nimble/pull/768#discussion_r376185622
02:43:25disbot_nimscript{wrapper,api}: don't copy generated script to package directory
02:44:06leorizeactually, maybe not
02:46:02*Guest60771 quit (Ping timeout: 240 seconds)
02:47:22*dadada_ joined #nim
02:56:13leorizehmm, how should assertions be used?
02:56:53disruptekas functional documentation.
02:57:21leorizebut they are disabled on runtime so it's hard to be sure that those conditions actually hit on the unpredictable runtime
02:57:35disruptekthey are disabled in release, sure.
02:58:00leorizeif you compile the compiler with -d:release (which have assertions on btw), sometimes you will see the compiler crash due to them :P
02:58:18disrupteknice.
03:00:39*dadada_ quit (Ping timeout: 260 seconds)
03:01:06yumaikasSo, is there such a thing as a cross platform newline function/constant in Nim, or am I just supposed to roll my own?
03:01:30disrupteki've seen at least one in stdlib.
03:02:15leorizeyumaikas: '\p'
03:02:19*dadada_ joined #nim
03:02:21leorize"\p" to be exact
03:02:25leorizesince it can be a string
03:04:14leorize/githubcom_nitelynimregex_0.10.0/regex_18144.nims(12, 1) Error: 'srcdir' should be: 'srcDir'
03:04:30leorizethat one line alone broke a decent amount of packages :P
03:05:22leorizeshashlick: check this test result out instead: https://dev.azure.com/alaviss/Nim/_build/results?buildId=282&view=ms.vss-test-web.build-test-results-tab
03:05:34leorizeI bumped the hash to the same one as in your pr
03:05:45leorizenow the compiler crashes less so we got more results
03:06:54*disbot_ is now known as disbot
03:07:32disruptek!searches srcdir
03:07:33disbothttps://github.com/nitely/nim-regex/issues/55 -- 3error installation `Error: 'srcdir' should be: 'srcDir'`
03:07:33disbothttps://github.com/nim-lang/nimble/issues/747 -- 3Cant install certain hybrid packages
03:07:33disbothttps://github.com/nimterop/nimterop/issues/137 -- 3Issues with nested structs 7& 27 more...
03:15:27*ptdel quit (Ping timeout: 260 seconds)
03:16:41*dadada_ quit (Ping timeout: 272 seconds)
03:17:19*dadada_ joined #nim
03:22:27*ptdel joined #nim
03:31:53*dadada_ quit (Ping timeout: 272 seconds)
03:32:19*dadada joined #nim
03:32:42*dadada is now known as Guest83171
03:32:51*muffindrake quit (Ping timeout: 246 seconds)
03:35:10*muffindrake joined #nim
03:38:43*ftsf joined #nim
03:43:02*NimBot joined #nim
03:46:16*Guest83171 quit (Ping timeout: 256 seconds)
03:46:27*a_chou joined #nim
03:46:27*a_chou quit (Client Quit)
03:46:51*a_chou joined #nim
03:47:09*a_chou quit (Client Quit)
03:47:24*dadada_ joined #nim
03:52:40*adalricus joined #nim
04:01:39*dadada_ quit (Ping timeout: 272 seconds)
04:02:27*dadada_ joined #nim
04:11:55*Zectbumo quit (Remote host closed the connection)
04:12:02*cgfuh quit (Quit: WeeChat 2.6)
04:14:04ftsf@Araq, good talk! exciting stuff!
04:16:15*dadada_ quit (Ping timeout: 260 seconds)
04:17:19*dadada_ joined #nim
04:19:42leorizelooks like chronos is broken on devel due to the csize_t change
04:27:31ftsfhttps://play.nim-lang.org/#ix=2aXu any idea why `findObjectByName` has side effects?
04:30:38FromGitter<Varriount> ftsf: It references a global variable
04:31:02*dadada_ quit (Ping timeout: 256 seconds)
04:31:34ftsfahh and referencing a global variable is a side effect even if it doesn't change it?
04:31:57FromGitter<Varriount> Yes
04:32:09ftsfok, i see! "This means that the proc/iterator only changes locations that are reachable from its parameters and the return value only depends on the arguments"
04:32:19*dadada joined #nim
04:32:30FromGitter<Varriount> Yeah. That should probably be placed somewhere higher up in the documentation
04:32:43*dadada is now known as Guest3950
04:33:08ftsfhmm i think the error message should probably be a bit more informative, since "side effect" has a very specific, non-intuitive meaning
04:33:17FromGitter<Varriount> "For the purposes of this manual, a function without side effects is defined as..."
04:33:19ftsfI guess it makes sense for people who are used to functional programming
04:33:48FromGitter<Varriount> ftsf: It's also relatively simple to implement, compared to more advanced forms of side-effect analysis
04:34:18ftsfError: 'findObjectByName' can have side effects: global variable "objectPalette" referenced
04:34:21ftsfwould be awesome
04:38:20shashlickleorize: replied in the issue - will take a look at nimble bugs tomorrow
04:45:46*Guest3950 quit (Ping timeout: 256 seconds)
04:47:17*dadada_ joined #nim
04:50:21yumaikasAs a random question: Does anyone here have experience writing programs that produce columnar output in a terminal?
04:51:21*nsf joined #nim
05:00:35*dadada_ quit (Ping timeout: 260 seconds)
05:02:19*dadada_ joined #nim
05:08:41*Zectbumo_ joined #nim
05:14:20*Zectbumo_ quit (Excess Flood)
05:14:39*Zectbumo joined #nim
05:15:48*dadada_ quit (Ping timeout: 256 seconds)
05:17:20*dadada_ joined #nim
05:19:02FromGitter<timotheecour> compiler/asciitables
05:26:20yumaikasHrm... Not a bad idea. I suppose I'm trying to figure out how ls does it's columnar output
05:26:51FromGitter<kaushalmodi> yumaikas: https://github.com/xmonader/nim-terminaltables
05:27:08yumaikas(not ls -la, but ls -C)
05:27:26FromGitter<kaushalmodi> yumaikas: May be https://github.com/c-blake/lc ?
05:28:31yumaikasUnfortunately, that doesn't work on windows
05:31:43*dadada_ quit (Ping timeout: 265 seconds)
05:32:21*dadada joined #nim
05:32:44*dadada is now known as Guest80256
05:36:40*Lord_Nightmare quit (Quit: ZNC - http://znc.in)
05:37:18*Lord_Nightmare joined #nim
05:46:02*Guest80256 quit (Ping timeout: 240 seconds)
05:47:19*dadada_ joined #nim
06:01:21*dadada_ quit (Ping timeout: 272 seconds)
06:02:19*dadada_ joined #nim
06:08:09*rockcavera quit (Remote host closed the connection)
06:14:43FromDiscord_<Elegant Beef> What aboot https://github.com/johnnovak/illwill?
06:14:44FromDiscord_<Elegant Beef> What aboot https://github.com/johnnovak/illwill ?
06:15:52*dadada_ quit (Ping timeout: 256 seconds)
06:15:56FromDiscord_<Elegant Beef> I guess those automate the process
06:17:18*dadada_ joined #nim
06:20:26*ptdel quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
06:22:12yumaikasWe'll, what I'm trying to emulate is how ls lists files names (and just the names) in a multi-column layout when it has enough space for that
06:22:17yumaikas*well
06:22:56yumaikasSo, it's not spitting out *a* table, it's spitting out *that* table that I don't quite know how to do yet
06:25:15*theelous3 quit (Ping timeout: 240 seconds)
06:30:31*oculux joined #nim
06:30:47*dadada_ quit (Ping timeout: 240 seconds)
06:32:24*dadada joined #nim
06:32:47*dadada is now known as Guest71415
06:33:30FromDiscord_<Elegant Beef> Do you already have a table collection?
06:33:43FromDiscord_<Elegant Beef> Or an object to hold all your data
06:36:10*narimiran joined #nim
06:38:05yumaikasWhat I am trying to tabulate is a list of filesystem entry names that doesn't have an inherent table structure. It's just a seq
06:39:16yumaikasThe easy/obvious but less pretty way is to alignLeft all of the entries
06:39:35yumaikasBased in reading out terminalWidth
06:39:51FromDiscord_<Elegant Beef> Well you can align right assuming you have a max width
06:41:16yumaikasls does a left align
06:42:35yumaikasBut to get some basic space savings, it's better if you compute that max-width per-column
06:43:14yumaikasBut you have to distribute the data into columns first, and/or do that over a number of potential layouts
06:44:02yumaikasUnless there's some mathemagic I'm not away of for finding the right number of columns for displaying a list like that
06:47:56yumaikasIdk. It's obvious what the target output is, but getting there is harder, and for some reason, reading the coreutils C source for ls didn't help me understand how they do it much better
06:48:40FromDiscord_<Elegant Beef> I think it's mostly trial and error, but i could be wrong
07:02:41lqdev[m]yumaikas: I think they just calculate the max column width overall, I've never seen column widths vary in ls
07:03:22lqdev[m]var w = 0; for name in files: if w < name.len: w = name.len
07:12:30FromDiscord_<Elegant Beef> or you can cut the name and ad an elipis
07:12:48FromDiscord_<Elegant Beef> or you can cut the name and add an elipis
07:26:12*adalricus quit (Remote host closed the connection)
07:44:12*adalricus joined #nim
07:47:24*solitudesf- joined #nim
07:53:50*PMunch_ is now known as PMunch
07:54:41*Zectbumo quit (Read error: Connection reset by peer)
07:54:59*Zectbumo joined #nim
08:00:00*gmpreussner quit (Quit: kthxbye)
08:00:02*solitudesf- quit (Quit: Leaving)
08:00:23*solitudesf joined #nim
08:00:47FromDiscord_<highDevGuy> I moved my code to a linux server and when I compile + run I instantly get this error. I have no problem compiling and running it on my win10 machine though. Looks like some permission problem but I have no clue how to debug it because servers and linux are really not something I'm familiar with :/
08:00:47FromDiscord_<highDevGuy> https://cdn.discordapp.com/attachments/371759389889003532/675249583533588480/nim_jester_error.jpg
08:02:45nisstyrehighDevGuy: you can't bind to port 80 without root
08:03:05nisstyreand you probably should not anyway, it's better to proxy through nginx to localhost:8080 or whatever
08:03:45nisstyreand you'll want to use a process manager like systemd to launch it too
08:03:55nisstyreor run it in docker and then use docker to run it
08:04:16FromDiscord_<highDevGuy> thank you... I'll check it out now
08:04:56nisstyreif you need help writing a systemd unit file, there is lots of info here https://wiki.archlinux.org/index.php/Systemd#Writing_unit_files
08:05:07*gmpreussner joined #nim
08:05:11nisstyremight vary depending on your distro (I'm guessing Ubuntu or Debian)
08:05:36nisstyrethe examples are probably where you want to look first
08:06:52nisstyretbh you'd probably be better off using something like PM2 or supervisord
08:07:04nisstyreit's simpler if you're not experienced at Linux administration
08:12:27*gmpreussner quit (Ping timeout: 272 seconds)
08:12:29FromDiscord_<highDevGuy> yes, I'm as lost as one can be 😄 Got a free docker with CentOS so I'm using that. I have zero sys-admin skills but I'll figure it out... eventually
08:14:10FromDiscord_<highDevGuy> btw, I've changed the port to 420 (I know) but still get exactly the same error
08:14:37FromDiscord_<highDevGuy> btw, I've changed the port to 420 but still get exactly the same error
08:18:16*Guest71415 quit (Ping timeout: 256 seconds)
08:19:43*dadada joined #nim
08:20:07*dadada is now known as Guest1119
08:24:01*hax-scramper quit (Read error: Connection reset by peer)
08:26:09*hax-scramper joined #nim
08:27:27*couven92 joined #nim
08:32:50FromDiscord_<Solitude> ports under <1000 require root
08:34:10*couven92 quit (Read error: Connection reset by peer)
08:34:49FromDiscord_<highDevGuy> that did it! thank you
08:41:47PMunchHmm, I really wish there was an easier way to import a C type from a complex project..
08:42:20PMunchI'm sitting here writing printf("sometype: %d", sizeof(sometype)); statements to try and figure out where my wrapping went wrong..
08:43:35*Vladar joined #nim
08:44:34AraqPMunch, don't we have c2nim for that?
08:45:31PMunchI tried for days to get c2nim to work on this project
08:46:36PMunchBut to no avail, it wasn't able to handle the weird way it defines types
08:48:47*hax-scramper quit (Ping timeout: 240 seconds)
08:50:04*hax-scramper joined #nim
08:52:41*hax-scramper quit (Client Quit)
08:52:58*hax-scramper joined #nim
08:54:08PMunchHmm, my Nim object comes out 4 bytes smaller than the C struct. But if I create new types for each of the fields they all report the same size. So the C struct aligns differently in memory than the Nim object.
09:00:15FromDiscord_<exelotl> What does the original nim object look like?
09:03:19*Mister_Magister is now known as Mister_Magister_
09:03:27*Mister_Magister_ is now known as Mister_Magister
09:04:17*crem quit (Ping timeout: 260 seconds)
09:04:39*hax-scramper quit (Ping timeout: 260 seconds)
09:05:05*Guest1119 is now known as dadada
09:05:24*hax-scramper joined #nim
09:05:24*crem joined #nim
09:07:09*floppydh joined #nim
09:07:28ZevvPMunch: nonsense.
09:08:00ZevvI assume you looked at the generated C struct definition in your nim C output
09:08:28PMunchThat's about the only thing I haven't done yet
09:08:39Zevvfirst thing you should do :)
09:08:47PMunchhttp://ix.io/2aXZ/nim
09:09:37Zevvdon't knwo what c source you are trying to match, but array[20, byte] will not force alignment
09:09:42PMunchhttp://ix.io/2aY0/c
09:09:44Zevvbut in6_pktinfo will
09:09:55PMunchThat's what the C and Nim types look like
09:10:13PMunchAll those sub-types have the same sizes, but the combined C type is 4 bytes bigger than the C one
09:10:22ZevvI say pktinfo is the culprit
09:10:43PMunchYeah that seems likely, as it's the only thing that is different
09:11:15Zevvbyte arrays do not need to be aligned, so it is likely that pktinfo is tucked nicely straight to after srctype
09:11:21Zevvbut the structs in c get aligned
09:11:26Zevvoffsetof() is your friend also
09:11:49PMunchOh right, completely forgot offsetof!
09:20:12PMunchHuh, it wasn't pktinfo
09:21:04Zevvno way
09:21:21PMunchThe second field (after the struct comm_point* c) has offset 8 in the C code, but offset 4 in the Nim code..
09:22:37ZevvWhat is Sockaddr_storage in nim then?
09:22:56PMunchAn object
09:23:04Zevvwell, the fun you have
09:23:28PMunchhttp://ix.io/2aY2/nim
09:23:55PMunchBased on this type: https://docs.microsoft.com/en-us/previous-versions/windows/desktop/legacy/ms740504(v%3Dvs.85)
09:24:02Zevvyeaah nice.
09:24:15Zevvbut it should get the type from the libc headers instead
09:24:35Zevvotherwise you can never guerantee things like, say, packing, for example
09:24:44PMunchAha
09:26:35PMunchIs there importc for C types?
09:27:51FromDiscord_<exelotl> Yeah
09:29:28FromDiscord_<exelotl> PMunch: you might find some examples in https://github.com/exelotl/natu/blob/master/natu/private/types.nim
09:32:02PMunchAh sweet
09:32:04PMunchThanks
09:35:23Zevvbut really, Sockaddr_storage in the stdlib should be fixed then
09:35:55PMunchThis isn't from the stdlib
09:36:05Zevvah it's from the pmunchlib!
09:38:06*Zectbumo quit (Remote host closed the connection)
09:48:54PMunchHmm.. The `nativesockets` module doesn't expose `InAddr` or `In6Addr`
09:51:46PMunchAh.. http://ix.io/2aYa
09:52:37PMunchRelated to this: https://github.com/nim-lang/Nim/pull/12655
09:52:41disbotFix issue with fields trying to use wrong name ; snippet at 12https://play.nim-lang.org/#ix=2aYc
09:53:44*WilhelmV1nWeiner quit (Remote host closed the connection)
09:53:58*WilhelmVonWeiner joined #nim
09:53:58*WilhelmVonWeiner quit (Client Quit)
09:54:13*WilhelmVonWeiner joined #nim
10:08:51federico3ah we are building on builds.sr.ht as well
10:16:16Araqfederico3, yup. BSD is supported well these days :-)
10:20:43*endragor quit (Remote host closed the connection)
10:26:50*lqdev[m] quit (Quit: killed)
10:27:01*vycb[m] quit (Quit: killed)
10:27:07*BitPuffin quit (Quit: killed)
10:27:10*unclechu quit (Quit: killed)
10:27:13*skrylar[m] quit (Quit: killed)
10:27:13*oswin[m] quit (Quit: killed)
10:27:13*watzon[m] quit (Quit: killed)
10:27:13*silvernode[m] quit (Quit: killed)
10:27:18*pqflx3[m] quit (Quit: killed)
10:27:18*s87651[m] quit (Quit: killed)
10:27:19*pigmej quit (Quit: killed)
10:27:23*freepump[m] quit (Quit: killed)
10:27:24*leorize[m] quit (Quit: killed)
10:33:23federico3trying to set a record of number of CI systems used
10:49:51*sammich quit (Remote host closed the connection)
10:51:01*sammich joined #nim
10:51:19FromDiscord_<Rika> Why does nimsuggest murder ram? Or linters in general
10:51:40narimiranto make you close your chrome to be more productive in the end :P
10:52:22leorizeluckily I use firefox which doesn't have these kinds of issues (with tweaks) :P
10:53:23leorizein short for why nimsuggest murder ram: there might be a logical leak in the compiler
10:53:28leorizewe don't really know to be fair
10:54:47*chemist69 quit (Ping timeout: 240 seconds)
10:55:11*chemist69 joined #nim
11:03:27*Tongir quit (Quit: Leaving)
11:07:36FromDiscord_<exelotl> @leorize which tweaks? :o
11:23:35*leorize[m] joined #nim
11:23:35*GitterIntegratio joined #nim
11:23:35*Yardanico[m] joined #nim
11:23:37*BitPuffin joined #nim
11:23:37*salotz[m] joined #nim
11:23:37*lqdev[m] joined #nim
11:23:38*unclechu joined #nim
11:23:41*silvernode[m] joined #nim
11:23:42*pqflx3[m] joined #nim
11:23:42*freepump[m] joined #nim
11:23:42*planetis[m] joined #nim
11:23:42*grantmwilliams joined #nim
11:23:43*pigmej joined #nim
11:23:43*d-nice2[m] joined #nim
11:23:43*vycb[m] joined #nim
11:23:43*skrylar[m] joined #nim
11:23:43*hohlerde joined #nim
11:23:44*s87651[m] joined #nim
11:23:44*oswin[m] joined #nim
11:23:44*watzon[m] joined #nim
11:35:12*Trustable joined #nim
11:40:31FromDiscord_<sveri> Hi, I am trying to figure out how to convert uri to a string.
11:40:32FromDiscord_<sveri> What I got working is `$req.url` but when I do `if $req.url.contains("css/"):` I get an error: `Error: type mismatch: got <Uri, string> but expected one of:...`
11:40:32FromDiscord_<sveri> So I assume it expects a boolean in an if, but the `$` casts bool to string.
11:40:32FromDiscord_<sveri> Is there a way to convert req.url to string and then call contains on it in one line?
11:42:06PMunch($req.url).contains("css/")
11:42:43PMunchThe problem is that it tries to do $(req.url.contains("css/"))
11:42:46FromDiscord_<sveri> Ah, thanks. I tried $(req.url).contains and that didnt work, didnt think of grouping it with the $ statement. Thank you.
11:43:30PMunchYou could also write req.url.`$`.contains("css/") but that's not very common
11:43:44PMunchIn fact I'm not sure if I've ever seen it
11:44:30PMunchHmm, is there a way in a macro to get all procedures that takes a given type as the first parameter?
11:44:38PMunchI.e. those that "belong" to that type
11:46:33FromDiscord_<sveri> I just found about in, which is even nicer 🙂
11:47:01ZevvPMunch: ha I knew you would ask that question
11:47:06ZevvI didn't dare to
11:47:23PMunchHaha, yeah guess what I'm trying to fix :P
11:49:26Zevvthat's what you get from rewriting my packages
11:50:21*PMunch looks around shiftily
11:51:59PMunchI mean we _could_ invoke nimsuggest to get them :P
11:52:56Zevvduuude
11:53:21PMunchHaha, I said we could not that we should
11:53:57PMunchUnfortunately I don't think there is a good way to solve this..
11:54:18Zevvno that was my conclusion for her
11:55:05PMunchEssentially it boils down to wanting to be able to call procedures on the field. But in order to be able to do that all the procedures that the type has needs to be wrapped.
11:55:42Zevvright. I looked for that but could not find a way to figure that out
11:55:46PMunchAnd I'm not really sure how, or even if it's possible, to get that information..
11:55:58Zevvtwo of us
11:59:34PMunchAraq, do you know if this is even possible?
12:00:58FromDiscord_<sveri> Is there a function in strutils that gives me everyting after the last separator?
12:01:31PMunchmyStr[0..myStr.rfind(<separator>)]
12:01:35PMunchSomething like that?
12:02:27FromDiscord_<sveri> ah, yes, that looks like what I want
12:02:36PMunchtemplate allAfter(myStr: string, sep: char): untyped = myStr[myStr.rfind(sep)..^1]
12:02:55PMunchSorry, messed the indices up, should be like in that template
12:03:04PMunchOr possibly +1 on the rfind side
12:04:18PMunchDefinitely should have +1: https://play.nim-lang.org/#ix=2aYt
12:06:59FromDiscord_<sveri> PMunch: thanks, I started looking into nim yesterday and really start to like it 🙂
12:07:06FromDiscord_<sveri> Seeing a template in action is enlighening
12:08:03PMunchYeah, templates can be a nice little tool :)
12:08:12PMunchGlad to hear you like it so far
12:10:36FromDiscord_<sveri> Yea, I have been doing java in my job for 10 years now, did 5 years clojure on the side for my own stuff and wanted to look into a language that compiles to C, found nim, am impressed by its capabilities 🙂
12:10:54ZevvWelcome to the Hotel California
12:11:08ZevvYou can check out any time you want, but you can never leave
12:11:48FromDiscord_<sveri> Yea, it was / is the same for clojure. REPL development and immutable data structures are just super awesome.
12:12:07Zevvrepl is not our strongest story, I'm afraid
12:12:30FromDiscord_<sveri> Yea, I have seen that. I will try to incorporate hot reload in the next days and see how far it goes.
12:12:30PMunchClojure is nice, but for scripting and other short lived programs the JVM spin-up time is a bit brutal..
12:12:48PMunchThere is `nim secret` that starts a REPL
12:12:56Zevvssssst
12:13:05FromDiscord_<sveri> It is, on the other hand, clojurescript runs on node and does a lot of stuff 🙂
12:13:11federico3we don't need REPL, we need an interactive environment
12:13:24Zevv1st rule is you don't talk about secret
12:14:13FromDiscord_<sveri> Is there some documentation about secret stuff you dont talk about? 😄
12:14:15PMunchsveri, never really tried Clojurescript saddly, but node isn't exactly a light run-time either. Although much faster to start than the JVM
12:14:33PMunchsveri, that's why they are secret, because they're not documented anywhere :P
12:14:57FromDiscord_<sveri> Clojure / Clojurescript are basically the same, one compiles to jvm the other to js, similar to nim as far as I can see.
12:15:43PMunchI actually use `secret` from time to time to check out simple stuff. But nowadays I just pop over into the playground if I want that functionality
12:16:26FromDiscord_<sveri> Spring Dev tools just recompiles changed classes and loads them into the JVM, stuff like that is enough. For fast development you dont have to have a REPL.
12:16:32PMunchsveri, well Clojure/Clojurescript is a bit different than Nim -> C/JS, but it's similar
12:17:55*dddddd joined #nim
12:19:46federico3like a Nim jupiter core with hot code reloading?
12:20:18*icebattle joined #nim
12:24:27*icebattle quit (Ping timeout: 240 seconds)
12:26:30*marmotini_ joined #nim
12:28:27*hax-scramper quit (Ping timeout: 240 seconds)
12:34:39*ng0_ quit (Ping timeout: 272 seconds)
12:39:15FromDiscord_<mikroskeem> sveri, have you seen ferret-lang?
12:39:51FromDiscord_<mikroskeem> i've been thinking to write some sort of bridge thingy to allow calling external C functions using it from clojure
12:40:17PMunchfederico3, I guess it would be possible to create a little thing that uses nimsuggest to check if your code would compile/supply you with errors etc. and if the code would compile, then compile and run it and show the output.
12:40:41PMunchmikroskeem, another interesting one is janet-lang
12:41:01FromDiscord_<mikroskeem> interesting
12:43:51Zevvit has PEGs! \o/
12:50:08*theelous3 joined #nim
12:53:29*dadada quit (Ping timeout: 265 seconds)
12:54:36federico3PMunch: yes, in a closed loop with an editor
12:54:47federico3IIRC there was a project like that
12:55:26*hax-scramper joined #nim
12:55:34PMunchWell there was `inim`: github.com/AndreiRegiani/INim
12:55:43PMunchBut that's more repl-esque
12:56:25PMunchThere was also this thing that ran TinyCC to speed up compilations
12:56:39PMunchBut again REPL-esque
12:57:33PMunchI was more thinking a twin view like the playground, and as soon as you stop typing nimsuggest will check for errors, if there are none then compile and run the code and show the output. If you begin typing again before it's complete then stop the compilation/running
12:58:16PMunchBut essentially then every time you have a buffer that is runnable it will be run and show you the result
13:02:24*dadada joined #nim
13:02:47*dadada is now known as Guest85929
13:08:02*marmotini_ quit (Remote host closed the connection)
13:14:45*hax-scramper quit (Ping timeout: 265 seconds)
13:14:47Zevvwhat a way to waste electrons
13:15:01*Vladar quit (Quit: Leaving)
13:15:09*hax-scramper joined #nim
13:15:10PMunchOh for sure
13:15:16Zevvif feels like editing lib/system.nim with nimsuggest huffing and puffing in the background trying to keep up
13:18:25FromGitter<mratsim> At least it doesn't get stuck in infinite loop
13:20:30FromGitter<mratsim> Editing weave is a recipe to have 1~3 nimsuggest instances stuck
13:26:52FromGitter<gogolxdong> where is the .cfg document?
13:31:04*Guest85929 quit (Ping timeout: 256 seconds)
13:31:49Araqnowhere but it's just
13:31:52Araqkey = value
13:32:04Araqand @if symbol: ... @else ... @end
13:32:18*dadada joined #nim
13:32:41*dadada is now known as Guest50034
13:36:46*marmotini_ joined #nim
13:40:59yumaikaslqdev[m]: they definitely vary, at least on Ubuntu
13:41:14yumaikas(column widths, that is)
13:41:53lqdev[m]maybe I just never noticed.
13:42:13*Kaivo joined #nim
13:42:34lqdev[m]if you want something simple, you should probably go with the constant width way
13:42:50*marmotini_ quit (Remote host closed the connection)
13:43:02*floppydh quit (Quit: WeeChat 2.7)
13:46:13*Guest50034 quit (Ping timeout: 272 seconds)
13:47:22*dadada_ joined #nim
13:51:43*marmotini_ joined #nim
13:55:44FromGitter<gogolxdong> what does path:.. and path:../Nim in nlvm nim.cfg mean? Does it mean both?
13:57:24FromGitter<mratsim> It's to add parent directory and parent_dir/Nim files as if they were in the current dir for imports
14:00:31*dadada_ quit (Ping timeout: 260 seconds)
14:01:27*ftsf quit (Ping timeout: 260 seconds)
14:02:20*dadada_ joined #nim
14:04:29*hax-scramper quit (Read error: Connection reset by peer)
14:05:01*hax-scramper joined #nim
14:05:22*hax-scramper quit (Read error: Connection reset by peer)
14:15:50*dadada_ quit (Ping timeout: 256 seconds)
14:17:28*dadada_ joined #nim
14:20:43*rockcavera joined #nim
14:22:33FromDiscord_<sveri> @mikroskeem I looked into it, but from my 10 minutes it was not to interesting for me.
14:22:33FromDiscord_<sveri> One of the big plus of clojure is that it's backed up by the JVM and java libraries.
14:22:33FromDiscord_<sveri> Nim compiles to C which is a similar plus...
14:23:43livcdhttps://github.com/bunkford/wChart <- this is really cool
14:26:28FromDiscord_<sveri> @mikroskeem I dont want to say it's bad or lacking, I just dont have a usecase for real time applications myself.
14:31:07*dadada_ quit (Ping timeout: 240 seconds)
14:32:23*dadada joined #nim
14:32:46*dadada is now known as Guest76464
14:36:58*marmotini_ quit (Read error: Connection reset by peer)
14:47:01*Guest76464 quit (Ping timeout: 272 seconds)
14:47:25*dadada_ joined #nim
14:54:03disruptek09:32:23 -!- dadada [[email protected]] has joined #nim
14:54:06disruptek09:32:23 -!- dadada [[email protected]] has joined #nim
14:54:08disruptek09:32:46 -!- dadada is now known as Guest76464it [Ping timeout: 240 seconds]
14:54:11disruptek09:32:23 -!- dadada [[email protected]] has joined #nim
14:54:13disruptekweeee!
15:00:47*dadada_ quit (Ping timeout: 240 seconds)
15:02:25*dadada_ joined #nim
15:11:17*PMunch quit (Quit: Leaving)
15:15:47*dadada_ quit (Ping timeout: 240 seconds)
15:16:51FromDiscord_<Zachary Carter> if I have a template that takes in an untyped parameter called X
15:17:07FromDiscord_<Zachary Carter> is it possible, in that template, to substitute a proc that combines the value of X with another symbol
15:17:15*endragor joined #nim
15:17:29*dadada_ joined #nim
15:17:29FromDiscord_<Zachary Carter> like if I want to substitute a proc with the name `exploreD` and I pass `D` into the template
15:17:45FromDiscord_<Zachary Carter> something like -
15:17:45FromDiscord_<Zachary Carter> ```
15:17:45FromDiscord_<Zachary Carter> template CASE(x: untyped) =
15:17:46FromDiscord_<Zachary Carter> proc `explorex`()
15:17:46FromDiscord_<Zachary Carter>
15:17:46FromDiscord_<Zachary Carter> CASE(D)
15:17:46FromDiscord_<Zachary Carter> ```
15:24:55*endragor quit (Remote host closed the connection)
15:29:11*JohnAD quit (Remote host closed the connection)
15:31:12*dadada_ quit (Ping timeout: 256 seconds)
15:32:21FromDiscord_<Zachary Carter> nevermind found https://nim-lang.github.io/Nim/manual.html#templates-identifier-construction
15:32:25*dadada joined #nim
15:32:48*dadada is now known as Guest54748
15:33:35Zevvhttp://ix.io/2aZH
15:34:35Zevvdude. after all the effort I put into this
15:34:37Zevvyou say nevermind
15:36:49FromDiscord_<Zachary Carter> lol
15:37:01FromDiscord_<Zachary Carter> I'm sowwy Zevv
15:37:12ZevvI bet you are!
15:37:23*endragor joined #nim
15:37:37ZevvMy intial hunch was to muble something backtick something mumble
15:37:47FromDiscord_<Zachary Carter> yeah - I knew it had something to do with backticks lol
15:37:51FromDiscord_<Zachary Carter> I just couldn't quite figure it out
15:37:57Zevvbut then I thought to myself: "Hey, this is ZacharyCarter, you can not just do mumblebacktickmuble"
15:38:04FromDiscord_<Zachary Carter> lmao
15:38:08ZevvSo I opened my editor
15:38:21Zevvand put all my love and attention into crafting you a nice example
15:38:37ZevvI want you to print that out and frame it
15:38:41Zevvand put it over your toilet
15:38:57FromDiscord_<Zachary Carter> I do appreciate the effort
15:39:07FromDiscord_<Zachary Carter> well - I'm moving into a new apartment later this month
15:39:11FromDiscord_<Zachary Carter> so that might just happen
15:39:14Zevvthat helps a lot. I'm glad we had this talk
15:39:20FromDiscord_<Zachary Carter> me too <23
15:39:22FromDiscord_<Zachary Carter> oops
15:39:22Zevvah back to the states?
15:39:24FromDiscord_<Zachary Carter> ❤️
15:39:44FromDiscord_<Zachary Carter> yeah - I'm already back in Virginia but I move to Texas and start my new job on the 18th
15:40:00Zevvsweet. Good luck man!
15:40:04FromDiscord_<Zachary Carter> thanks 😄
15:42:21Zevvyou took everything with you already or do you need another round trip?
15:43:10FromDiscord_<Zachary Carter> well - the gf and I had a trip planned to Helsinki at the end of this month already before the whole Texas thing happened
15:43:28ZevvSo, you bring an extra suitcase or two
15:43:32FromDiscord_<Zachary Carter> so I shipped most of my stuff back last week, and when we go on our trip, I'll send the rest of the stuff back
15:43:43FromDiscord_<Zachary Carter> yeah - I think the only thing I really need to ship still is my desktop PC
15:43:54FromDiscord_<Zachary Carter> everything else should be packable in suitcases I think
15:44:18Zevvjust take out the motherboard and the drives and ditch the case
15:44:27Zevvprobably cheaper then shipping
15:45:11FromDiscord_<Zachary Carter> could very well be - I'll have to check
15:45:32FromDiscord_<Zachary Carter> DHL still hasn't dropped off my snowboard yet - has me a bit worried / peeved
15:45:50FromDiscord_<Zachary Carter> but I added $500 insurance on it so I guess I'm covered either way
15:46:07*Guest54748 quit (Ping timeout: 268 seconds)
15:46:54Zevvdoes that pay for the board?
15:47:23*dadada_ joined #nim
15:48:01FromDiscord_<Zachary Carter> probably - the board and boots are several years old
15:48:07FromDiscord_<Zachary Carter> it's at least something
15:48:38Zevvabout ten years ago I lent an electric guitar to someone who took hit with him moving to 4 different countries. A few months ago I received a box from switzerland in the mail, 120cm long, 80cm wide and 12cm high. Filled with two handfulls of foam balls and an electric guitar. Just one floppy box. Amazingly it survived.
15:48:48FromDiscord_<treeform> I had my computer break during car crash while moving. It sucked.
15:49:02Zevvbah
15:49:05FromDiscord_<Zachary Carter> that does suck
15:49:18FromDiscord_<Zachary Carter> damn that's crazy
15:49:25FromDiscord_<Zachary Carter> but awesome you got the guitar back 😄
15:50:15ZevvWell, I forgot about it so it was a nice surprise :)
15:50:48FromDiscord_<Zachary Carter> yeah, definitely
15:51:24FromDiscord_<Rika> 🤔
15:51:29FromDiscord_<Rika> Off topic perhaps?
15:51:52Zevvperrrr-haps
15:51:55FromDiscord_<Zachary Carter> unless there's more topical chat going on - I don't think it's an issue
15:52:07Zevvit might be for people who read back
15:52:18disrupteki hate those people.
15:52:21FromDiscord_<Zachary Carter> +1
15:52:21*couven92 joined #nim
15:52:33disrupteksup fredrik
15:53:43*skellock joined #nim
15:55:25skellocki like nim
15:56:27dadada_then you're at the right place
15:57:15*Pqzcih5 joined #nim
15:57:53FromDiscord_<Zachary Carter> I'm trying to make a lookup table of function pointers - https://play.nim-lang.org/#ix=2aZO
15:57:59FromDiscord_<Zachary Carter> using some templates
15:58:03FromDiscord_<Zachary Carter> but I'm failingggg
15:58:33FromDiscord_<Zachary Carter> I guess the return type in the template should also be untyped
15:58:53FromDiscord_<Zachary Carter> but that doesn't solve my problem either
16:03:59dadada_has anyone worked on a https://langserver.org/ for nim?
16:04:14disruptekyep.
16:04:25shashlicklots to do today
16:04:50disruptek!repo nimlsp
16:04:51disbothttps://github.com/PMunch/nimlsp -- 9nimlsp: 11Language Server Protocol implementation for Nim 15 105⭐ 10🍴
16:06:36*icebattle joined #nim
16:07:21*tane joined #nim
16:09:35FromGitter<Varriount> Zevv: Not enough code to find the problem
16:12:03FromDiscord_<Zachary Carter> did you mean me Varriount?
16:12:25FromDiscord_<Zachary Carter> I didn't see Zevv post any code - unless it was from earlier
16:15:59FromDiscord_<Zachary Carter> okay - I'm getting there with my issue... just need to figure out how to use a template to include a bunch of template invocations residing in another file
16:16:17FromDiscord_<Zachary Carter> I figured just `include filename` inside of a template would work, but apparently not
16:19:19FromGitter<alehander92> Zachary you saw europe
16:19:21FromGitter<alehander92> you survived
16:19:24FromGitter<alehander92> you went back
16:19:40FromDiscord_<Zachary Carter> I did!!!
16:19:57FromDiscord_<Zachary Carter> I almost didn't make it - caught a super nasty flu the same week i was flying out
16:20:06FromGitter<alehander92> Araq https://github.com/nim-lang/Nim/issues/1235 here this should work iirc in my patch
16:20:07FromDiscord_<Zachary Carter> but thankfully it didn't kill me and wasn't the coronavirus
16:20:07disbot'not nil' check missing early function return.
16:20:40AraqI know
16:20:48Araqthere is a Nim grant waiting for you
16:20:50FromGitter<alehander92> but i am not sure what to respond: link it to my PR or just to the RFC as i dont know what would happen there
16:20:56FromGitter<alehander92> oh
16:21:36Araqyou don't have to respond, once 'not nil' arrived we have to close it, that's all
16:28:14yumaikaslqdev[m]: I went with an in-between: use max width to figure out how many columns to use, and then only adjustLeft each column for how wide the max length of the column is
16:31:32lqdev[m]good compromise.
16:31:41FromGitter<alehander92> ok, and i guess the grants things are for those 2020 milestones?
16:35:44dadada_grants? sounds good, who is behind that?
16:38:46*Hideki_ joined #nim
16:43:39*icebattle quit (Ping timeout: 240 seconds)
16:49:58*disrupteq quit (Ping timeout: 256 seconds)
16:50:15*disruptek quit (Ping timeout: 268 seconds)
16:50:23*disbot quit (Ping timeout: 260 seconds)
16:52:03*disrupteq joined #nim
16:56:59*disruptek joined #nim
16:57:20*disbot joined #nim
17:00:00*disruptek quit (Client Quit)
17:00:00*disbot quit (Client Quit)
17:00:59*Hideki_ quit (Remote host closed the connection)
17:02:16*solitudesf quit (Remote host closed the connection)
17:04:08*disbot joined #nim
17:05:10*disruptek joined #nim
17:05:57*icebattle joined #nim
17:06:37*endragor quit (Remote host closed the connection)
17:15:10*adalricus quit (Quit: ERC (IRC client for Emacs 26.3))
17:15:31*iranika joined #nim
17:27:39*Zectbumo joined #nim
17:35:26*tefter quit (Quit: WeeChat 2.7)
17:38:11*icebattle quit (Quit: Lost terminal)
17:42:26*lritter joined #nim
17:52:26*tefter joined #nim
17:57:58*tane quit (Quit: Leaving)
17:58:27*ng0 joined #nim
17:59:15*ng0 quit (Client Quit)
17:59:53*ng0 joined #nim
17:59:53*ng0 quit (Changing host)
17:59:53*ng0 joined #nim
18:00:59*ng0 quit (Client Quit)
18:01:41*ng0 joined #nim
18:06:21dadada_https://kotlinlang.org/docs/reference/scope-functions.html
18:06:45*NimBot joined #nim
18:07:03FromDiscord_<Rika> ? what's up with the link
18:08:31dadada_I'm interested nice language features, this is something that appeals to me
18:09:02FromDiscord_<Rika> sounds doable considering mapIt exists
18:09:03dadada_so obviously I'd like to know if something such as the let scope function could be added to nim
18:09:23dadada_s/interested/interested in
18:13:24FromDiscord_<Rika> what websocket library do y'all use if any?
18:13:47FromDiscord_<Recruit_main_70007> net
18:13:54FromDiscord_<Recruit_main_70007> what are you trying to do?
18:14:06dadada_certainly doable :D ... I've still not found my ideal lang to be honest, kotlin seems to be good when you have to target JVM, but the kotlin to native compiler apparently is weak (bad performance of generated code), the ultimate language for me would be one that would run on all popular targets (C, JVM, .NET, JS, WebAssembly), so far no language (unless I'm missing something) can be used in all roles
18:15:02*iranika quit (Remote host closed the connection)
18:15:11FromDiscord_<Recruit_main_70007> we only miss jvm and .net, but i think they are unneccesary having C
18:15:38*iranika joined #nim
18:15:48disruptekyou want that, you use graal on nlvm.
18:16:05rayman22201kotlin let is basically the same as python `with`. Zevv made a macro version here: https://github.com/zevv/with
18:16:18rayman22201that kind of thing is trivial with macros in general
18:16:31FromDiscord_<Rika> @Recruit_main_70007 i mean websockets, not sockets
18:16:31dadada_I prefer Nim by far, because JVM is something I'd rather not require, the Python like syntax appeals to me, macros/templates are just plain awesome, it's also much more impressive that nim was developed entirely by a FOSS community, while kotlin has jetbrain and google as drivers, which explains a lot, but makes it less cool to me
18:17:04FromDiscord_<Recruit_main_70007> @Rika, ok, no ieda then
18:17:19FromDiscord_<Rika> that's fine, i'm just asking which libraries people use
18:17:30FromDiscord_<Rika> because i dont know if the one i'm using is the "best supported"
18:19:04disruptekthe websockets libs in use are news and ws.
18:19:08disruptek!repo news
18:19:30disruptek!repo news
18:19:36skellockc'mon bot, you got this!
18:19:43disruptekwake up disbot...
18:19:48dadada_Recruit_main_70007, there's a huge wealth of libraries for JVM (and I assume of .NET), also some huge applications are done (at least partly) in JVM langs, so if Nim supported JVM, you could for example extend libreoffice using it :D businesses tend to rely on JVM based stacks
18:19:59disruptek!repo news
18:20:01disbothttps://github.com/Tormund/news -- 9news: 11news - nim easy web socket. Based on https://github.com/treeform/ws 15 20⭐ 2🍴 7& 2 more...
18:20:04rayman22201news is based on chronos though
18:20:09rayman22201https://github.com/treeform/ws
18:20:20rayman22201it's forked from ws which uses standard async
18:20:27*iranika quit (Ping timeout: 272 seconds)
18:20:43rayman22201you have to pick your preferred async flavor
18:21:55rayman22201dadada_ there are a huge wealth of C libraries too, nim can use those easily with no JVM :-P
18:22:07FromDiscord_<Recruit_main_70007> dadada: i also think being able to substitute java would be great, but its a lot of work, is it worth it?
18:22:17FromDiscord_<Rika> i'm actually using ws right now
18:22:24FromDiscord_<Rika> was wondering if any others were better
18:22:49rayman22201news and ws are the best supported. If you use either one you are fine.
18:23:24disruptekso what's the deal with --seqsv2:on; is it not supported on gc:refc?
18:23:33dadada_rayman22201: I know, but you can't always make a choice, maybe you just happen to need some JVM lib for work and there's no C alternative
18:26:30rayman22201what is gc:refc?
18:26:36disruptekdefault gc.
18:26:41dadada_Recruit_main_70007: I've no doubt it's a lot of work, it'd be worth it if you hadn't to sacrifice resources that lack elsewhere ... wrote earlier that for my ideal a language had to run everywhere, and in an ideal scenario I'd be a billionaire paying people to improve Nim ... with that I want to say that I do not lack the realism that this would be hard to accomplish
18:26:58rayman22201ah yeah, seqsv2 never supported the default gc
18:27:01disrupteknah, becoming a billionaire is easy.
18:27:17skellocksimcity doesn't count
18:27:25dadada_heh, well depends in what currency, in zimbabwe it's sometimes possible
18:30:20FromDiscord_<Rika> zimbabwe doesnt use their dollar anymore
18:30:24FromDiscord_<Rika> they use USD now afaik
18:30:56*skellock quit (Quit: WeeChat 2.7)
18:31:30rayman22201@mratsim! where is your FOSDEM talk!?! My life is not complete without it :-P
18:38:21FromDiscord_<clyybber> same
18:39:49Zevvclyybber: I am thinking of making a writup about arc to accompany the "nim memory" thing I wrote once
18:40:03Zevvwould you be willing to help me getting the details right?
18:40:17FromDiscord_<clyybber> sure!
18:40:18Zevvi will ask a ton of stupid questions
18:40:23FromDiscord_<clyybber> alright
18:40:35FromDiscord_<clyybber> I'll make sure to give tons of stupid answers
18:40:51FromDiscord_<clyybber> followed by thousands of self contradicting "neverminds"
18:41:04FromDiscord_<clyybber> :p
18:42:05Zevvsweet, thanks.
18:42:14ZevvI might make a start this weekend and throw it at you
18:46:09FromDiscord_<Recruit_main_70007> do we have structs in nim?
18:47:42*nsf quit (Quit: WeeChat 2.7)
18:48:06FromDiscord_<Rika> type
18:48:52Araqrayman22201: seen my talk?
18:49:10rayman22201yup. It was great :-) thank you
18:51:55vegaiRecruit_main_70007: https://nim-lang.org/docs/manual.html#types-tuples-and-object-types
18:52:55Araqthanks
18:56:35dadada_Araq: good talk! only complaint I have is that you weren't given more time!
19:04:19FromDiscord_<clyybber> Zevv: Alright, I'll try to look in here a few times, weekend is gonna be busy here
19:05:44Araqdadada_: thanks. it's much easier to prepare short talks though :-)
19:09:35FromDiscord_<clyybber> Araq: How do we want to do closure capturing with --gc:arc?
19:09:58Araqthe way I implemented it :P
19:10:08FromDiscord_<clyybber> So by reference?
19:10:20Araqyeah
19:10:23FromDiscord_<clyybber> How will we capture local vars?
19:10:37FromDiscord_<clyybber> Or rather ensure they don't die, while we have the closure?
19:11:59Araqit's all been implemented and works
19:12:14FromDiscord_<clyybber> Ok, so my bug is a dfa bug
19:12:37FromDiscord_<clyybber> Araq: How does it work though? Seems like magic :p
19:13:05Araqlambdalifting.nim
19:13:11FromDiscord_<clyybber> thanks
19:13:18Araqtook 2 rewrites
19:13:28Araqmonths of development
19:13:57Araqlook at it but don't touch it, it's like osproc.nim, only touch it when drunk
19:14:06FromDiscord_<clyybber> haha
19:15:02FromDiscord_<clyybber> Araq: For capturing by value I just wrap it in a proc like the capture macro does
19:15:07FromDiscord_<clyybber> Is there any other way?
19:15:32Araqif there is, I'm not aware of it
19:16:33FromDiscord_<clyybber> Araq: Default values are "captured" by value right?
19:17:19Araqdefault values have no special semantics, Nim is not Python
19:17:28FromDiscord_<clyybber> K
19:19:40dadada_Araq: what do you think about a weekly or biweekly nim newsletter?
19:19:56dadada_I'm in the process of getting familiar with nim and its community
19:20:12dadada_I think I could write a short newsletter every few weeks
19:20:26AraqI remember we had one and then the author disappeared.
19:20:34dadada_of course this makes only sense if there's place to put it
19:20:51Araqwe're willing to publish it on our website
19:20:57dadada_well, I can't promise to do that forever either, but I'd give it a whirl
19:21:16FromDiscord_<clyybber> Araq: Is it intended that a macro with an `openarray[typed]` param only accepts "one type" ?
19:21:20Araqbut we must be careful not to announce "weekly" when it's "once a month and then irregular"
19:21:46Araqclyybber: probably, only varargs[typed] has special logic in the compiler.
19:21:59FromDiscord_<clyybber> Ah, alright.
19:22:09FromDiscord_<clyybber> I'll change the capture macro to use that instead
19:22:10dadada_makes sense, maybe the "irregular weekly newsletter" could be the name
19:22:10FromDiscord_<clyybber> then
19:22:25Araqdadada_: how about we call it "Nim's irregular newsletter"
19:22:37livcddadada_: call it "Unapologetically irregular nim feed"
19:22:38Araqit's funny and likely realistic
19:22:45livcdAraq: oh i thought the same
19:22:57dadada_true, the thought came to many here
19:23:38livcdbut then again you have the "blog" section...why not there ?
19:23:55dadada_well, I feel there's a lot of stuff to keep up with when you look at the pull requests for example
19:24:09dadada_so the newsletter would report on the discussions there
19:24:26dadada_and maybe what to expect
19:24:53*iranika joined #nim
19:24:54dadada_I'd also talk about projects using nim and macros/templates that I like
19:25:03dadada_s/talk/write
19:27:58livcdmaybe you culd just curate interesting answers/questions from the forum/gh issues
19:28:58dadada_livcd: yes, and yes, I wouldn't want to read every forum post or github issue, but the interesting stuff, for sure
19:29:29*iranika quit (Ping timeout: 272 seconds)
19:29:35livcdyou still could read all of them as there are not that many!
19:30:05dadada_the big question is where is nim headed and what do users want from it, where does araq want to take it
19:32:04AraqNim is heading towards embedded devices and hard realtime systems. It'll remain useful for client/server-side programming but that's where we spend our resources
19:33:16Araqso far that I managed to communicate my vision the community has been really positive and helpful
19:33:16dadada_it was really not a question I wanted to get answered directly, but thanks, it was more of an editorial kind question, that I would try to find the answer to each week
19:33:31livcdis not that a recent change ? oO
19:33:36*natrys joined #nim
19:34:02Araqlivcd: yes but already some nimble packages support --gc:arc
19:35:41*Vladar joined #nim
19:40:42dadada_people who don't program for embedded systems or hard realtime systems will keep flocking into the community, so in the long run (hopefully) there will be more resources (which I assume they will bring with them) to support their needs
19:42:25livcdAraq: is this because of gc:arc or you have a "customer" with such need?
19:42:33*abm joined #nim
19:43:14Araqit's because we can do it :-)
19:44:08Araqdadada_: yes, and Nim continues to improve on the fronts that people make contributions for
19:44:27AraqI merely gave you the Araq-centric view
19:44:49disruptekthe problem isn't compiler, imo.
19:45:56*iranika joined #nim
19:46:06dadada_it makes sense to target embedded systems in a way, these are really the systems with the hardest constraints, if you conquer them, and your language scales (which I want to assume), then you're really not hindering the desktop/server/app development aspects, you're just reinforcing the seriousness of the language
19:46:26Araqdisruptek: well I'm a compiler writer, for me the problem is always the compiler.
19:46:35Araqdadada_: yes, you nailed it.
19:46:35disruptekyes, of course.
19:51:30dadada_Araq: I remember I followed the latests wine weekly news on winehq in part because I found them on the frontpage of winehq back in the day (don't follow it closely nowadays), so I think you'd raise the view count of the blog and (maybe) newsletter if you can embed a small excerpt of each on top of the front page of nim-lang.org ... I don't know if you'd want to, it'd maybe mess with the cleanliness of the
19:51:35dadada_current page, however I think the main idea is to get tech journalists that follow projects to keep checking on the status of nim, in hope of getting press
19:51:51dadada_more press -> more users -> more development -> more press -> more users -> more development :D
19:52:27dadada_maybe it's a naive view of the world and anybody who could possibly be interested in nim has already
19:52:45dadada_heard of it and formed an opinion ... though I'd doubt it
19:55:27dadada_the motivation is to strengthen nim :D
20:03:31FromDiscord_<sveri> Hi, I have problems getting a table working in async context. You can see the code and the error here: https://pastebin.com/QzqjgBwF
20:03:31FromDiscord_<sveri> Any ideas what's wrong?
20:06:11Araqdadada_: yeah, we will do something like that, I agree
20:09:40dadada_I'd make my personal list of interesting topics of "the week" (which is a unit with impossible definition in the irregular letter), maybe ask on opinions in IRC (aka here) as well, then compile a draft of the letter, I'll need an editor which I'll probably find here too (whoever is around) ... and then the final editor would be whoever puts it up
20:10:23FromDiscord_<Recruit_main_70007> @sveri it seems like the error is not in that piece of code, it says line 12
20:10:49rayman22201@sveri, yeah, I can't repro. I just ran your example and it worked fine for me
20:12:49FromDiscord_<sveri> @Recruit_main_70007 rayman22201: It compiles for me too, but as soon as I start it, the error comes.
20:13:25rayman22201can you post a bigger code sample? we think the error is somewhere else
20:13:40FromDiscord_<sveri> I will, just a moment
20:14:27FromDiscord_<sveri> my wife is just talking......
20:16:01*mal`` quit (Quit: Leaving)
20:18:08FromDiscord_<sveri> She wrote that herself, anyway: https://pastebin.com/zhFhGk5G
20:18:08FromDiscord_<sveri> The lines dont match exactly as I removed a lot of commented code from the pastebin
20:21:45FromDiscord_<Recruit_main_70007> i have absolutley no idea about async, but i would bet the proc inside serve*() is the problem, cant you put it outside the function?
20:21:48FromGitter<alehander92> dadada_ i think
20:21:54FromGitter<alehander92> podcasts are popular
20:22:18FromGitter<alehander92> and i'd like to think that it would be fun to have a "emerging langs" podcats (similar to PMunch's room )
20:22:39rayman22201add the .gcsafe. pragma to your cb proc @sveri
20:22:47FromGitter<alehander92> (and because it might be hard to find content for just one lang .. and its just fun to bikeshed with other language guys :D)
20:24:02*ng0 quit (Ping timeout: 240 seconds)
20:24:21FromGitter<alehander92> but maybe just a #nim one would be fun anyway
20:25:04rayman22201nim had a video log going for a bit. It was nice, but the core team got busy and stopped :/
20:25:48FromDiscord_<Recruit_main_70007> @sveri answer provided by rayman above
20:27:50FromGitter<alehander92> i have the very egoistical idea to just make a podcast, but thats because i love to have a reason to question people for stuff
20:28:23*opal quit (Ping timeout: 240 seconds)
20:29:01FromGitter<alehander92> but objectively a podcast by someone might be a ok addition to the videos because it would invite different programmers each week, so e.g. wouldn't take much time from a single person
20:29:36rayman22201you should try! you could be the next great interviewer, like Howard Stern or Letterman :-P
20:30:08rayman22201The hard part is the scheduling and the editing.
20:32:12FromGitter<alehander92> yeah i might do it
20:32:29FromDiscord_<sveri> rayman22201: Ok, I did that and it works. I just read up on what it actually does and if I get it right, it means that down the call stack no proc accesses a global string, seq, ref or a closure. Right now it accesses a global table, which should be ok?
20:32:30FromDiscord_<sveri> But what if I start accessing a global string by chance later. Then it wont be picked up by the compiler, right?
20:32:30rayman22201alehander92, I am a big fan of this podcast, idk, if you have heard of it: https://futureofcoding.org/episodes/
20:32:33FromGitter<alehander92> but my english is a bit rough
20:32:58rayman22201@sveri, are you single threaded?
20:33:13FromDiscord_<sveri> right now, yes, but this might change.
20:33:16FromGitter<alehander92> and my editing skill are not much :D so i am more of an enthusiast trying to motivate someone to do it
20:33:16rayman22201if you are only doing single threaded, it's fine.
20:33:27rayman22201the gcsafe is all about multithreading safetly
20:33:32rayman22201safety even
20:33:48FromDiscord_<sveri> I mean, I am just fooling around, but potentially I will introduce multithreading.
20:33:48rayman22201globals are not safe with multiple threads
20:34:05rayman22201in that case, you will need to have some other solution for your global table
20:34:14FromDiscord_<sveri> Yea, I understand. Are there threadsafe globals in nim?
20:34:23FromDiscord_<sveri> or some kind of locking mechanism?
20:34:25rayman22201no, but there are locks :-)
20:34:34rayman22201there is also channels
20:34:54FromDiscord_<sveri> Yea, I glimpsed over channels. Great. I will add a TODO mark. Thank you very much.
20:34:58FromGitter<alehander92> disruptek
20:35:06FromGitter<alehander92> you seem as a great guy to do podcasts
20:35:06rayman22201np
20:35:10*mal`` joined #nim
20:35:22FromGitter<alehander92> would you do one, and let me help with the organization :D
20:35:31rayman22201alehander92, you can get better at both English and editing with practice :-)
20:36:46FromGitter<alehander92> yes, but its always easier with >1 people :P
20:37:15rayman22201lol
20:37:55*opal joined #nim
20:38:04FromGitter<alehander92> i expect
20:38:33FromGitter<alehander92> that one can go far with OBS and a decent microphone
20:39:07rayman22201yes. I agree 100%
20:48:08FromGitter<alehander92> https://forum.nim-lang.org/t/2712
20:49:47*iranika quit (Ping timeout: 260 seconds)
20:52:58FromGitter<alehander92> thats why its good to have >1, but anyway it would be interesting to see if someone has xp with previous tries
20:53:11*nsf joined #nim
20:53:44disrupteki'm experienced with english, sure.
20:54:06disrupteknot sure my streaming audio capture works, though.
20:55:15*dadada_ quit (Ping timeout: 268 seconds)
20:57:27*tiorock joined #nim
20:57:27*tiorock quit (Changing host)
20:57:27*tiorock joined #nim
20:57:27*rockcavera is now known as Guest64945
20:57:27*Guest64945 quit (Killed (adams.freenode.net (Nickname regained by services)))
20:57:27*tiorock is now known as rockcavera
20:57:28*dadada joined #nim
20:57:52*dadada is now known as Guest32432
21:01:59*Trustable quit (Remote host closed the connection)
21:03:22FromGitter<alehander92> you can ask good questions
21:05:04FromGitter<alehander92> and i can ask good questions
21:05:23FromGitter<alehander92> and if you invite two guests
21:05:29FromGitter<alehander92> they can ask good questions to each other
21:05:39FromGitter<alehander92> and you can just eat pancakes
21:05:50disruptekthe questions could be submitted via reddit or twitter and then curated/edited to form a cohesive episode.
21:06:03FromGitter<alehander92> crowdsourcing questions
21:06:14FromGitter<alehander92> and crowdsourcing answers
21:07:14FromGitter<alehander92> well, with interviews often you go somewhere and you chain 5-6 topics on the spot
21:07:39*Trustable joined #nim
21:07:41FromGitter<alehander92> so one can always do a DFS first and then BFS community ones
21:09:57*elibracha joined #nim
21:10:13*iranika joined #nim
21:10:34*Guest32432 is now known as dadada
21:11:17*elibracha quit (Remote host closed the connection)
21:11:41dadadaalehander92: before we roll our own podcast, maybe we can get someone like Araq invited to existing ones
21:11:56dadadalike the futureofcoding one (that I've not heard yet)
21:12:53FromGitter<alehander92> yeah my other idea was to just make a more general one, as we're all interested in upcoming/newer languages
21:13:39FromGitter<alehander92> because when you invite people from other communities, it's probably easier to cross-polinate ideas/guests etc
21:14:10FromGitter<alehander92> i really think that's not the right biological term
21:14:16FromGitter<alehander92> correct*
21:14:23dadadano it's correct I believe :D
21:14:36*iranika quit (Ping timeout: 256 seconds)
21:14:37FromGitter<alehander92> two l-s*
21:14:55dadadaif you can setup a podcast like that, it'd be great, however I think you underestimate the logistical aspect of that
21:15:09FromDiscord_<clyybber> alehander92: Do you know formality-lang?
21:15:25FromGitter<alehander92> but i think one can do both i am more interested in just listening about random nim/similar stuff from people i know :P
21:15:30FromDiscord_<clyybber> Its underlying algorithms are pretty cool
21:16:04FromDiscord_<clyybber> "abstract algorithm"
21:16:06FromGitter<alehander92> ah, sounds interesting
21:16:12dadadagetting people to agree to appear on a podcast from around the world is a lot of work, and then you need to edit it, and if you do not make it a regular thing, it'll never have more than a handful of viewers
21:16:14FromGitter<alehander92> is it embeddable
21:16:35FromGitter<alehander92> makes a lot of sense if you think about it
21:16:46FromDiscord_<clyybber> alehander92: I don't think so , its IR is a subset of lambda calculus
21:16:46FromGitter<alehander92> compile very safe modules to all kinds of languages
21:16:54*narimiran quit (Quit: leaving)
21:16:59FromGitter<alehander92> that was one possible idea with pseudo-lang
21:17:30FromGitter<alehander92> because e.g. it might be hard to make your lang X's type system super powerful, but it might be still useful to safeguard several components
21:17:42FromGitter<alehander92> (but i guess if their callers are not safe..this doesnt help much)
21:17:53FromGitter<alehander92> clyybber ah i should read more about it ok
21:18:06FromGitter<alehander92> dadada oh absolutely
21:18:35FromDiscord_<clyybber> the underlying theory is really cool, it can optimize certain kinds of expressions to be asymptotically faster
21:19:00FromDiscord_<clyybber> but it depends on only using a variable once, ever
21:19:00FromGitter<alehander92> thats why i wanted to motivate 1-2 people and maybe to expect very short episodes: 10-15 minutes
21:19:05FromDiscord_<clyybber> and breaking the scope
21:20:14disruptek10-15mins isn't really enough to do anything.
21:20:25FromGitter<alehander92> hm, i wanted to see a good asympt..complexity-based checker for a language
21:20:47FromGitter<alehander92> do they somehow prove how complex is a certain function
21:20:50FromDiscord_<clyybber> alehander92: You mean a checker which tells you the complexity?
21:20:51dadadaI'm currently more interested in promoting nim, a podcast about all sorts of languages will sooner or later exist, because it's simply too obvious and there're millions of programmers who'd listen to that, but it will only be successful with a committed host
21:20:55FromGitter<alehander92> or is it just a side effect of it
21:21:03FromDiscord_<clyybber> alehander92: Nope, they don't
21:21:10disrupteki'd rather build something more interactive, like 1:N programming where one user keyboards and others conference in via mumble or whatever.
21:21:16FromDiscord_<clyybber> Its equivalent to symmetric interaction calculus
21:21:29FromGitter<alehander92> clyybber yeah something like https://github.com/pseudo-lang/pseudolang
21:22:02FromDiscord_<clyybber> thats very cool
21:22:04FromGitter<alehander92> i read one older thing about people from inria i think doing something like time-based ?analysis
21:22:15FromDiscord_<clyybber> hmm, I think its really hard to do
21:22:24FromDiscord_<clyybber> to do precisely I mean
21:23:05FromDiscord_<clyybber> I mean what if you give it ackermann
21:23:09FromDiscord_<clyybber> what will it spit out?
21:23:20*iranika joined #nim
21:23:34FromGitter<alehander92> but yeah it seems hard in general
21:23:40FromGitter<alehander92> yeah i guess it would just say
21:23:42FromGitter<alehander92> i cant prove that
21:23:54FromGitter<alehander92> obviously there are many classes of things it cant do
21:24:12FromGitter<alehander92> but the point is maybe to limit the language in such a way that most expressable stuff is kinda easy to do
21:24:22FromDiscord_<clyybber> hmm, yeah, maybe we can just bail out for unbound recursion
21:24:26FromGitter<alehander92> and the other one easy to annotate (similarly to importc)
21:24:33*iranika quit (Remote host closed the connection)
21:24:34FromGitter<alehander92> or just "cast"ed
21:24:41FromGitter<alehander92> dadada i agree
21:24:48*iranika joined #nim
21:24:53FromGitter<alehander92> disruptek something like chat-based multipodcast?
21:25:01FromGitter<alehander92> chat-based podcats sounds good
21:25:02FromDiscord_<clyybber> alehander92: For polynomial complexities it shouldn't be hard I think
21:25:05FromGitter<alehander92> much easier to do
21:25:08FromDiscord_<clyybber> just count the number of nested for loops
21:25:18FromDiscord_<clyybber> but it gets hard when you exit half time through a loop
21:25:19FromGitter<alehander92> and then you can get some speakers to read it motivationally
21:25:27FromDiscord_<clyybber> or exit dependent on the var of some array element
21:26:08FromGitter<alehander92> clyybber yes thats what i did
21:26:17FromDiscord_<clyybber> ah, nice
21:26:19FromGitter<alehander92> but i was naive a bit
21:26:37FromGitter<alehander92> so i think i mostly constructed very basic symbolic expressions
21:27:06FromGitter<alehander92> and you can kinda teach such a system stuff, like 1 + 2 + 3 etc ~= n^2/2
21:27:11FromGitter<alehander92> (n*(n-1)/2)
21:27:18FromGitter<alehander92> and other common patterns
21:27:25FromGitter<alehander92> but the problem is imo
21:28:31FromGitter<alehander92> i was very naive
21:28:38*solitudesf joined #nim
21:28:54FromGitter<alehander92> if you add algo-s called with only small numbers etc complexity realistically becomes different
21:29:03FromGitter<alehander92> so its hard to actually make this useful
21:29:08FromDiscord_<clyybber> hmm
21:29:15FromDiscord_<clyybber> I wonder if theres an algorithm
21:29:15FromGitter<alehander92> and there is a much easier way to do it
21:29:23FromDiscord_<clyybber> for which calculating the complexity is NP
21:29:32FromDiscord_<clyybber> hard
21:29:35FromGitter<alehander92> just record some run-s/tests with different inputs and extrapolate the function
21:30:40FromGitter<alehander92> praise God, there is much one can do
21:30:47FromDiscord_<clyybber> alehander92: But some functions only show their true "character" once you extrapolate really "long"
21:30:49FromGitter<alehander92> you can property test
21:30:56FromGitter<alehander92> you can source common values from actual runs
21:31:12FromGitter<alehander92> yes, those are ways you can generate many very different inputs
21:31:20FromDiscord_<clyybber> and if you have the values what will you do?
21:31:24FromGitter<alehander92> ah, thats true as well, but it might be doable
21:31:25FromDiscord_<clyybber> linear regression
21:31:27FromDiscord_<clyybber> and if that fails
21:31:30FromDiscord_<clyybber> polynomial
21:31:32FromDiscord_<clyybber> and exponential
21:31:34FromDiscord_<clyybber> and so on
21:31:42FromGitter<alehander92> here i am not sure, but yeah something like that
21:31:53disruptekmadness.
21:32:05FromGitter<alehander92> the point is to be work well for 90% of cases
21:32:17FromDiscord_<clyybber> I wondered, are there an infinite amount of asymptotically different kinds of "growth"?
21:32:21FromGitter<alehander92> but at least for most algorithms i dont see why it wouldnt work
21:32:35FromDiscord_<clyybber> like is there something between exponential and polynomial that we just don't know yet?
21:32:38FromGitter<alehander92> as usually people dont write algo-s with super strange complexity
21:32:49FromGitter<alehander92> and you can also collect memory complexity
21:33:14FromDiscord_<clyybber> hmm, thats probably more feasable
21:33:47FromDiscord_<clyybber> hmm
21:33:49FromDiscord_<clyybber> or is it?
21:33:59*abm quit (Quit: Leaving)
21:34:07rayman22201@clyybber, superlinear is a thing. it's between linear and exponential
21:34:12FromGitter<alehander92> well they both should be equivalent imo
21:34:25FromDiscord_<clyybber> rayman22201: Aw, nice, thanks
21:34:30FromGitter<alehander92> but i think with tooling this can be done in a relatively general way
21:34:36FromDiscord_<clyybber> now I finally have some word to go down the rabbit hole
21:34:57FromGitter<alehander92> and with a bit more math knowledge
21:35:02rayman22201#math is beautiful :-P
21:37:00FromGitter<alehander92> disruptek chat podcasts also require much less and more programmable editing
21:37:55FromDiscord_<clyybber> run espeak on the irc logs; upload it as a podcast; ???; profit
21:38:29disrupteki'm thinking more of a real-time programming forum. group dev.
21:39:23FromDiscord_<clyybber> we should just join for some vc once in a while
21:39:52FromDiscord_<clyybber> disruptek: +100
21:40:39FromDiscord_<clyybber> https://www.youtube.com/watch?v=0R--_ATzE6o
21:40:46disrupteki would do something like a group reward system where stakeholders bid on contributions with new shares.
21:40:59FromDiscord_<clyybber> what
21:41:29FromDiscord_<clyybber> what would the reward be?
21:41:32FromDiscord_<clyybber> nim-coin?
21:41:56FromDiscord_<clyybber> I think we already have some issues with a bounty
21:41:58*krux02 joined #nim
21:43:03disrupteki have a writeup of the concept somewhere...
21:44:09dadadaalehander92: I find this interesting, according to them every game engine would need to implement its own scripting language, https://docs.godotengine.org/en/stable/getting_started/scripting/gdscript/gdscript_basics.html
21:44:27dadadasyntax is similar to python, I wonder if they ever considered nim
21:44:47dadada"Godot already has a memory management model for resources, most script languages provide their own, which results in duplicate effort and bugs."
21:44:56dadada"Binding code is always messy and results in several failure points, unexpected bugs and generally low maintainability."
21:46:37FromDiscord_<clyybber> godots choice of making their own lang is IMO the worst thing about godot
21:46:41dadadaI do not want to believe them, but I can't really counter their argument
21:46:49FromDiscord_<clyybber> but its not that bad, cause godot is really cool
21:46:53disruptekhttps://gist.github.com/disruptek/5a12e8b0673097e52025c8c4b6cba094
21:47:00*ehmry quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
21:47:56*skellock joined #nim
21:48:29*PMunch joined #nim
21:48:52FromDiscord_<clyybber> godot scripts performance is just terrible
21:49:05FromDiscord_<clyybber> and them adding typing didn't improve it
21:49:49FromDiscord_<clyybber> developing a language is already hard enough, as is developing a full featured unity-like game engine
21:51:12*ng0 joined #nim
21:52:19*skellock quit (Client Quit)
21:55:13dadadaclyybber: yes, the sunken cost fallacy will prevent them from dropping their python clone
21:56:38*skellock joined #nim
21:58:55dadadahttps://github.com/pragmagic/godot-nim
22:00:36*ehmry joined #nim
22:01:19disruptekas far as i'm concerned, the hardest thing in the world is getting nimterop working. i hate to say it, but it's an absolutely clusterfuck EVERY. SINGLE. TIME.
22:02:35shashlickcome on
22:02:44disruptekseriously.
22:02:57shashlickgive me a paste or something to debug
22:03:20disruptekwell, this time i had my TMPDIR and TMP set to /tmp with noexec. so ... /bin/sh: /tmp/nimble_7193/githubcom_genotrancenimterop_0.3.3/nimterop/toast: Permission denied [AssertionError]
22:03:31*nsf quit (Quit: WeeChat 2.7)
22:03:53disruptekalso, there was no cmake. only cmake3.
22:04:03shashlickwhy is it trying to run toast from temp
22:04:14disruptekyour software, dude.
22:04:36shashlicktoasts gets installed to ~/.nimble/pkgs
22:04:39FromGitter<alehander92> dadada sounds interesting
22:04:45FromGitter<alehander92> but i am not familiar with godot
22:05:00disrupteki'm just trying to bootstrap nimph.
22:05:03FromGitter<alehander92> disruptek yeah but whats the difference with .. chat
22:05:07FromGitter<alehander92> like discord/gitter
22:05:13FromGitter<alehander92> with good search/grouping
22:05:16disruptekthe difference is voice.
22:05:20shashlickbut nimble compiles in temp - maybe compiling it and setting it to exec doesn't work
22:05:24FromGitter<alehander92> discord has voice
22:05:56disruptek`chmod +x /tmp/t` works fine.
22:06:15disruptekit's just execution that fails.
22:06:41disrupteki guess it's because that's where my nimblecache goes.
22:07:13disruptekgitter sucks a big donkey dick.
22:08:02disrupteksorry shashlick, not trying to take it out on you. just took me all day to get this container built and i'm salty as hell right now.
22:08:28*filcuc joined #nim
22:08:54disruptekit's all crap built on crap built on crap. 😢
22:09:05dadadaagree on gitter, hopefully IRC never dies
22:09:31dadadairssi is perfection
22:09:31Araqdisruptek: huh? that's news
22:09:33shashlickdisruptek: still, looks like part of the nimble install process
22:09:41shashlickwhy is it running toast at that point
22:09:42Araqa couple of days ago you praised it
22:09:51disruptekgitter?
22:09:54disrupteknever.
22:10:09Araqnimterop
22:10:15dadadayeah, that's what I agree on disruptek , never
22:10:17disrupteknimterop is the best we have.
22:10:23disruptekno two ways about it.
22:10:54disruptekalso, it breaks 1) many assumptions, or 2) one key assumption.
22:10:58disrupteki no longer care which.
22:11:30dom96I can never remember, is nimterop the one that generates .nim files during installation?
22:11:51dom96if so then that's not the best we have, doesn't shashlick have a package that does it all at compile-time?
22:12:01shashlickthat was nimgen
22:12:48dom96ahh, so why would the nimble install process be causing problems?
22:13:13shashlickfor whatever reason, during nimterop install time, nimble is running the binary from temp
22:13:34shashlick`/bin/sh: /tmp/nimble_7193/githubcom_genotrancenimterop_0.3.3/nimterop/toast`
22:14:03shashlickdisruptek, this is during nimterop install right?
22:14:07dom96why is nimterop being run during install time?
22:14:57disruptekshashlick: no, this is during app compilation.
22:15:32shashlickwhy is nimterop being referenced from temp?
22:16:28disruptekset your TMP (or TMPDIR?) and find out.
22:16:48shashlickwhat do you set your --nimbleDir to?
22:17:08disruptek!repo nimph
22:17:09disbothttps://github.com/disruptek/nimph -- 9nimph: 11Nim package hierarchy manager from the future 🧚 15 52⭐ 3🍴 7& 1 more...
22:17:19disrupteksee the bootstrap.sh script. that's all i'm doing.
22:17:25Zevv3 cutlery!
22:17:27disruptekno magic here.
22:18:23shashlickso you are just running the bootstrap right
22:18:26disruptekyep.
22:18:32disruptekthe cutlery are strong with this one.
22:18:37dadadaI just want to throw an idea out there, please don't jump on me for it, maybe we could create a Nim application of the month initiative, we would vote on which application is important enough for the nim community as a whole to focus one month worth of all our volunteer work on, let's say we'd vote to focus on nimterop in March, we'd put a "Nimterop is nim application of March 2020" on the nim-lang frontpage
22:18:43dadadaand nim's github page, and we'd boost its development in that months, more devs would get familiar with that applications codebase along the way and it should make at least some progress, progress that in turns helps nim as well, because nim's success hinges on its useful in general, then in April we would move on to something else, the application of the month could also be something belonging to nim's core
22:18:49dadadalike nimsuggest ... okay, now you can shoot me down
22:18:57dom96Zevv, time to join the Unicode working group and suggest a dedicated fork and spoon emoji
22:19:03*skellock sharpens his pitchfork
22:19:06dadadas/all our volunteer work/a decent chunk of our volunteer work
22:19:11disrupteki mean, i said i would fix nimterop's caching problem. i just haven't gotten to it.
22:19:43ZevvSporks and fpoons!
22:19:45FromGitter<alehander92> dom96 would you join in a podcaadt
22:19:48FromGitter<alehander92> podcast*
22:19:59FromGitter<alehander92> i am trying to motivate people
22:20:03FromGitter<alehander92> to do a nim podcast
22:20:04disruptekone of the main reasons i am building nigel is that i hate trying to run tests, having them fail, and then leave all my nimgit2 apps broken.
22:20:06FromGitter<alehander92> :D
22:20:31Araqdadada: I like the idea
22:20:38FromGitter<alehander92> dadada i agree the ecosystem is very important
22:20:45dom96alehander92: maybe, I did a podcast thing with someone once and it never got released
22:20:49dom96So you need to show me you're serious first
22:20:57FromGitter<alehander92> but i also think that often nim requires many new tools/libs, not sure if this fits with it
22:21:12FromGitter<alehander92> maybe something like lib/tool rfc -s
22:21:45disruptekhonestly, adding and bumping dependencies seems more important to me. it's not sexy, but it enhances collab and bugfinding.
22:21:50FromGitter<alehander92> dom96 ah absolutely, i was more trying to motivate people from here to team up and do such a podcast
22:22:03dadadaI could include the application of the month progress in the irregular letter, too :D
22:23:13FromGitter<alehander92> my english is a bit rough and i am probably not the most responsible person for stuff like that
22:23:52FromGitter<alehander92> dadada i can give an example
22:23:58disruptekdadada: what timezone are you in?
22:23:58FromGitter<alehander92> web frameworks
22:24:06*Kaivo quit (Quit: WeeChat 2.7)
22:24:26FromGitter<alehander92> people can expand jester a lot, or work on a more detailed one if jester is supposed to be minimal
22:24:32disruptekit says it's 22:00 where you are.
22:24:38dadadalet's find the most serious podcasters in the programming world and get them in contact with Araq, dom96 and other big guns of the nim world
22:24:42FromGitter<alehander92> i've seen many people start such ambitious projects
22:25:13FromGitter<alehander92> but usually they stop after a while without any mini community
22:25:16dadadadisruptek: it 23:23 here
22:25:18dadadait is
22:25:45disruptekwhat's your native tongue?
22:25:51dadadaGerman
22:25:53FromGitter<alehander92> on the other hand those projects require good design first, so most of the valuable work might be in prototyp-ing how such frameworks/libs would be cool to work
22:26:32FromGitter<alehander92> dadada zah was also in some podcasts about nim before, but in bulgarian
22:26:53skellocki finally got to play around with jester yesterday and had a pretty good experience
22:27:23FromGitter<alehander92> i think its still good to have the equivalent of phoenix/rails
22:27:50FromGitter<alehander92> 1) something very good in api generation
22:28:08disruptekeveryone is always self-conscious about their english, but i'm always amazed at how fluent you all are.
22:29:22dadadadisruptek: I'm thinking words in my head, but then somehow forget them in typing, this happens no matter the language
22:29:49shashlickdisruptek: i don't see why this is happening but am working on some choosenim/nimble/CI issues
22:29:49Zevvthat gives syntax errors, often
22:29:57shashlickwill try it later tonight if i get through this
22:30:03disruptekshashlick: not a blocker, don't worry about it.
22:35:50*Trustable quit (Remote host closed the connection)
22:38:00*skellock quit (Quit: WeeChat 2.7)
22:40:51dadadadisruptek: the simple fact is I'm a nerd and 80% of stuff I consume on the internet is in English, including podcasts, you would have to be a moron in order not to pick up decent written English in this heavily English dominated tech world, for which I'm glad by the way, because it makes this collaboration possible in the first place
22:41:47*filcuc quit (Ping timeout: 240 seconds)
22:42:09disruptekyeah, but it wasn't always this way.
22:43:39*iranika quit ()
22:45:28*iranika joined #nim
22:48:14*Vladar quit (Quit: Leaving)
23:00:58*iranika_ joined #nim
23:01:00*iranika_ quit (Client Quit)
23:04:29*natrys quit (Quit: natrys)
23:05:52*Pqzcih5 quit (Remote host closed the connection)
23:25:07*skellock joined #nim
23:41:26*skellock quit (Quit: WeeChat 2.7)
23:45:54*abm joined #nim
23:52:52*couven92 quit (Quit: Client Disconnecting)
23:57:33*JohnAD joined #nim