<< 15-12-2019 >>

00:00:02*junland quit (Quit: %ZNC Disconnected%)
00:01:44*junland joined #nim
00:02:56leorizeis VLA actually worth it?
00:03:14leorizeif you want really big arrays, a seq will do
00:03:44leorizeif you want safe VLA, it just appears to me that you are re-implementing a static array with extra steps
00:04:16leorizeyou'd still need to check for the size
00:04:21FromDiscord<Clyybber> hmm fair enough
00:04:26leorizeand the generated code might not even be optimal
00:04:46FromDiscord<Clyybber> yeah, maybe it doesn't belong into the language
00:04:59FromDiscord<Clyybber> thankfully its easy to implement them as a package
00:05:03FromDiscord<Clyybber> via alloca
00:05:50leorizemost C projects are getting rid of VLAs, and I don't think it's because they can't make it safe
00:07:36FromDiscord<Clyybber> yeah, maybe it should just be an optimization for seq
00:07:49FromDiscord<Clyybber> svo
00:08:13FromDiscord<Clyybber> maybe gcc alredy does it for seqs (not sure if its smart enough)
00:10:44leorizeoptimization?
00:11:04FromDiscord<Clyybber> small vector optimization
00:11:37leorizeI'm not sure how friendly is the old runtime seqs to gcc :P
00:11:58leorizethe new runtime one is definitely much friendlier though
00:12:04FromDiscord<Clyybber> yeah
00:15:28*ng0 quit (Ping timeout: 260 seconds)
00:16:57*ng0 joined #nim
00:29:20*smitop quit (Quit: Connection closed for inactivity)
00:30:18*njoseph quit (Quit: No Ping reply in 180 seconds.)
00:30:25*njoseph joined #nim
00:55:08*ng0 quit (Quit: Alexa, when is the end of world?)
00:59:42blackbeard420thanks leorize getTypeImpl was exactly what i needed!
01:15:03disruptek`nimph upgrade` is here: https://github.com/disruptek/nimph#upgrade
01:15:40*Hideki_ joined #nim
01:22:59disruptekis it me or is the css is really screwy in latest nimdoc output?
01:26:49disrupteksorry yewpad; i can't take it.
01:36:40leorize:NimTypeOf has arrived in nim.nvim's master branch \o/
01:37:01leorizefeature demo: https://asciinema.org/a/lUnNDz4uMXrKJO4D5n4gZOEoO
01:37:01leorizenothing too fancy, but useful
01:42:22blackbeard420oh wow i need to set that up for my nvim :)
01:47:12*lritter quit (Ping timeout: 268 seconds)
01:47:25*lritter joined #nim
01:49:41*lritter quit (Client Quit)
01:54:21disruptekdamn folding makes it hard to follow what's happening.
01:55:17disruptekthat's cool, though. i will have to mess with that.
01:55:20disrupteknice job.
01:56:52*NimBot joined #nim
02:19:16*Hideki_ quit (Ping timeout: 268 seconds)
03:03:39*Jjp137 quit (Read error: Connection reset by peer)
03:03:57*endragor joined #nim
03:04:01*Jjp137 joined #nim
03:46:35*Kaynatwo joined #nim
03:47:10*thomasross_ joined #nim
03:47:10*thomasross quit (Killed (adams.freenode.net (Nickname regained by services)))
03:47:10*thomasross_ is now known as thomasross
03:48:21*Kaynato joined #nim
03:50:32*Kanato quit (Ping timeout: 268 seconds)
03:51:21*Kaynatwo quit (Ping timeout: 265 seconds)
03:55:03*Jjp137 quit (Read error: Connection reset by peer)
04:04:00*thomasross quit (Read error: Connection reset by peer)
04:17:29*Jjp137 joined #nim
04:29:47*chemist69 quit (Ping timeout: 252 seconds)
04:31:38*chemist69 joined #nim
04:49:24FromDiscord<slymilano> Is there a rails/phoenix like web framework for Nim?
04:53:31*narimiran joined #nim
06:06:10*Hideki_ joined #nim
06:10:56FromGitter<sheerluck> @leorize sorry for off-topic, what are your personal top 3 advantages of neovim over vim?
06:11:02*Hideki_ quit (Ping timeout: 265 seconds)
06:12:18FromDiscord<Kaynato> encountered another strange issue in the postmortem of today's advent of code, time to pare down the error again ....
06:14:31*thomasross joined #nim
06:16:43FromGitter<Varriount> slymilano: Jester?
06:19:33FromDiscord<Kaynato> so I've been using the compile-time dispatch table strategy outlined in https://forum.nim-lang.org/t/5248#33005 and it works fine only sometimes, and for reasons unexplained, other times I get internal error: genObjConstr
06:45:22FromGitter<Varriount> Kaynato: Can you post an example where you receive the genObjConstr error?
06:45:50FromDiscord<Kaynato> I'm trying to pare it down to get the minimal reproduction, but if you wouldn't mind I can send it to you as-is, or as in the wild
06:46:38KaynatoI thought the module I had written was stable, but evidently not... there's so much to get rid of :s
06:54:37KaynatoGah, looks to be issues with inheriting objects as always
06:56:48FromGitter<Kaynato> @Varriount Are you still around to take a look?
07:05:32FromGitter<Varriount> @Kaynato Yes
07:05:51FromGitter<Kaynato> https://play.nim-lang.org/#ix=24t7\
07:06:15Kaynato(extra slash there)
07:06:46FromGitter<Kaynato> I ran koch on it but still don't have a lead
07:24:36*gour joined #nim
07:40:51AraqKaynato: looks like a very complicated setup
07:58:58*nsf joined #nim
08:00:00*gmpreussner quit (Quit: kthxbye)
08:02:47*solitudesf-- joined #nim
08:05:13*gmpreussner joined #nim
08:07:19FromGitter<sheerluck> @leorize I patched nimsuggest/nimsuggest.nim like this: ⏎ ⏎ ```code paste, see link``` ⏎ ⏎ and now, when I exit neovim, I no longer see `nimsuggest instance for project boo stopped with exitcode: 143` [https://gitter.im/nim-lang/Nim?at=5df5e9b7dbf24d0becf15499]
08:11:37*narimiran quit (Ping timeout: 240 seconds)
08:16:17*gour quit (Remote host closed the connection)
08:17:34*gour joined #nim
08:17:40FromDiscord<Kaynato> It makes a bit more sense in the wild
08:44:42FromDiscord<mratsim> @Clyybber why don't you just use Alloca?
08:50:10*solitudesf-- quit (Quit: Leaving)
08:50:31*solitudesf joined #nim
09:20:30FromDiscord<mratsim> And VLA don't work except in C99 so you wouldn't be able to use them with C++
09:49:28*letto quit (Quit: Konversation terminated!)
09:49:56*letto joined #nim
09:53:41madpropswalkDirRect doesn't take into account dirs without files hmm
09:55:39FromGitter<Varriount> Madprops: Sounds like a point for improvement
09:56:02madpropswalkDirRec* btw
09:56:40madpropsoh wait
09:56:51madpropsthere's yieldFilter
09:58:16madpropsyeah, it already does that
09:59:50madpropsyieldFilter={pcFile, pcDir}
10:00:51madpropsaraq thinks of everything
10:00:55madpropsor whoever made this
10:04:24leorize@sheerluck: you only need to do that for SIGTERM, there's a handler for SIGINT already
10:04:35leorizebut please PR that one :)
10:07:54*Hideki_ joined #nim
10:11:57*Hideki_ quit (Ping timeout: 240 seconds)
10:14:10leorize@sheerluck: also if you're on gitter you can join nim-lang/twitch, that's the off-topic channel
10:32:01*ng0 joined #nim
10:36:34*Hideki_ joined #nim
10:41:39leorize@sheerluck, disruptek, Zevv: more feature teasers for nim.nvim: https://asciinema.org/a/rA5weNC3gQAdoyEEeYqjRsGBY
10:46:08*lritter joined #nim
11:02:08lqdev[m]are signals POSIX or libc?
11:02:17leorizeposix
11:02:43leorizethe libc is specified in posix also :P
11:03:12lqdev[m]I was wondering how to do signal handling in Nim
11:03:43leorizeunless you have good reasons, signal handling is a pitfall
11:06:07Zevvleorize: overdoing it dude, overdoing it
11:06:47leorizeZevv: well, I couldn't sleep :P
11:07:51leorizedidn't you request this feature?
11:09:57*Hideki_ quit (Remote host closed the connection)
11:10:02Zevv*sooo* overdoing it :)
11:10:35leorizepushed to master :)
11:10:39leorizenow `K` works \o/
11:10:39Zevvnice job! \o/
11:10:40*Hideki_ joined #nim
11:13:24leorizeguess it's about time to make a new demo, any recommended snippets of code that I could use?
11:15:09*Hideki_ quit (Ping timeout: 268 seconds)
11:24:22*gour quit (Remote host closed the connection)
11:28:51*Hideki_ joined #nim
11:29:02*gour joined #nim
11:30:12*Hideki_ quit (Remote host closed the connection)
11:31:10*Hideki_ joined #nim
11:31:45*Hideki_ quit (Remote host closed the connection)
11:31:55leorizeZevv: just in case you updated, I've just pushed a hotfix to master :P
11:32:00leorizeI broke suggestions :P
11:32:00*Hideki_ joined #nim
11:33:21*Hideki_ quit (Remote host closed the connection)
11:34:00*Hideki_ joined #nim
11:34:06*Hideki_ quit (Remote host closed the connection)
11:34:20*Hideki_ joined #nim
11:34:35*tane joined #nim
11:37:38*Hideki_ quit (Client Quit)
11:40:10*Hideki_ joined #nim
12:01:38FromGitter<Willyboar> @madprops are you here?
12:04:43FromGitter<Willyboar> I tested all the flags in lq and worked like a charm.
12:05:05FromGitter<Willyboar> I install it with nimble by the way
12:05:32FromGitter<Willyboar> The only thing i would like to see is some message if the folder is empty
12:06:05FromGitter<Willyboar> or with the exec flag to print something like "no executables here"
12:12:07*gour quit (Remote host closed the connection)
12:12:36*gour joined #nim
12:14:09madpropsWillyboar you mean something apart from --count that counts items in directories?
12:14:16madpropsand always show "Executables" but show there's nothing?
12:14:38*gour quit (Remote host closed the connection)
12:14:40FromGitter<Willyboar> i mean when a folder is empty
12:14:46FromGitter<Willyboar> or there is no exec
12:15:06*gour joined #nim
12:15:21madpropsoh like running the command inside an empty dir
12:15:33FromGitter<Willyboar> yeap. exactly
12:15:48FromGitter<Willyboar> a grey italic text would be nice :P
12:20:26*dddddd quit (Remote host closed the connection)
12:22:28*fanta1 joined #nim
12:23:22*Hideki_ quit (Remote host closed the connection)
12:23:43*Hideki_ joined #nim
12:25:37madpropsWillyboar, wouldn't it be better to show the header instead, which includes the count? http://i.imgur.com/6qYkoJq.png
12:29:54madpropsand i don't know if it should show titles if there are no items, it could be too verbose
12:30:01madpropslike Files or Executables, if there are none
12:38:20madpropsthough i like that it'd have a fixed structure, so im gonna try something
12:43:58*laaron joined #nim
12:55:45*zyklon quit (Quit: Konversation terminated!)
12:56:01*zyklon joined #nim
12:59:41*ng0 quit (Quit: Alexa, when is the end of world?)
13:16:06*narimiran joined #nim
13:26:55*krux02 joined #nim
13:29:11disruptekhearts and minds, people; hearts and minds!
13:35:08*Hideki_ quit (Remote host closed the connection)
13:36:20*Hideki_ joined #nim
13:41:18*Hideki_ quit (Ping timeout: 268 seconds)
13:43:36FromDiscord<mratsim> Any idea on avoiding nimble erroring after installing a package? https://dev.azure.com/numforge/Weave/_build/results?buildId=20 and https://travis-ci.com/mratsim/weave/jobs/267371080#L2547
13:45:02*fanta1 quit (Quit: fanta1)
14:15:18*gour quit (Remote host closed the connection)
14:15:42*gour joined #nim
14:17:20lqdev[m]https://play.nim-lang.org/#ix=24uQ is there a way of getting an ntyInt in this case?
14:17:57lqdev[m]I guess that's only possible using an int literal, right?
14:19:54*Hideki_ joined #nim
14:22:31*Hideki_ quit (Remote host closed the connection)
14:22:45*Hideki_ joined #nim
14:23:05blackbeard420i have a buffer that i allocate with alloc0, then pass it to a c function that returns the length written into the buffer. back on the nim side i cast it via cast[ptr UncheckedArray](buf) and it somehow already knows the length read without using the return value. how is this possible?
14:24:02lqdev[m]blackbeard420: it's your code. UncheckedArray doesn't have a len.
14:24:23*gour quit (Remote host closed the connection)
14:24:46*gour joined #nim
14:25:57blackbeard420i understand but echo `&"pre recv {cast[ptr UncheckedArray[char]](buff).len()}"` returns 0 and `echo &"post recv {cast[ptr UncheckedArray[char]](buff).len()}"` returns the correct amount returned from the c function *without* me giving it the length
14:26:37*gour quit (Remote host closed the connection)
14:27:01*gour joined #nim
14:27:13lqdev[m]that's very weird
14:28:34*gour quit (Remote host closed the connection)
14:29:01*gour joined #nim
14:30:39*gour quit (Remote host closed the connection)
14:31:10lqdev[m]Nim's being confusing again. https://play.nim-lang.org/#ix=24uU
14:35:02*Vladar joined #nim
14:36:31lqdev[m]why are the two `Sym "int"`s different?
14:36:50lqdev[m]one's the proper ntyInt, the other one's ntyTypeDesc
14:37:05lqdev[m]the worst part is, this works fine for proc params
14:37:43lqdev[m]eg. the first param of `proc (x: int)` is a `Sym "int"`, typeKind == ntyInt
14:39:36lqdev[m]anyone here experienced enough with macros who could help me?
14:42:28*gour joined #nim
14:46:10*Hideki_ quit (Remote host closed the connection)
14:47:27*Hideki_ joined #nim
14:47:30*Hideki_ quit (Remote host closed the connection)
14:48:10*Hideki_ joined #nim
14:49:51FromGitter<Milerius> Is it possible in nim to implement an c++ interface ?
14:50:46FromGitter<bung87> that depends on what kind of interface
14:50:55FromGitter<Milerius> I have for example: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5df6484f55d939230015dfa5]
14:51:20FromGitter<Milerius> Can I create a concrete book directly in Nim ? :p
14:51:40*Hideki_ quit (Remote host closed the connection)
14:51:55*Hideki_ joined #nim
14:52:16*pbb quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
14:52:17FromGitter<bung87> better creawte concrete book , or use concept ?
14:52:38FromGitter<Milerius> I Use c++ library in nim that have interface that I need to implement
14:52:54*pbb joined #nim
14:52:58FromGitter<Milerius> Ideally I can import the Header into nim, but after can I implement the concrete object
14:54:29FromGitter<bung87> I dont think so, better just create concrete type, not inherited
14:54:33FromGitter<Milerius> https://forum.nim-lang.org/t/3313#26470 ⏎ ⏎ Based on this post.
14:56:11FromGitter<Milerius> May be I can use the emit functionnality
14:56:17FromGitter<bung87> embed type? maybe you can try
14:57:20FromGitter<bung87> so you Have three options , directly define the type, or using concept ,or using this technic
14:58:43FromGitter<Milerius> Hmm
14:59:48*lqdev joined #nim
15:00:27*lqdev quit (Client Quit)
15:10:20*natrys joined #nim
15:15:48*Vladar quit (Quit: Leaving)
15:16:11*Hideki_ quit (Remote host closed the connection)
15:16:55*Hideki_ joined #nim
15:20:57*Hideki_ quit (Ping timeout: 240 seconds)
15:25:19madpropshmm this is adding like 200ms to some operationhttps://play.nim-lang.org/#ix=24vf
15:25:37madpropshttps://play.nim-lang.org/#ix=24vf
15:25:58madpropswhen analyzing some directory with thousands of files
15:26:31madpropsactually i don't know why im using *
15:32:51madpropsre(&"{e}{os.DirSep}") made it just a bit faster
15:35:39madpropsusing contains insteado of re reduces it by 150ms
15:40:29FromDiscord<mratsim> The ARM machines on Travis have a whopping 32 cores
15:46:47FromGitter<bung87> so can be used not just building and tests :)
15:50:14planetis[m]https://github.com/nim-lang/Nim/pull/11526/files seems like krux02 also hates typedesc :)
15:50:15disbotgetCustomPragma is split up in more usable chunks
15:55:15planetis[m]seems my first message wasn't delivered
15:55:23planetis[m]lqdev: you can do if node.kind == nnkBracketExpr: node = node[1]
15:59:07lqdev[m]@planetis I looked through the link you sent, then I tried `getTypeInst` and it worked
16:00:02lqdev[m]I basically just did `while ty.typeKind == ntyTypeDesc: ty = ty.getTypeInst[1]`
16:18:50*Hideki_ joined #nim
16:23:23*sealmove joined #nim
16:29:42*Hideki_ quit (Ping timeout: 265 seconds)
16:35:46disruptektell me something good, humans.
16:36:05FromGitter<Willyboar> like?
16:46:24*gour quit (Remote host closed the connection)
16:46:54*gour joined #nim
16:48:59*gour quit (Remote host closed the connection)
16:49:23*gour joined #nim
16:53:38*gour quit (Remote host closed the connection)
16:54:06*gour joined #nim
16:59:19sealmovedisruptek: something good, humans.
17:04:33federico3is parsecfg unable to extract a list of sections? :-/
17:11:29*pbb quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
17:12:22lqdev[m]federico3: uh?
17:12:33*pbb joined #nim
17:16:53*ng0 joined #nim
17:19:14federico3lqdev[m]: https://github.com/nim-lang/Nim/issues/12904
17:19:15disbotparsecfg does not expose a list of section names
17:21:17*pbb quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
17:21:43*pbb joined #nim
17:22:30*pbb quit (Client Quit)
17:22:58*pbb joined #nim
17:22:58*pbb quit (Client Quit)
17:23:19*pbb joined #nim
17:27:11*dddddd joined #nim
17:30:17madpropssoring 11425 items alphabetically takes around 400ms
17:30:21madpropssorting*
17:32:16madpropsusing sortedByIt
17:35:07madprops300ms of that was .toLower()'ing the strings
17:42:56leorizewrite your own .toLower then
17:43:20Yardanicomadprops: your strings contain utf8 chars or only ascii ones?
17:46:32madpropsYardanico, well they're paths, like directories and files
17:46:46madpropsnot sure those have full utf-8
17:48:14FromGitter<Willyboar> disruptek
17:48:17FromGitter<Willyboar> https://github.com/apps/julia-tagbot
17:49:15disrupteki actually thought about just auto-tagging when i close an issue, according to the labels on the issue.
17:49:35lqdev[m]federico3: I see, basically it doesn't export `tables` am I right?
17:49:37disruptekie. a bug being closed would bump the patchlevel on that commit.
17:49:43disruptekfederico3: yes.
17:50:01disruptekclosing an enhancement issue would tag a minor release.
17:50:34disruptekanyway, the tagging problem is solved with `nimph tag`. it does the right thing.
17:50:55FromGitter<Willyboar> this would be cool
17:51:43disruptekthe julia approach involves another registry, which i don't really think we need.
17:52:28Zevvis there an easy/obvious way to make closure iterators behave under recursion?
17:52:45*nsf quit (Quit: WeeChat 2.6)
17:53:13disrupteki thought that was highly discouraged.
17:57:36sealmovehow should i print a NimNode for debugging?
17:57:47disruptektreeRepr?
17:57:53Yardanicoor lispRepr :P
17:58:04lqdev[m]or `repr`.
17:58:36sealmovethanks guys
18:12:01Zevvdisruptek: it is discouraged because it does not work. But every now and then I just type and use these things, only later figuring out that I'm recursing
18:13:51FromDiscord<k1tt3hk4t> is there any way to run a shell command in the background without needing to manually close it?
18:15:02FromDiscord<k1tt3hk4t> something like execCmdEx but non-blocking basically
18:15:29Yardanicowell there's startProcess
18:15:29Yardanicohttps://nim-lang.org/docs/osproc.html#startProcess%2Cstring%2Cstring%2CopenArray%5Bstring%5D%2CStringTableRef%2Cset%5BProcessOption%5D
18:15:38Yardanicoand close is only needed to "cleanup related handles"
18:15:41*gour quit (Remote host closed the connection)
18:16:06FromDiscord<k1tt3hk4t> it says in the docs "You need to close the process when done."
18:16:06*gour joined #nim
18:16:17FromDiscord<k1tt3hk4t> 🤔
18:16:18Yardanicoread `close` proc doc
18:16:21Yardanico"When the process has finished executing, cleanup related handles."
18:21:20disruptek!issue selectors descriptor leak
18:21:21disbothttps://github.com/nim-lang/Nim/issues/12354 -- 3selectors API encourages signal file descriptor leak
18:21:25disruptekfyi
18:23:18FromDiscord<k1tt3hk4t> interesting-- I don't think that impacts me as I'm not using registerProcess (??)
18:23:36disruptekZevv: i wish there were an acceptable solution; i find myself wanting that pattern all the time.
18:24:39disruptekit's just something to be aware of. there are a lot of startProcess issues, but most of them are down to criticism absent implementations. this is something that can bite you even if you are using what limited support is there.
18:29:01FromDiscord<k1tt3hk4t> gotcha
18:29:56Zevvdisruptek: talking the iterators or talking the startprocess bugs?
18:30:10disruptekiterators.
18:30:47Zevvyeah, it just kind of avoid them now and use function arguments
18:31:00disruptekyou mean accumulators?
18:31:16*luis_ joined #nim
18:31:26*luis_ quit (Client Quit)
18:31:33Zevvno procs taking callback function
18:31:42disruptekright.
18:31:46Zevvnot wrong!
18:32:12disrupteki need to write for: ... else: and while: ... else:
18:32:14FromDiscord<Fern & Simula (They/Them)> any way to check if a NimNode is some kind of literal without manually checking every Lit in NimNodeKind?
18:32:17disruptekmight take a crack at that today.
18:32:40*luis_ joined #nim
18:32:48FromGitter<Willyboar> disruptek i would like to work with you in a project sometime
18:32:57disruptekgo for it, buddy!
18:33:20disruptekyou're a web guy, right?
18:33:27FromGitter<Willyboar> yep
18:33:36disruptekcome work on auctionhero.io.
18:34:08disruptekthe web is beyond my old and shriveled brain.
18:35:09*luis_ quit (Remote host closed the connection)
18:35:27federico3lqdev[m]: a dedicate process would be better
18:35:46*luis_ joined #nim
18:42:16*nsf joined #nim
18:46:00*luis__ joined #nim
18:46:10FromGitter<Willyboar> I would like to work to something new
18:46:21disruptekwhat do you have in mind?
18:46:43*luis_ quit (Remote host closed the connection)
18:48:35FromGitter<Willyboar> I would be interesting to help to a full stack framework
18:48:46FromGitter<Willyboar> I have the time but i dont have the knowledge
18:49:46disruptekbut you do. if you know the web, you know what has to happen.
18:50:20disruptekyou know what sucks about today's tools?
18:50:28FromGitter<Willyboar> what?
18:50:30Yardanicojs
18:50:33disrupteki'm asking.
18:50:57FromGitter<Willyboar> in nim?
18:51:09disrupteklike, i know what i hate about nimble. i know what other people want. so i go and build the thing that meets those goals.
18:51:28disruptekwith your expertise in the web, you can do the same thing in nim.
18:53:00stefantalpalaruPlease remind me what --lineTrace does and how does it relate to --stackTrace.
18:53:30disruptekwillyboar: you know what sucks about karax?
18:53:56FromGitter<Willyboar> Nope.
18:54:12disruptekwhy do you want to replace it, then?
18:54:28FromGitter<Willyboar> Karax is different
18:54:32disruptekmaybe it just needs to be better documented and advertised.
18:55:11*luis__ quit (Remote host closed the connection)
18:55:44FromGitter<Willyboar> I think we need something like rails. Crystal has 2 for example.
18:56:27*luis_ joined #nim
18:56:57disruptekmaybe you should build something on fidget.
18:57:03disruptek!repo fidget
18:57:04disbothttps://github.com/treeform/fidget -- 9fidget: 11Figma based UI library for nim, with HTML and OpenGL backends. 15 59⭐ 3🍴
18:57:38disruptekmake it so easy than even an old mechanic like me can do it.
18:58:34livcdwhat is auctionhero ? :D
18:58:49*luis_ quit (Remote host closed the connection)
18:58:53FromGitter<zacharycarter> does anyone use rails anymore?
18:58:54disruptekhttps://auctionhero.io/
18:59:01FromGitter<zacharycarter> I used grails - and it was terrible
18:59:19*luis_ joined #nim
19:00:12FromGitter<Willyboar> Well a lot of people i think.
19:01:30FromGitter<bung87> the company Im working using rails
19:01:41FromGitter<Willyboar> I am watching figma but i think is ui
19:02:09livcdbung87: where do you reside ? what city?
19:02:27FromGitter<bung87> china,beijing
19:02:40disruptekit seems like you have an idea on what you want to build; what is it?
19:02:56FromGitter<Willyboar> I thing this type of framework is missing from nim.
19:03:33disrupteki think there are a few implementations, but maybe nothing that really collects the best-of-breed and glues them together.
19:03:40disrupteklike turbogears tried to do with python.
19:03:53FromGitter<bung87> I think it is most saving time web framework
19:04:07FromGitter<Willyboar> The nearest lib to rails is xander
19:04:22disruptek!repo xander
19:04:22disbothttps://github.com/sunjohanday/xander -- 9xander: 11Xander: A Nim web application framework 15 41⭐ 4🍴
19:04:25federico3bung87: how do you pull packages from github?
19:04:41FromGitter<bung87> other language such like framework offten need more code
19:05:12FromGitter<bung87> I can directly access to github
19:05:26livcdI would honestly keep using what's kinda popular. If something breaks you are on your own
19:05:39FromGitter<bung87> but have problem with githubusercontent
19:06:40livcdWinnie The Pooh
19:06:42livcdsorry...
19:11:31FromGitter<Willyboar> I think xander abandoned
19:14:11*luis_ quit (Ping timeout: 252 seconds)
19:17:14FromGitter<Willyboar> Except that there is 2-3 projects but is based in jester.
19:17:18FromGitter<bung87> I Read the previous dissucss,
19:17:41disruptekwhat's bad about jester?
19:18:07FromGitter<bung87> thinking if you have time you can starting looking at python flask
19:19:33FromGitter<Willyboar> I know flask. I played a lot with it in the past.
19:20:07FromGitter<Willyboar> Jester is wonderful but is a micro framework
19:21:57FromGitter<bung87> what make rails special? It get benefit from the ruby language, tools such like bundle, makes rails easible to plugable
19:22:28FromGitter<Willyboar> The speed of development
19:23:15FromGitter<bung87> in other language , even you can have all the lib you needs, you also spend much time to configuring for bundle there things works together.
19:24:13FromGitter<bung87> but in rails , configuring is very simple, even doest need import lib...
19:25:12FromGitter<bung87> yeah comparing , django and rails , you know what I mean
19:27:06FromGitter<Willyboar> This type of frameworks attracts devs and helping a language to grow.
19:27:55FromGitter<Willyboar> Ruby wouldn't be so popular without rails.
19:29:27FromGitter<bung87> yeah, many small business needs developing product delivery it to customer, they need such a framework
19:30:31disruptekso what's missing?
19:30:55FromGitter<Willyboar> The library :)
19:31:47disruptekwhy don't you write an example program that uses this library so we can see what it looks like?
19:33:04FromGitter<Willyboar> What did you mean?
19:33:35FromGitter<Willyboar> What library?
19:33:49disruptekwrite a problem that uses the hypothetical library (that remains to be written) so we can get excited about what it provides us.
19:33:57FromGitter<bung87> in my opinion, who has ablity to develop such a framework , doest not have much interest in it .
19:34:00disrupteks/problem/program/
19:34:29*hexeratops joined #nim
19:34:34FromGitter<Willyboar> This is true.
19:35:13FromGitter<bung87> they just tire of developing web site - -
19:35:33livcdWillyboar: Soo..do you think Karax is a sufficient framework for a SPA ?
19:37:21*luis_ joined #nim
19:37:22FromGitter<Willyboar> I haven't used karax.
19:37:55disrupteki think you should kick the tires on some of these packages to see what's good/bad about them.
19:37:56FromGitter<Willyboar> But i heard great things
19:38:31FromGitter<Willyboar> You mean the nim ones?
19:38:38disruptekof course.
19:38:42disruptekwhat are you waiting for?
19:38:45disruptekchristmas?
19:38:49FromGitter<Willyboar> I used a lot of other language frameworks
19:39:38livcdWillyboar: Try to build something and see what you are missing
19:39:43livcdMaybe clone nimforum for a reference ?
19:41:28FromGitter<Willyboar> But that's what i am saying. I know what is missing.
19:43:42FromGitter<Willyboar> Also i don't think i am capable to build something like that.
19:44:19FromGitter<bung87> no, if you have time , you can build anything
19:44:29livcdWhat is missing ?
19:45:34FromGitter<Willyboar> A framework with batteries included
19:45:55livcdBut what batteries exactly ?
19:46:31FromGitter<Willyboar> Db migrations, scaffolding, assets
19:48:37disrupteki'll tell you what would be killer.
19:48:58disruptekfigure out hcr with nim/js for the web.
19:49:00livcdnimroutines?
19:49:52disruptekbuild a hcr workflow that goes into production and you have something pretty tasty.
19:50:45FromGitter<zacharycarter> hcr already works with Nim for the js backend
19:50:48FromGitter<zacharycarter> I've used it before
19:51:02disruptekyes, but it needs some glue iirc.
19:51:41*liam_ joined #nim
19:52:25disrupteki'm thinking something like figwheel for clojurescript.
19:52:29FromGitter<Willyboar> What is hcr?
19:52:35disruptekhot code reloading
19:52:41disruptek!repo figwheel clojurescript
19:52:43disbothttps://github.com/bhauman/lein-figwheel -- 9lein-figwheel: 11Figwheel builds your ClojureScript code and hot loads it into the browser as you are coding! 15 2764⭐ 221🍴 7& 29 more...
19:53:43FromGitter<zacharycarter> I think rails is fine if you're building a simple CRUD app
19:54:07FromGitter<zacharycarter> if you're doing anything else, IMO, you're better served just writing your own backend and using karax / react
19:55:19FromGitter<Willyboar> I think i saw somewhere something like this in nim
19:56:52FromGitter<zacharycarter> something like what?
19:56:57FromGitter<zacharycarter> oh figwheel
19:57:16FromGitter<zacharycarter> yeah, like I said - Nim can do this already
19:57:42disruptekit could be made easier.
19:57:53FromGitter<Willyboar> Yes rails is for specific type of apps
19:57:53FromGitter<zacharycarter> well sure - but JS tooling is abysmal
19:58:17disruptekwe shouldn't let that limit us.
19:58:47FromGitter<zacharycarter> I mean - I don't think it's that hard in the first place
19:59:06FromGitter<zacharycarter> most people building FE web apps these days are using some type of bundler - like webpack
19:59:43FromGitter<zacharycarter> and I'm pretty sure Nim HCR works pretty well in that paradigm
19:59:53FromGitter<zacharycarter> with webpack dev server
20:00:15disruptekwebpack dev server is useless.
20:00:26FromGitter<zacharycarter> I'd rather see Nim get a WASM target
20:00:32FromGitter<zacharycarter> than any more time be spent on the JS backend
20:00:41FromGitter<Willyboar> Imagine a railish framework with nim performance
20:00:43disruptekagree, but nlvm already exists.
20:00:53FromDiscord<Fern & Simula (They/Them)> is there a point to the other backends (aside from js) for just a plain binary
20:00:55FromDiscord<Fern & Simula (They/Them)> ?
20:00:59FromGitter<zacharycarter> yeah - it just needs to have more attention paid to it
20:01:04FromGitter<zacharycarter> yes
20:01:22FromDiscord<mratsim> It has attention: https://notes.status.im/devcon5-ewasm-golfing#
20:01:34FromGitter<zacharycarter> I've never used the Objective-C backend
20:01:38FromGitter<zacharycarter> but I use the C++ backend in my project
20:01:43FromGitter<zacharycarter> since I'm compiling C++ code
20:01:47FromGitter<zacharycarter> noice!
20:02:02FromDiscord<mratsim> it was presented to a wide audience of the biggest crypto dev conference in october
20:02:20FromDiscord<Fern & Simula (They/Them)> zacharcyarter: ah, that makes sense. thanks!
20:02:21FromGitter<zacharycarter> @Willyboar - I don't like rails, so the idea doesn't really spark a lot of interest in me
20:02:43FromGitter<zacharycarter> Fern & Simula (They/Them): no problem
20:02:54FromDiscord<mratsim> and Ethereum 2 (what were working on) is very probably going to use Wasm
20:03:02FromGitter<zacharycarter> I think frameworks in general kind of suck
20:03:19FromGitter<zacharycarter> spring / rails / etc...
20:03:39FromGitter<zacharycarter> not a fan of these things
20:03:50FromDiscord<Fern & Simula (They/Them)> flask and django are nice
20:03:55FromGitter<Willyboar> If you are experienced developer you prefer to have the control.
20:04:05FromDiscord<Fern & Simula (They/Them)> though theres a spot where flask is too little, and django is too much :/
20:04:09FromGitter<zacharycarter> I just prefer not to spend all my time in configuration files
20:04:15FromDiscord<mratsim> The trap is probably not escaping the framework once you grow out of its domain. Using them for rapid prototyping is probably fine
20:04:25FromGitter<zacharycarter> which you inevitably end up doing with these frameworks
20:04:34disruptekexpress is pretty much right-size in my experience.
20:04:42disruptekthere's a nim express clone.
20:04:44FromGitter<zacharycarter> yeah - and that's just a web app server really
20:04:45disruptek!repo nim express
20:04:46disbothttps://github.com/ducdetronquito/express -- 9express: 11A toy Nim web framework heavily inspired by ExpressJS 🚀🌘 15 6⭐ 0🍴 7& 1 more...
20:04:54FromGitter<zacharycarter> I think Jester is pretty nice
20:05:05FromGitter<zacharycarter> karax + jester IMO make a good combo
20:05:20*luis_ quit (Ping timeout: 276 seconds)
20:05:52FromGitter<Willyboar> disruptek i am watching it too
20:06:19FromDiscord<mratsim> usually when you fell th need to escape the framework you would have secure more resources (dev money tme)
20:06:23FromGitter<zacharycarter> express is indeed nice though - whenever I'm writing a NodeJS backend I use it
20:06:42disrupteki really liked percolator
20:06:46disruptek!repo percolator
20:06:48disbothttps://github.com/percolator/percolator -- 9percolator: 11Semi-supervised learning for peptide identification from shotgun proteomics datasets 15 70⭐ 22🍴 7& 29 more...
20:06:53disruptekno, that ain't it.
20:07:01disruptek!repo percolator express
20:07:03disbotno results 😢
20:07:28FromDiscord<mratsim> !repo nim
20:07:30disbothttps://github.com/nim-lang/Nim -- 9Nim: 11Nim is a compiled, garbage-collected systems programming language with a design that focuses on efficiency, expressiveness, and elegance (in that order of priority). 15 8474⭐ 936🍴 7& 29 more...
20:07:42FromDiscord<mratsim> (sanity check)
20:07:44*abm joined #nim
20:07:48FromGitter<zacharycarter> bleh - rendering to a framebuffer works fine on metal, but d3d11 is being a lil bitch
20:07:58FromGitter<zacharycarter> and I can't figure out why
20:08:04disruptek!repo percolator nide
20:08:06disbotno results 😢
20:08:08disruptek!repo percolator node
20:08:09disbothttps://github.com/cainus/percolator -- 9percolator: 11Percolator is a framework for quickly and easily building quality HTTP APIs in Node.js 15 118⭐ 7🍴 7& 2 more...
20:09:26FromGitter<zacharycarter> (https://files.gitter.im/nim-lang/Nim/8r1G/image.png)
20:09:27FromGitter<zacharycarter> I don't know where these artifacts are coming from
20:09:40*nsf quit (Quit: WeeChat 2.6)
20:09:46FromDiscord<k1tt3hk4t> do `net` sockets do some kind of buffering or cooldown even when told not to? I wrote an IRC bot using it and the latency is AMAZINGLY low, but only when given a few seconds between messages-- if I, say, spam 10 messages, it takes like 2-3 seconds for each one to be received
20:10:18disruptekthe server is probably adding that.
20:10:32FromGitter<zacharycarter> if I don't render to a framebuffer -
20:10:40FromGitter<zacharycarter> (https://files.gitter.im/nim-lang/Nim/inXU/image.png)
20:11:09disruptekit's like a rounding error.
20:11:20FromGitter<zacharycarter> k1tt3hk4t I think the net sockets are blocking
20:11:47FromGitter<zacharycarter> I use enet
20:11:57FromGitter<zacharycarter> for non-blocking udp sockets - but you're probably using tcp
20:12:11FromGitter<zacharycarter> disruptek: yeah - I'm not sure what's causing it
20:12:19FromDiscord<k1tt3hk4t> the thing is I tried async sockets and they had the exact same problem
20:12:34disruptekstill think the server is adding flood control.
20:13:35disruptekcould be an off-by-one error, too.
20:13:41*luis_ joined #nim
20:14:19FromDiscord<k1tt3hk4t> how do you mean?
20:14:31disruptekthat was for zacharycarter.
20:14:36FromDiscord<k1tt3hk4t> oh ok lol
20:15:40*luis_ quit (Client Quit)
20:16:52FromGitter<zacharycarter> yeah - I will likely need to dig into renderdoc to figure this one out
20:26:35*Hideki_ joined #nim
20:31:07*Hideki_ quit (Ping timeout: 250 seconds)
20:36:16*Trustable joined #nim
20:46:07*gour quit (Remote host closed the connection)
20:53:53*gour joined #nim
20:59:50FromDiscord<Clyybber> @mratsim did the backloff deadlock resurface again?
21:05:12*narimiran quit (Quit: leaving)
21:11:20FromGitter<Obround> Hello! How do you assign a type's object to one of the type's methods? I'v tried this: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5df6a178e7265623014dd99d]
21:36:34*liam_ quit (Quit: Leaving)
21:40:26*Trustable quit (Remote host closed the connection)
21:50:21*clyybber joined #nim
21:51:09*clyybber quit (Client Quit)
22:04:19sealmovehow exactly does static[Type] work?
22:04:37*disruptek quit (Ping timeout: 240 seconds)
22:05:07*disbot quit (Ping timeout: 268 seconds)
22:06:05sealmovewhen I pass a string to macro, it is passed as NimNode, but when I try to extract its value, I get "Error: node lacks field: strVal"
22:06:35*disbot joined #nim
22:06:39sealmoveand if I pass it as static[string], I get type missmatch (expected static[string] but got string)
22:06:43sealmove:s
22:07:28*disruptek joined #nim
22:08:34sealmovehey disruptek, can you help out?
22:10:04*tribly quit (Quit: WeeChat 2.6)
22:10:47*tribly joined #nim
22:20:25FromGitter<bung87> https://www.freebsd.org/cgi/man.cgi?query=getfsstat&sektion=2&manpath=freebsd-release-ports
22:21:04FromGitter<bung87> how to find where the c header file is ?
22:21:34*disruptek quit (Ping timeout: 265 seconds)
22:22:29*disbot quit (Ping timeout: 276 seconds)
22:22:34FromGitter<bung87> it described as `Standard C Library (libc, -lc)`
22:23:18*disbot joined #nim
22:24:13*disruptek joined #nim
22:27:32*tane quit (Quit: Leaving)
22:28:24*natrys quit (Quit: natrys)
22:28:45*NimBot joined #nim
22:29:50FromDiscord<Clyybber> disruptek: What terminal emulator do you use with wayland? Apparently alacritty fails to start due to https://github.com/jwilm/alacritty/issues/2714
22:29:52disbotUnable to launch alacritty in GNOME Wayland session ; snippet at 12https://play.nim-lang.org/#ix=24xY
22:30:59disruptekkitty
22:31:32sealmovekitty is awesome
22:31:53disruptekwhy are you running gnome?
22:32:02sealmovedisruptek: i saw you use fish, are you aware of elvish?
22:32:18disruptekyeah, there are a couple neat new shells out there.
22:33:05sealmoveany other that caught your eye?
22:33:05disrupteki feel like fish is portable enough for me, but not sure i wanna go to oil or whatever.
22:34:04disruptekit's exciting to think that we might see some development in shells, though. it's crazy how stagnant they are.
22:34:36sealmoveikr!
22:34:49sealmoveprogramming language pop up so fast, i wonder why not shells
22:35:40disrupteki don't get it. i just can't believe that we're really being constricted by... posix, as araq would say.
22:36:40sealmovewe should have a shell initiated in Nim
22:36:42disruptekis elvish your daily carry?
22:36:44sealmoveinitiative*
22:36:47sealmoveyeah
22:36:59disruptek!repo commandant
22:37:00disbothttps://github.com/Varriount/commandant -- 9commandant: 11Bash/Command Prompt-Like Program Written in Nim 15 5⭐ 1🍴
22:37:01FromDiscord<Clyybber> sealmove: Someone is working on it
22:37:13FromDiscord<Clyybber> yep that one
22:37:19sealmovei know about commandant, it doesn't seem ambitious enough
22:38:15FromDiscord<Clyybber> I currently use fish
22:38:19sealmove(<shy> I might be wrong though)
22:38:44FromDiscord<Clyybber> I feel like most of these new shells are innovating in the "wrong" direction
22:38:54FromDiscord<Clyybber> going away from string as the main data format
22:38:55sealmovefish and elvish are the best imo
22:41:27disruptekwhat makes a good shell?
22:42:54sealmovesyntax is everything, then ergonomics (non-language features) are very important
22:43:14solitudesfnot being bash
22:43:22disruptekrude.
22:43:46sealmoveit's a complex question, but first step is... yeah, not being bash :D
22:43:57solitudesfit is rude. bash users need to WAKE UP
22:44:11disruptekbut why gnome?
22:44:21disruptekclyybber: what's it good for?
22:46:29disruptekthe thing that's great about fish is command completion. it's one of those game-changers that you don't realize matters until you have it in-hand.
22:46:37disrupteklike face-unlock on the iphone.
22:46:54FromDiscord<Clyybber> disruptek: Whats what good for?
22:47:03FromDiscord<Clyybber> Btw, just tried kitty. Doesn't work either
22:47:08disruptekclybber: gnome.
22:47:14FromDiscord<Clyybber> But I think its not an issue with the apps
22:47:20FromDiscord<Clyybber> disruptek: Dunno, don't use gnome
22:47:34disrupteki guess i misread the issue.
22:47:58FromDiscord<Clyybber> yeah it is about gnome, but I thought I was suffering from the same issue
22:48:05FromDiscord<Clyybber> I was wrong though (I think)
22:48:21FromDiscord<Clyybber> because the only thing that launches is libreoffice
22:48:27FromDiscord<Clyybber> sadly I can't exit wayfire
22:48:31FromDiscord<Clyybber> I have to shutdown
22:48:47FromDiscord<Clyybber> and then I can only stare at the error for like 1 sec
22:48:58disruptekwhat? you mean libreoffice doesn't include a shell?
22:49:06FromDiscord<Clyybber> it says something about EGL though, so I think its an issue with nvidia
22:49:36FromDiscord<Clyybber> disruptek: libreoffice-term when?
22:49:41disruptekGDK_BACKEND=wayland CLUTTER_BACKEND=wayland
22:49:45*couven92 quit (Quit: Disconnecting)
22:49:58disruptekELM_ENGINE=wayland_egl ECORE_EVAS_ENGINE=wayland_egl
22:50:18FromDiscord<Clyybber> what does it do?
22:50:30disruptekjust some env forces to help apps on wayland.
22:50:35FromDiscord<Clyybber> oh thanks
22:50:44FromDiscord<Clyybber> maybe it makes kitty work
22:50:49disruptekgtk3 and elementary/efl
22:50:52sealmoveI have a hardcore question... I have to derive datatype from Nim ast. the ast involves identifiers. i have a symbol table for the identifiers which annotates their types. i suppose their is standard theory for such things? anyone has an article
22:50:54sealmove?
22:51:28disruptekwhat kinda annotations?
22:52:01sealmovethe symbol tables has identifiers along with their types (among other things)
22:52:06FromDiscord<Clyybber> disruptek: Does the compositor inherit those vars? or do I have to export them globally?
22:52:20disrupteki export them and then run sway in the env.
22:52:38FromDiscord<Clyybber> do you use fish set for that?
22:52:41FromDiscord<Clyybber> or do you export
22:52:41disrupteksealmove: so your nim ast has no types? just identifiers?
22:52:52disruptekset --export var val
22:52:53*gour_ joined #nim
22:53:02FromDiscord<Clyybber> k, thats what I figured
22:53:03FromDiscord<Clyybber> brb
22:53:21disrupteksealmove: identifiers are just strings. you can store the types any way you want.
22:53:42disruptekno reason (i can think of) not to store them as nimnodes.
22:53:43sealmovedisruptek: Basically i am trying to derive a Nim type from an expression of other language
22:53:59disrupteki do this all over the place in openapi.
22:54:02disruptek!repo openapi
22:54:03disbothttps://github.com/disruptek/openapi -- 9openapi: 11OpenAPI Code Generator for Nim 15 9⭐ 0🍴 7& 4 more...
22:54:11sealmovethis expression can include identifiers which were previously analyzed and got annotated with Nim types
22:55:11disruptekcodegen.nim is where the meat is, fwiw.
22:56:11disruptekman, that code isn't that old but it already looks creepy to me.
22:56:22*gour quit (Ping timeout: 265 seconds)
22:56:23disrupteki guess i'm finding my style.
22:57:31disrupteksealmove: it sounds like you just want an overload that takes a partially-annotated input as well.
22:57:34FromDiscord<Fern & Simula (They/Them)> what do `typed` and `untyped` do?
22:58:16disruptekone has a semantic pass and the other doesn't, so one can be anything and the other cannot.
22:58:26FromDiscord<Fern & Simula (They/Them)> ahhhhh thank you!
22:58:33disruptekuntyped is usually, like, a block.
22:58:41FromDiscord<Fern & Simula (They/Them)> gotcha
22:58:47disruptektyped is usually an identifier you wanna screw around with.
22:59:32sealmovedisruptek: you would have to explain in simpler terms, this is my first time writing a compiler. "overload that takes a partially-annotate input", no idea what that means :D
23:00:18disruptekwell, if you can disambiguate between inputs that, as you said, are coming to you with some nim type info, and those inputs that arrive with no such info, then you can have the same syntax operate on both inputs.
23:00:29disruptekmaybe one turns into the other. maybe they are recursive.
23:00:39disruptekhey man, you're the programmer. 😁
23:01:11disrupteki am just a mechanic.
23:01:16sealmovehaha
23:01:34FromDiscord<Fern & Simula (They/Them)> "just"
23:01:35disruptekseriously. i bared completed high school.
23:01:39disruptekbarely.
23:01:50disrupteksee? can't even spell.
23:01:52FromDiscord<Fern & Simula (They/Them)> so did most famous people though haha
23:02:10disrupteki'm more on the infamous end of the spectrum.
23:02:36disruptekhonestly, i'm a pretty lousy mechanic, too.
23:02:45sealmovei should take it one step at the time, what i am trying to do might be beyond my current abilities :(
23:03:05disrupteksealmove: that's what i said about openapi. shashlick pushed me to do it. it was great.
23:03:23disruptekyou did well advancing the state of the art with npeg. you can do this, too.
23:03:59sealmovewell, thanks for the encouragement
23:04:37*solitudesf quit (Ping timeout: 240 seconds)
23:04:38disruptekand i never would have taken on nimph if it wasn't for dom. this is a great community. you always have motivation here.
23:04:57FromDiscord<Fern & Simula (They/Them)> what does "iterator within for loop context expected" mean?
23:05:26disruptekdid you pass something to `for` that cannot be iterated, maybe?
23:05:56FromDiscord<Fern & Simula (They/Them)> varargs. let me link the code
23:06:24FromDiscord<Fern & Simula (They/Them)> https://play.nim-lang.org/#ix=24y7
23:06:42FromDiscord<Fern & Simula (They/Them)> just a warning that i have *no* idea what i'm doing haha
23:06:50FromDiscord<Clyybber> disruptek: Redirecting stderr to a file shows wonders
23:06:55sealmovehow do compilers decide what type is an expression? that's the problem I am facing...
23:06:57disruptekyeah?
23:07:14FromDiscord<Clyybber> hastebin doesn't work
23:07:22FromDiscord<Clyybber> I apolagize for the paste inb4
23:07:33*clyybber joined #nim
23:07:38clyybberMESA-LOADER: failed to open i965 (search paths /usr/lib/xorg/modules/drivers)
23:07:40clyybberfailed to load driver: i965
23:07:41clyybber2019-12-16 00:09:51 - [EGL] command: eglGetPlatformDisplay, error: 0x300c, message: "EGL_BAD_PARAMETER error: In internal function: Additional INFO may be available
23:07:44clyybber"
23:07:46clyybber2019-12-16 00:09:51 - [backend/drm/drm.c:50] DRM universal planes unsupported
23:07:47clyybber2019-12-16 00:09:51 - [backend/backend.c:198] Failed to open DRM device 9
23:07:49clyybber2019-12-16 00:11:11 - [backend/drm/atomic.c:56] eDP-1: Atomic commit failed (pageflip): Permission denied
23:07:52clyybber2019-12-16 00:11:11 - [backend/drm/atomic.c:56] eDP-1: Atomic commit failed (pageflip): Permission denied
23:07:53clyybber2019-12-16 00:11:11 - [backend/drm/atomic.c:56] eDP-1: Atomic commit failed (pageflip): Permission denied
23:08:37FromDiscord<Fern & Simula (They/Them)> ohhhh figured it out
23:09:10disruptekclyybber: looks like you have a driver problem.
23:09:30FromDiscord<Clyybber> yep, loks like it
23:09:31FromDiscord<Fern & Simula (They/Them)> nope, nvm sorry
23:09:41disruptekfern: what are you trying to do?
23:10:11FromDiscord<Fern & Simula (They/Them)> use varargs in a template: https://play.nim-lang.org/#ix=24y7
23:10:23FromDiscord<Fern & Simula (They/Them)> wrong link sorry
23:10:51FromDiscord<Fern & Simula (They/Them)> https://play.nim-lang.org/#ix=24yb
23:11:12disruptekbroken clipboards in wayland are super irritating. virtually everything else is great.
23:11:51FromDiscord<Fern & Simula (They/Them)> starting to look like i need a macro :/
23:12:46disruptekhttps://play.nim-lang.org/#ix=24yc
23:13:05FromDiscord<Fern & Simula (They/Them)> ah, i was looking to mix types :P
23:13:11disruptekie. run $ on any input to turn it into a string
23:13:50disruptekyou can't mix types in the signature; what generics do is instantiate a new version of the proc for each new type.
23:13:58disruptekbut that doesn't solve this problem.
23:14:17disruptekif you wanna pass multiple types, use variant objects or tree structures, etc.
23:14:29disruptek...which are all one type.
23:14:51FromDiscord<Fern & Simula (They/Them)> i can't do either in what i'm going to use this for. i think i found a macro to help though
23:18:31disruptekclyybber: took me a long time, but i eventually built ungoogled-chromium to run with accelerated webgl on nouveau. my command-line for the browser is about 800 characters long.
23:21:04FromDiscord<mratsim> @Clyybber, yes it's back. But I didn't really fix it, it disappeared on its own when i retried, until it was back, the fate of threading bugs ... I need to get it model checked or formal verified or pass through a race detection tool
23:21:37FromDiscord<Clyybber> disruptek: holy shit
23:21:37FromDiscord<mratsim> obviously pass through a race detection tool means: build the race detection tool and ensure it has no bugs, or use something like LLVM ThreadSanitizer or Valgrind
23:22:00FromDiscord<Clyybber> @mratsim gl!
23:22:35disrupteki guess if you use the software, you can't be sure it has no bugs.
23:23:31FromDiscord<Clyybber> disruptek: Actually my drivers are ok
23:23:45FromDiscord<Clyybber> I'm just using modesetting instead of i965
23:23:55FromDiscord<Clyybber> not sure why it isn't happy with that
23:25:57disruptekmodesetting?
23:26:41disruptekis that what the kids are calling it these days?
23:28:22FromDiscord<Clyybber> How can I check wether elogind really works?
23:29:08FromGitter<bung87> disruptek , you are using Nim for job tasks?
23:29:13disrupteknah.
23:29:31disruptekclyybber: is it passing pam?
23:29:43FromDiscord<Clyybber> how do I check that?
23:29:56disruptekgrep elogind /var/log/messages
23:30:10disruptekyou should see it reporting new sessions.
23:30:23FromGitter<bung87> I see you publish Cloud Platform APIs, you use cloud platform in personal?
23:30:45disrupteki use it all over the place. you should too!
23:30:49FromDiscord<Clyybber> disruptek: grepping dmesg should work too right?
23:30:55FromDiscord<Clyybber> I see something there:
23:31:03disruptekdmesg is, like, console messages. not necessarily the same thing.
23:31:06FromDiscord<Clyybber> New session 1 of user clyybber
23:31:09FromDiscord<Clyybber> disruptek: Damnit
23:31:14FromDiscord<Clyybber> I don't have logging set up
23:31:17disruptek(usually not). dmesg goes into logs, not the other way arround.
23:31:24disruptekwhy not?
23:31:34FromDiscord<Clyybber> haven't felt the need yet 🙂
23:31:37sealmoveis cyclic imports problem solved?
23:31:41disrupteknope.
23:31:46FromGitter<bung87> no, my company just use ruby , and sadlly they may not need my frontend skills
23:31:46disruptekclyybber: what os?
23:31:50FromDiscord<Clyybber> void
23:32:04disruptekpffbt kmagyoyo
23:32:36disruptekbung87: i'm afraid i never bothered with ruby.
23:32:55disrupteki get why it's attractive, it just wasn't attractive to me.
23:33:43disruptekwhen you said job tasks, i thought you meant nimble tasks.
23:33:45*clyybber quit (Quit: WeeChat 2.7)
23:33:56FromGitter<bung87> I use it for fullstack development in product demo stage.
23:34:42disruptekneat, so what's your opinion on the nim landscape?
23:34:46FromGitter<bung87> ha, yeah I thought you may think it in programing tasks
23:36:09*kungtotte quit (Ping timeout: 250 seconds)
23:36:50FromGitter<bung87> I like it ,but it has very small ecosystem
23:37:17disruptekthat's true. we need to work on plugging stuff together.
23:37:42disrupteknim attracts people that are willing to roll their own. now we need to attract people willing to use other people's software.
23:38:19FromGitter<bung87> I mainly do frontend job, other language may not help my job
23:38:36FromDiscord<Clyybber> disruptek: Hmm, elogind wasn't the issue, even the chmod suid thing doesn't make it work
23:38:41FromDiscord<Clyybber> no wayland for me then 😦
23:38:47disruptekwhaaaa
23:39:02FromDiscord<Clyybber> I cant get it to work
23:39:38FromDiscord<Clyybber> If I install i965 that will fuck up my optimus setup
23:39:43disrupteki thought you were running it earlier?
23:39:44FromDiscord<Clyybber> also modesetting works better IMO
23:40:01disruptekwhat's optimus?
23:40:16FromDiscord<Clyybber> nvidia + intel igpu
23:40:27disruptekare you on a laptop?
23:40:35FromDiscord<mratsim> To have people who uses other software you need a package manager that doesn't throw an error code after a successful install :/
23:40:40FromDiscord<Clyybber> disruptek: Yeah
23:40:59disruptekmratsim: what's the error code?
23:41:25FromDiscord<mratsim> This: https://github.com/nim-lang/nimble/issues/696
23:41:30disruptekwhy don't you start with logging and see where it takes you.
23:41:43FromDiscord<mratsim> Someone had this as well: https://github.com/fragcolor-xyz/nimtorch/issues/18
23:42:27*lritter quit (Quit: Leaving)
23:42:40disruptekwell, i don't pr nimble anymore. but if you can make it fail with nimph, i'd be happy to fix it.
23:43:30disruptekclyybber: if you got as far as libreoffice running in wayfire, it seems to me you were already there.
23:44:11disrupteki added the rare and elusive upgrade command to nimph last night.
23:44:34FromDiscord<mratsim> I just added || true in my CI scripts
23:45:01disrupteksure, sure. wcgw?
23:45:12FromDiscord<mratsim> I'm lucky because most of my pckages are very low-level and have only very few dependencies
23:45:38FromDiscord<mratsim> nothing, Ci completes or if it was not download it will fail later anyway
23:46:09FromDiscord<mratsim> I've spent like 6 hours fighting against Travis and Azure Pipelines this weekend, I don't want to deal with nimble bugs as well
23:46:47*a_b_m joined #nim
23:46:56disruptekme neither, and i haven't spent any time at all on ci.
23:46:57FromDiscord<Clyybber> disruptek: Yeah.
23:47:14FromDiscord<Clyybber> But I don't even know where to report the issue to
23:47:25FromDiscord<Clyybber> I'm gonna try sway again
23:47:28FromDiscord<Clyybber> just in case
23:47:45disruptekrun alacritty with the rust debug option.
23:47:46disruptekwhat does it say? probably more than you'll get from kitty.
23:48:12FromDiscord<mratsim> The issue with multithreading is that even if CI is all green, you can't really say it's tested when the CI only has 2 cores ...
23:48:35FromDiscord<mratsim> It did highlight a couple of bugs that didn't happen on my machine though
23:49:00FromDiscord<Clyybber> disruptek: How would I know what it says when I can't exit wayfire heh
23:49:08FromDiscord<Clyybber> Oh
23:49:16FromDiscord<Clyybber> I could tell the logs to go elsewhere
23:49:21FromDiscord<Clyybber> thanks for the tip
23:50:00disruptekyou might be able to run an X11-native terminal instead.
23:50:13disruptekthe suckless one is even faster than alacritty.
23:50:17disruptekst
23:50:18*abm quit (Ping timeout: 252 seconds)
23:50:22disruptek!repo terminal suckless
23:50:39*a_b_m quit (Client Quit)
23:51:06disruptek!repo terminal suckless
23:51:08disbothttps://github.com/LukeSmithxyz/st -- 9st: 11Luke's fork of the suckless simple terminal (st) with vim bindings and Xresource compatibility. 15 625⭐ 451🍴 7& 29 more...
23:51:17disrupteki swear it's like no one tests this stuff anymore.
23:57:20FromDiscord<Clyybber> disruptek: I was using st before alacritty
23:57:27FromDiscord<Clyybber> btw, I managed to get firefox to work
23:57:36FromDiscord<Clyybber> it was just a matter of setting the environment var
23:57:47disruptekgdk?
23:57:50FromDiscord<Clyybber> nope
23:57:52FromDiscord<Clyybber> elogind
23:58:54FromDiscord<Clyybber> wth
23:59:00FromDiscord<Clyybber> alacritty magically works too now
23:59:37FromDiscord<Clyybber> oh well
23:59:46FromDiscord<Clyybber> I pressed alttab and cant exit the switcher mode
23:59:55FromDiscord<Clyybber> I can still see the window though and type lol