00:19:43 | * | fredrikhr quit (Ping timeout: 256 seconds) |
00:25:05 | * | ragouel joined #nim |
00:25:58 | ragouel | I'm trying to build a nim project but I get "Git/BROKEN/nimsynth-git/src/nimsynth/src/nico/nico/vec.nim(348, 17) Error: object constructor needs an object type" I ran nimble develop nico and then make |
00:26:41 | ragouel | make basically runs nim -p:src |
00:27:02 | ragouel | I'm not familiar with nim |
00:33:52 | FromDiscord | <Varriount> ragouel: Can you post the source, vist gist or something? |
00:33:58 | FromDiscord | <Varriount> *via gist |
00:35:01 | ragouel | https://github.com/ftsf/nimsynth this is the software I'm trying to build, when I run make it asks for nico, so I ran nimble develop nico inside git root |
00:35:14 | FromDiscord | <Varriount> If it's an existing Nimble package, it sounds like it might either be broken, or incompatible with the current version of Nim (or at least, whatever version of Nim you are running). |
00:36:16 | FromDiscord | <Varriount> Uh, I don't know if develop is the right command. If it's looking for a missing package, would it be `nimble install nico`? |
00:36:24 | ragouel | ah I see |
00:36:30 | ragouel | I'll try that then |
00:36:53 | FromDiscord | <Varriount> You'll have to delete whatever additional directories were created. |
00:37:14 | FromDiscord | <impbox> ragouel, nimsynth is pretty out of date |
00:37:25 | FromDiscord | <impbox> I might have a version that works with modern nim somewhere... let me check |
00:37:27 | ragouel | ok, I deleted everything under ~/.nimble |
00:37:33 | ragouel | ok |
00:38:19 | FromDiscord | <impbox> cool, well it compiles and runs \o/ |
00:38:30 | ragouel | hmmm |
00:38:39 | FromDiscord | <impbox> i'll push it up in a branch |
00:38:42 | FromDiscord | <impbox> just a moment |
00:39:11 | ragouel | are you ftsf on github ? |
00:39:15 | FromDiscord | <impbox> yep |
00:39:20 | ragouel | ah I see |
00:39:44 | ragouel | i'm trying to create a pkgbuild for your software for AUR |
00:40:11 | ragouel | AUR=Arch User Repo |
00:40:52 | FromDiscord | <Elegant Beef> Isnt it sorta redundant with nimble? |
00:41:36 | FromDiscord | <impbox> though nimsynth doesn't have a nimble package atm |
00:41:51 | FromDiscord | <impbox> ragouel I've pushed up a branch `nim1.2` |
00:41:54 | FromDiscord | <impbox> let me know if it works |
00:42:00 | ragouel | ok, I will |
00:42:08 | FromDiscord | <impbox> i've done my testing on windows lately, hopefully it works on linux too |
00:44:37 | FromDiscord | <Varriount> @impbox I've been using Powershell recently. >:D |
00:45:09 | FromDiscord | <impbox> @Varriount hmm i haven't used it much, only for copypasta, i just use git bash in windows |
00:45:33 | * | endragor joined #nim |
00:45:47 | FromDiscord | <Varriount> Also, I wish that I could control Windows via keyboard more often. Or with my mind. |
00:45:56 | FromDiscord | <impbox> aye |
00:46:07 | ragouel | lol |
00:46:29 | ragouel | ok, it now compiles, if I run nimble install sndfile |
00:46:31 | FromDiscord | <Varriount> Oddly enough, I don't wish that as much for OSX. Which is odd, because it's not like it has any more keyboard control than Windows. |
00:46:32 | FromDiscord | <impbox> i miss my linux window manager keycombos |
00:46:57 | FromDiscord | <Varriount> (although keyboard shortcuts are more consisteent across applications) |
00:47:06 | FromDiscord | <Varriount> (edit) 'consisteent' => 'consistent' |
00:47:13 | ragouel | ok, it runs too |
00:47:19 | ragouel | thanks for the help |
00:47:52 | FromDiscord | <Varriount> (maybe one day we will be able to control interfaces efficiently with our minds) |
00:51:49 | * | sagax quit (Quit: Konversation terminated!) |
00:52:12 | FromDiscord | <impbox> ragouel awesome\ |
00:52:13 | FromDiscord | <impbox> (edit) 'awesome\' => 'awesome' |
00:56:19 | ragouel | @impbox what is nimsynth licensed under? |
00:59:42 | * | pbb quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) |
01:00:16 | * | pbb joined #nim |
01:00:33 | * | mbuchel joined #nim |
01:01:19 | FromDiscord | <impbox> hmm it should probably have a LICENCE huh... |
01:01:44 | mbuchel | hello, are there any good interprocess communication packages in nim? |
01:02:24 | FromGitter | <ynfle> https://nim-lang.org/docs/channels.html? |
01:04:05 | mbuchel | oh thank you |
01:04:12 | mbuchel | i will look more into that one |
01:04:40 | mbuchel | oh wait no sorry, that one seems to be for threads |
01:05:04 | mbuchel | i am talking about running several distinct processes on the device and having them communicate with each other |
01:06:32 | FromDiscord | <impbox> ragouel gplv3 just added a LICENCE file |
01:07:02 | mbuchel | kindof like mmap |
01:07:09 | ragouel | yep, good enough. Let me know if you want me to transfer ownership if you're on AUR |
01:07:53 | FromDiscord | <impbox> nah, all good |
01:07:59 | ragouel | ok |
01:09:10 | ragouel | https://aur.archlinux.org/packages/nimsynth-git/ |
01:10:47 | * | ragouel quit (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/) |
01:12:57 | * | njoseph quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) |
01:13:06 | * | njoseph joined #nim |
01:19:47 | * | endragor quit (Remote host closed the connection) |
01:20:13 | * | endragor joined #nim |
01:22:47 | * | lritter quit (Quit: Leaving) |
01:24:37 | * | endragor quit (Ping timeout: 246 seconds) |
01:35:50 | * | laqq3 joined #nim |
01:41:54 | * | oddp quit (Ping timeout: 240 seconds) |
01:41:57 | * | chemist69 quit (Ping timeout: 260 seconds) |
01:44:04 | * | chemist69 joined #nim |
01:44:20 | * | endragor joined #nim |
01:44:52 | * | vr0n quit (Ping timeout: 260 seconds) |
02:00:47 | disruptek | mbuchel: which platform? |
02:03:03 | * | pangey quit (Read error: Connection reset by peer) |
02:04:35 | mbuchel | disrupteck: linux |
02:07:00 | * | pangey joined #nim |
02:11:02 | * | laqq3 quit (Ping timeout: 258 seconds) |
02:13:07 | FromDiscord | <Varriount> mbuchel: How performant does the communication need to be? |
02:13:35 | FromDiscord | <Varriount> You might consider just using something like protobuf or msgpack over a Unix socket |
02:13:35 | disruptek | i like dbus and unix sockets. |
02:14:38 | disruptek | if you really want speed, you can use the shared mem stuff exposed in posix, but i dunno if it supports linux lock extensions. |
02:15:24 | disruptek | i guess it should be fine. |
02:19:13 | disruptek | !repo deebus |
02:19:13 | disbot | https://github.com/disruptek/deebus -- 9deebus: 11simple sugar over dbus 15 0⭐ 0🍴 |
02:19:16 | disruptek | !repo dbus |
02:19:17 | disbot | https://github.com/disruptek/deebus -- 9deebus: 11simple sugar over dbus 15 0⭐ 0🍴 7& 2 more... |
02:19:24 | disruptek | !repo swayipc |
02:19:24 | disbot | https://github.com/disruptek/swayipc -- 9swayipc: 11swayipc (i3ipc) for Nim 15 4⭐ 0🍴 |
02:19:29 | disruptek | ^ demo of unix socket ipc |
02:19:52 | disruptek | !repo xs |
02:19:52 | disbot | https://github.com/disruptek/xs -- 9xs: 11xstreamstartup.com 15 2⭐ 0🍴 |
02:19:56 | disruptek | ^ demo of dbus stuff |
02:21:50 | mbuchel | i was previously using mqtt but had issues with licensing issues (EPL vs GPL) |
02:22:16 | disruptek | weird. |
02:22:18 | disruptek | !repo mqtt |
02:22:19 | disbot | https://github.com/zevv/nmqtt -- 9nmqtt: 11Native Nim MQTT client library 15 18⭐ 3🍴 7& 5 more... |
02:22:22 | mbuchel | thank you will look into them |
02:22:28 | mbuchel | no i did not use zevvs |
02:22:33 | mbuchel | there were issues with that one |
02:22:44 | mbuchel | and i have not gotten around to fixing the ones i found |
02:22:44 | disruptek | really? |
02:22:56 | mbuchel | i just made a wrapper for libpaho |
02:23:12 | disruptek | i mean, that should be pretty performant. |
02:23:29 | mbuchel | it is but that would be EPL license |
02:23:39 | mbuchel | and we have some GPL code in the codebase as well |
02:23:56 | mbuchel | GPL and EPL do not mix well from what i have been reading (legally speaking) |
02:24:09 | disruptek | no idea. |
02:24:14 | mbuchel | i was debating releasing the wrapper for libpaho using MIT license |
02:24:31 | mbuchel | and than i can use it in the derivative work of the GPL codebase |
02:24:47 | disruptek | i wonder why zevv doesn't have a LICENSE. |
02:24:56 | mbuchel | but i want to know if there are better solutions to this |
02:25:23 | * | laqq3 joined #nim |
02:25:37 | disruptek | better how? |
02:25:49 | disruptek | there's a stomp client iirc. |
02:25:53 | disruptek | !repo stomp |
02:25:54 | disbot | https://github.com/Xe/waffle -- 9waffle: 11A simple STOMP library 15 4⭐ 0🍴 7& 3 more... |
02:26:08 | disruptek | faster? safer? |
02:26:39 | mbuchel | it is supposed to go on an embedded device |
02:26:49 | mbuchel | libpaho requires mosquitto or another mqtt broker |
02:26:54 | mbuchel | to be hosted locally |
02:27:14 | mbuchel | that seems to me like a waste of memory/processing power |
02:27:35 | mbuchel | if it is safer that would be even better |
02:27:40 | disruptek | it sounds like you are pretty close to ideal already. |
02:27:56 | disruptek | you don't remember what's wrong with zevv's thing? |
02:28:07 | mbuchel | async callbacks were not working |
02:28:12 | mbuchel | i can check my notes |
02:28:26 | disruptek | you need async? |
02:28:32 | mbuchel | that would be ideal |
02:28:41 | disruptek | 'cause, y'know, i don't recommend it. |
02:29:00 | mbuchel | because at least one of the programs that the device will be running will be reading from a secondary chip |
02:29:09 | mbuchel | this secondary chip can send messages as well |
02:29:35 | mbuchel | and i do not want to be stuck waiting for a message from mqtt while i am reading from the chip |
02:29:52 | mbuchel | i would prefer the mqtt to be treated as an interrupt |
02:30:15 | disruptek | that's not really a thing. |
02:30:33 | mbuchel | ? |
02:30:48 | disruptek | the dispatcher doesn't interrupt anything. |
02:31:08 | disruptek | you realize this, i think. |
02:31:15 | mbuchel | is there any way that it can? |
02:31:22 | mbuchel | i was under the impression it would |
02:31:38 | mbuchel | otherwise the callback function would be unnecessary |
02:31:45 | * | muffindrake quit (Ping timeout: 256 seconds) |
02:32:16 | disruptek | the dispatcher chooses what to run whenever you await. |
02:32:44 | disruptek | i would recommend threads. |
02:33:38 | mbuchel | OH NEVERMIND |
02:33:53 | mbuchel | i was looking at the wrong mqtt library that i looked into |
02:33:58 | * | muffindrake joined #nim |
02:34:08 | mbuchel | i looked at nim-mqtt |
02:34:11 | mbuchel | not nmqtt |
02:34:24 | mbuchel | ok thank you will check nmqtt out |
02:34:39 | disruptek | there's a new concurrency story in development. |
02:34:55 | disruptek | the concurrency that nim deserves. |
02:35:53 | mbuchel | that is great to hear |
02:36:27 | disruptek | yeah, it should blow the competition out of the water. i'm pretty excited about it. |
02:37:42 | * | ftsf joined #nim |
02:41:00 | * | BlameTheRoomba joined #nim |
02:41:40 | mbuchel | yep so far i been really happy with nim |
02:42:08 | * | BlameTheRoomba quit (Client Quit) |
02:42:33 | mbuchel | i wonder if there is any form of logic programming support inside nim |
02:42:44 | disruptek | i dunno what that means. |
02:43:00 | * | videofile joined #nim |
02:43:02 | mbuchel | i know there was some attempt at implementing the Z3 Proof Engine |
02:43:11 | disruptek | sure; it's call drnim. |
02:43:16 | disruptek | ^called, too. |
02:43:55 | FromDiscord | <Elegant Beef> As a uneducated individual "Logic programming" sounds like "Programming programming" 😄 |
02:45:52 | mbuchel | does drnim have forall and exists yet? |
02:46:02 | mbuchel | or is that still being worked on? |
02:46:11 | disruptek | dunno, it was kinda backburnered in favor of fixing arc bugs. |
02:46:26 | mbuchel | fair enough |
02:46:32 | mbuchel | thank you |
02:48:30 | * | B4s1l3 joined #nim |
02:48:39 | * | B4s1l3 is now known as opDispatch |
02:56:54 | * | Tlongir joined #nim |
03:04:33 | * | mbuchel quit (Quit: WeeChat 2.8) |
03:06:33 | FromDiscord | <Elegant Beef> Yea yardanico, either i dont know how to use the htmlparser, or it doesnt like the nim searchable doc's html |
03:11:02 | * | krux02_ quit (Remote host closed the connection) |
03:17:37 | FromDiscord | <Elegant Beef> https://hatebin.com/hazjqchzzs |
03:17:48 | FromDiscord | <Varriount> Anyone know which compilers finish.exe supports scanning for? |
03:18:14 | FromDiscord | <Varriount> disruptek: What's the concurrency story? |
03:20:53 | FromGitter | <bung87> Elegant Beef using xmltree and htmlparser |
03:21:04 | FromDiscord | <Elegant Beef> Huh? |
03:21:18 | FromDiscord | <Elegant Beef> Yes i have both imported if that's what you mean |
03:21:27 | FromDiscord | <Elegant Beef> I tried both the std and fusion |
03:21:34 | FromGitter | <bung87> you want ouput the html source right? |
03:21:49 | FromDiscord | <Elegant Beef> That's what i'd expect, the inner html to be output |
03:22:01 | FromDiscord | <Elegant Beef> well innertext i guess |
03:22:27 | FromGitter | <bung87> I remenber `$` is coming from xmltree if you want ouput a node |
03:22:55 | FromDiscord | <Elegant Beef> Im not getting any of the data i expect |
03:23:23 | FromDiscord | <Elegant Beef> I'm attempting to get the modules from the nim index page, but cause of how the page is written i believe it causes the parser to not work properly |
03:23:26 | FromDiscord | <Elegant Beef> Or im a numpty |
03:23:40 | FromDiscord | <Elegant Beef> Latter is more likely |
03:25:26 | FromGitter | <bung87> something related to xnVerbatimText |
03:27:57 | FromDiscord | <Elegant Beef> https://play.nim-lang.org/#ix=2qZD |
03:28:06 | FromDiscord | <Elegant Beef> This is what i think causes the problem |
03:28:12 | FromDiscord | <Elegant Beef> `<p />` |
03:32:02 | FromGitter | <bung87> https://play.nim-lang.org/#ix=2qZE |
03:44:04 | * | Tongir joined #nim |
03:47:01 | * | Tlongir quit (Ping timeout: 264 seconds) |
03:59:54 | FromDiscord | <Elegant Beef> Yep im too dumb to use the xmltree api |
04:01:20 | FromDiscord | <Elegant Beef> taking the entire `https://nim-lang.org/docs/theindex.html` website, i cannot for the life of me just get the `<p />` the modules are listed in |
04:02:19 | FromDiscord | <Elegant Beef> Tried navigating manuall using indicies, `findAll`, `child` |
04:04:49 | * | a_chou joined #nim |
04:05:28 | * | a_chou quit (Client Quit) |
04:05:47 | * | dddddd quit (Remote host closed the connection) |
04:06:01 | * | supakeen quit (Quit: WeeChat 2.8) |
04:06:42 | * | supakeen joined #nim |
04:08:04 | FromDiscord | <Elegant Beef> I should say i can get it very easily using regex, but not using the xml stuff |
04:08:04 | * | Tlanger joined #nim |
04:10:21 | FromGitter | <bung87> well , html not strictly follow xml, and browser allow html mistake |
04:10:49 | * | Tongir quit (Ping timeout: 256 seconds) |
04:11:54 | FromDiscord | <Elegant Beef> Yea, that's why i figured the way it was written was the issue, so i just used regex previously |
04:12:06 | FromDiscord | <Elegant Beef> (edit) 'why' => 'what' |
04:12:44 | FromDiscord | <Elegant Beef> I'd happily be proven wrong, but i atleast am giving up on using xml directly there |
04:35:37 | * | mipri joined #nim |
04:42:22 | * | videofile quit (Ping timeout: 246 seconds) |
04:44:32 | * | D_ quit (Ping timeout: 260 seconds) |
04:47:37 | * | Vladar joined #nim |
04:48:15 | * | D_ joined #nim |
04:57:21 | * | rockcavera quit (Remote host closed the connection) |
05:00:12 | * | marnix_ joined #nim |
05:01:33 | * | njoseph quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) |
05:01:41 | * | njoseph joined #nim |
05:02:40 | * | laqq3 quit (Ping timeout: 246 seconds) |
05:03:54 | * | njoseph quit (Client Quit) |
05:04:01 | * | njoseph joined #nim |
05:06:26 | * | njoseph quit (Client Quit) |
05:06:33 | * | njoseph joined #nim |
05:07:04 | * | njoseph quit (Client Quit) |
05:07:10 | * | njoseph joined #nim |
05:09:02 | * | waleee-cl quit (Quit: Connection closed for inactivity) |
05:14:26 | * | laqq3 joined #nim |
05:39:07 | * | hyiltiz quit (Ping timeout: 240 seconds) |
05:39:22 | * | hyiltiz_ quit (Ping timeout: 244 seconds) |
05:40:24 | * | laqq3 quit (Ping timeout: 272 seconds) |
05:41:22 | * | kenran joined #nim |
05:43:31 | * | solitudesf joined #nim |
05:51:35 | * | Tongir joined #nim |
05:54:08 | * | Tlanger quit (Ping timeout: 258 seconds) |
05:54:38 | * | notandinus quit (Quit: ERC (IRC client for Emacs 26.3)) |
05:58:06 | * | andinus joined #nim |
06:12:31 | * | solitudesf- joined #nim |
06:15:13 | * | solitudesf quit (Ping timeout: 258 seconds) |
06:45:01 | * | solitudesf- is now known as solitudesf |
07:08:05 | * | NimBot joined #nim |
07:28:18 | * | maier joined #nim |
07:46:30 | * | letto quit (Quit: Konversation terminated!) |
07:55:49 | * | letto joined #nim |
08:05:45 | * | dddddd joined #nim |
08:15:39 | * | ssbr quit (Read error: Connection reset by peer) |
08:16:07 | * | ssbr joined #nim |
08:16:07 | * | Tongir quit (Remote host closed the connection) |
08:16:33 | * | Tongir joined #nim |
08:27:15 | * | fredrikhr joined #nim |
08:31:31 | * | crem joined #nim |
09:05:42 | * | synthmeat quit (Quit: WeeChat 2.8) |
09:06:31 | Yardanico | tweaked my neo4j query a bit (for whose who don't know, I updated my pkgraph a few days ago to emit cephyr instead of .dot) https://i.imgur.com/ev86AAK.png |
09:06:45 | Yardanico | all packages made by 4raq or which depend on packages made by 4raq (with their authors) :P |
09:08:14 | Yardanico | same for dom - https://i.imgur.com/qKVTJ0T.png |
09:08:14 | * | synthmeat joined #nim |
09:08:35 | * | pbb quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) |
09:08:38 | * | vicfred_ joined #nim |
09:09:37 | * | synthmeat quit (Client Quit) |
09:10:47 | * | vicfred quit (Ping timeout: 240 seconds) |
09:12:41 | * | pbb joined #nim |
09:12:52 | * | synthmeat joined #nim |
09:28:40 | * | solitudesf quit (Remote host closed the connection) |
09:31:27 | * | solitudesf joined #nim |
09:34:56 | * | oddp joined #nim |
09:57:16 | FromDiscord | <dom96> Super shallow still |
09:57:49 | Yardanico | @dom96 wdym? |
09:58:12 | FromDiscord | <lqdev> now pick a random rust package |
09:58:23 | FromDiscord | <lqdev> I guarantee the tree is gonna be 1000x larger |
09:58:28 | FromDiscord | <dom96> yeah |
09:58:39 | FromDiscord | <dom96> I bet it'll be deeper as well |
09:58:43 | FromDiscord | <lqdev> yes |
09:58:53 | FromDiscord | <lqdev> because it's mostly transitive dependencies |
09:59:24 | Yardanico | yeah I still didn't figure out how to also return authors of intermediate packages |
09:59:36 | Yardanico | between the current package and the target package (I use variable-length matching in neo4j) |
10:00:06 | Yardanico | top 10 authors sorted by number of packages which directly or indirectly depend on their packages :P https://i.imgur.com/pjNfWAv.png |
10:00:39 | Yardanico | wait who's anonymous |
10:00:41 | Yardanico | what package is that |
10:01:30 | Yardanico | LOL it's apparently https://github.com/nim-lang/zip/blob/master/zip.nimble |
10:05:36 | Yardanico | maybe anyone knows better tools/DBs/etc for making nice graphs out of data? |
10:05:46 | Yardanico | it's not hard for me to output data in some other format than .dot or cypher |
10:15:24 | FromGitter | <bung87> I like .dot , so can pushlish graph instead binary image |
10:15:31 | Yardanico | well you can do the same with cypher too |
10:15:33 | Yardanico | and neo4j |
10:15:38 | Yardanico | I mean it's just a format |
10:15:51 | Yardanico | right now I generate all create cypher statements to populate the graph db |
10:17:25 | FromGitter | <bung87> what is cypher havn't try it, I know neo4j as graph database |
10:17:34 | Yardanico | cypher is neo4j's query langauge |
10:17:35 | Yardanico | language* |
10:18:33 | FromGitter | <bung87> oh, I prefer .dot if I only need some graph |
10:18:42 | Yardanico | well in my case it's more complicated |
10:18:49 | Yardanico | since with neo4j i can do all kinds of queries |
10:19:59 | FromGitter | <bung87> ah you need integrate to neo4j , that make sense. |
10:20:06 | Yardanico | well cypher isn't exclusive to neo4j |
10:20:09 | Yardanico | it's just a query language |
10:20:15 | Yardanico | e.g. http://redisgraph.io/ uses it |
10:23:14 | FromGitter | <bung87> am wondering is it hard to implement graph database , if I dont need full featured |
10:50:56 | Yardanico | lol https://i.imgur.com/sGqdCiX.jpg |
10:50:58 | Araq | it's hard if you need transactions |
10:51:04 | Yardanico | (be careful, 12.5kx12.5k pixels :P) |
10:51:09 | Yardanico | and some random icons based on the package license |
10:51:15 | Yardanico | need to find a way to export svg I guess |
10:51:29 | Yardanico | also no authors here, meh |
10:51:54 | Araq | so ... Yardanico |
10:51:57 | Yardanico | yes? |
10:52:26 | Araq | you are working on 'koch boot --gc:arc', right? you're not messing around with silly graphs all day long, are you |
10:52:31 | Araq | :P |
10:52:44 | Yardanico | I only messed with this yesterday's morning a bit and now :) |
10:52:46 | Yardanico | well, and a few months ago |
10:53:05 | FromDiscord | <Rika> what are these dots w/ no name |
10:53:11 | * | Trustable joined #nim |
10:53:16 | Yardanico | @Rika authors :D |
10:53:19 | Araq | also, somebody should really look into the produced asm for "binary trees" |
10:53:44 | Araq | the C compiler still doesn't optimize it all that well, apparently |
10:54:01 | FromGitter | <bung87> good to know |
10:55:05 | Yardanico | oh seems like neo4j browser export is somewhat better |
10:56:12 | Yardanico | sry for truncated names - https://raw.githubusercontent.com/Yardanico/random-stuff/master/graph.svg |
10:57:12 | Yardanico | Araq: did you see my two arc regressions (after the scoped pr) ? just to make sure :P |
10:57:22 | FromDiscord | <Rika> why are there authors w/o packages and packages w/o authors? |
10:57:30 | Yardanico | @Rika are there? |
10:57:36 | Yardanico | oh yeah lol |
10:57:48 | Yardanico | maybe they didn't get rendered or something |
11:01:07 | Araq | Yardanico, no |
11:01:37 | Yardanico | they're both related to templates :D https://github.com/nim-lang/Nim/issues/14899 and https://github.com/nim-lang/Nim/issues/14900 |
11:01:39 | disbot | ➥ [ARC] Weird issue with if expressions and templates ; snippet at 12https://play.nim-lang.org/#ix=2r1a |
11:05:04 | Yardanico | also I had a stack overflow in DFA isFirstWrite nitter, although it got "fixed" when I raised the call depth limit, but then crashed in the c backend |
11:05:09 | Yardanico | I didn't minimize that one yet |
11:05:19 | Yardanico | by nitter I mean the twitter one :) |
11:08:56 | Araq | ok |
11:12:15 | * | Trustable quit (Remote host closed the connection) |
11:12:16 | * | rockcavera joined #nim |
11:13:56 | * | Senny joined #nim |
11:25:33 | * | tinga quit (Remote host closed the connection) |
11:25:47 | * | tinga joined #nim |
11:30:02 | Yardanico | Guys, you can buy Nim in Action at 50% off today (or any other book on manning) |
11:30:19 | Yardanico | on https://www.manning.com/books/nim-in-action :) |
11:40:43 | FromDiscord | <MapleSyrup|TagMeIfReply> what other language has the notion of pragmas as in nim |
11:40:57 | Yardanico | well, quite a lot of languages has some type of "annotations" |
11:41:08 | Yardanico | but almost none of them are as flexible as nim's pragmas :) |
11:41:11 | FromDiscord | <MapleSyrup|TagMeIfReply> like type annotations from python? aren't those a bit different |
11:41:13 | FromDiscord | <Rika> python decorators 😛 |
11:41:13 | Yardanico | which you can use almost everywhere |
11:41:26 | FromDiscord | <MapleSyrup|TagMeIfReply> yeah, it seems to change compiler behaviour quite a bit! |
11:41:39 | Yardanico | well pragmas can be defined in your own code too |
11:41:51 | FromDiscord | <MapleSyrup|TagMeIfReply> WHAT |
11:41:53 | Yardanico | ? |
11:41:59 | FromDiscord | <MapleSyrup|TagMeIfReply> that's crazy |
11:42:09 | FromDiscord | <Rika> ? macros can be pragmas |
11:42:11 | FromDiscord | <Rika> 🙂 |
11:42:14 | Yardanico | https://nim-lang.org/docs/manual.html#userminusdefined-pragmas |
11:42:58 | FromDiscord | <--HA--> Nice, thanks Yardanico. I've been thinking whether to buy the book or not and this makes the decision easier. I assume dom96 will still get his full share? |
11:43:08 | Yardanico | I don't know :) |
11:43:10 | Yardanico | @dom96 ^ |
11:44:16 | FromGitter | <bung87> I've seen someone write article about this book in recent nim version |
11:45:53 | FromGitter | <bung87> seems not much changes |
11:52:40 | * | pbb quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) |
11:53:24 | * | mipri left #nim (#nim) |
11:55:33 | * | pbb joined #nim |
12:06:01 | * | supakeen quit (Quit: WeeChat 2.8) |
12:06:03 | * | krux02 joined #nim |
12:06:42 | * | supakeen joined #nim |
12:11:08 | * | narimiran joined #nim |
12:13:44 | FromDiscord | <MapleSyrup|TagMeIfReply> if I have a C lib that I can call using FFI, is there any argument for a nim port? |
12:14:07 | FromDiscord | <MapleSyrup|TagMeIfReply> I'm assuming we'll have to deal with pointers and stuff if using ffi? |
12:14:12 | Yardanico | yes |
12:14:28 | FromDiscord | <MapleSyrup|TagMeIfReply> uh yes for 1. or 2.? 🙂 |
12:14:34 | FromDiscord | <MapleSyrup|TagMeIfReply> or both :hmm |
12:14:37 | Yardanico | both :D |
12:14:56 | Yardanico | I mean of course you wouldn't always want to rewrite a big C lib, that's understandable |
12:15:15 | FromDiscord | <MapleSyrup|TagMeIfReply> ah yes, thanks for clarifying; FFI *is* useful to have |
12:15:21 | disruptek | bung87: work on gram with me. |
12:15:48 | disruptek | i haven't begun graph functionality, really, so you can design it any way you want. |
12:15:53 | FromGitter | <bung87> ah? gram is what? |
12:16:08 | disruptek | are you on discord? gitter? |
12:16:15 | disruptek | i'm ignoring you somehow. |
12:16:19 | solitudesf | gitter |
12:16:26 | FromGitter | <bung87> gitter |
12:16:30 | disruptek | !repo gram |
12:16:31 | disbot | https://github.com/disruptek/gram -- 9gram: 11Generic graphs in Nim 15 3⭐ 0🍴 7& 4 more... |
12:16:56 | disruptek | really crude but lately i am thinking i may make it more of a proper db. |
12:17:03 | disruptek | just as a learning exercise. |
12:17:24 | FromDiscord | <MapleSyrup|TagMeIfReply> db or an orm layer |
12:17:35 | FromDiscord | <MapleSyrup|TagMeIfReply> like sqlalchemy |
12:17:40 | disruptek | db |
12:17:47 | FromDiscord | <MapleSyrup|TagMeIfReply> oh ok gl |
12:18:14 | FromDiscord | <MapleSyrup|TagMeIfReply> "...or if you're still using Nimble like it's 2012," is nimble no longer recommended? |
12:18:22 | disruptek | not by me, no. |
12:18:29 | Yardanico | @Maple it's disruptek's opinion :) |
12:18:38 | Yardanico | but you have to know that most people use nimble :P |
12:18:48 | disruptek | sheeple. |
12:18:49 | FromDiscord | <MapleSyrup|TagMeIfReply> ah okay, having multiple package managers is nice too |
12:18:57 | FromDiscord | <MapleSyrup|TagMeIfReply> sheeple is not nice tho 😦 |
12:19:09 | disruptek | these are my current installation instructions: |
12:19:11 | disruptek | !repo skiplists |
12:19:11 | disbot | https://github.com/disruptek/skiplists -- 9skiplists: 11generic skip list implementations 15 1⭐ 0🍴 |
12:19:15 | FromGitter | <bung87> disruptek I only see simalar code in a js graph lib, what can I do ? |
12:19:29 | disruptek | i don't understand the question. |
12:19:48 | disruptek | what can you do with gram? |
12:20:11 | disruptek | basic graph traversal via edges, nodes, neighbors, etc. |
12:20:15 | FromGitter | <bung87> yeah, you said work on it with you |
12:20:16 | disruptek | there are docs and examples. |
12:20:34 | disruptek | you can add what you need and then 1+1+n people will benefit. |
12:20:40 | FromDiscord | <MapleSyrup|TagMeIfReply> Yardanico would you agree with nim being a high level language (but compiles to low level)? |
12:20:51 | Yardanico | nim doesn't have to compile to C btw |
12:20:54 | Yardanico | there's an LLVM backend too |
12:21:07 | FromDiscord | <MapleSyrup|TagMeIfReply> not sure what that is, have heard a lot about it tho |
12:21:11 | disruptek | labels aren't important. |
12:21:12 | Yardanico | or with enough effort you can make a native asm backend, so it's just a normal high level language like others |
12:21:33 | FromDiscord | <MapleSyrup|TagMeIfReply> hmm wasm?! |
12:21:45 | Yardanico | no |
12:21:48 | FromDiscord | <MapleSyrup|TagMeIfReply> 😦 |
12:21:48 | Yardanico | assembly as in real assembly |
12:21:59 | Yardanico | but there's no point in making an asm backend really |
12:22:12 | FromDiscord | <MapleSyrup|TagMeIfReply> fingers crossed for wasm because apparently it's the NEXT BIG THING^{tm} |
12:22:24 | FromGitter | <bung87> oh I'll keep eyes on it if I need some lib like it |
12:22:30 | * | dmi0 joined #nim |
12:22:31 | Yardanico | @Maple wasm already is there |
12:22:31 | FromDiscord | <MapleSyrup|TagMeIfReply> 😛 |
12:22:34 | Yardanico | emscripten or clang's wasm32 |
12:22:43 | disruptek | there's also this one, bung87: |
12:22:44 | disruptek | !repo grim |
12:22:45 | disbot | https://github.com/ebran/grim -- 9grim: 11grim brings property graphs to the Nim language. Look around you: everything is a graph! 15 27⭐ 0🍴 7& 2 more... |
12:22:57 | disruptek | i tried it and then started gram. |
12:25:06 | FromGitter | <bung87> cool, so have a graph data struct and storage and query language combined can do something like neo4j |
12:25:33 | disruptek | sure, but i would use gremlin over cypher. |
12:25:35 | FromDiscord | <mratsim> @MapleSyrup|TagMeIfReply there are multiple ways for WASM in Nim |
12:26:08 | FromDiscord | <MapleSyrup|TagMeIfReply> ah, like those libraries Yardanico mentioned? |
12:26:12 | FromGitter | <bung87> interesting project. |
12:26:13 | Yardanico | they're not libraries but yes |
12:26:14 | FromDiscord | <MapleSyrup|TagMeIfReply> or any other ways |
12:26:20 | FromDiscord | <mratsim> https://www.youtube.com/watch?v=QtsCwRjtbrQ |
12:26:31 | FromDiscord | <mratsim> WASM code-golfing in Nim, beating Rust on codesize 😉 |
12:26:47 | Yardanico | emscripten is a toolkit for compiling native C/C++ applications to wasm |
12:26:53 | Yardanico | it even supports libraries like SDL2, OpenGL, etc |
12:27:17 | Yardanico | LLVM's (clang uses LLVM) wasm32 target compiles any LLVM IR to wasm32 |
12:27:42 | FromDiscord | <MapleSyrup|TagMeIfReply> so the reason you can use wasm is because nim can be compiled to C? |
12:27:51 | Yardanico | yes |
12:27:57 | disruptek | bung87: adding gremlin might be easier than you think. |
12:27:59 | Yardanico | but there's an llvm backend (nlmv) |
12:28:02 | Yardanico | nlvm* |
12:28:09 | Yardanico | and you can use llvm's wasm32 target with that |
12:28:11 | Yardanico | without the C step |
12:28:15 | FromDiscord | <mratsim> For the code-golfing we used LLVM |
12:28:21 | Yardanico | yeah that makes sense |
12:28:23 | FromDiscord | <MapleSyrup|TagMeIfReply> oh I see! |
12:28:29 | Yardanico | @mratsim did you see https://github.com/yglukhov/wasmrt btw? |
12:28:33 | Yardanico | I played with it a bit too |
12:28:39 | disruptek | https://en.wikipedia.org/wiki/Gremlin_(query_language)#Gremlin_graph_traversal_machine |
12:28:51 | FromDiscord | <mratsim> well Yuriy and Arnetheduck were the one doing the codegolf |
12:28:55 | Yardanico | oh lol |
12:29:06 | FromGitter | <bung87> let me check, I have a toy redis-server in nim |
12:30:01 | disruptek | storage could be redis, lmdb, bolt, rocks, etc. |
12:35:19 | * | ftsf quit (Quit: Leaving) |
12:35:28 | FromGitter | <bung87> hmm why all implementation in java, https://github.com/pokitdok/gremlin-python/tree/master/src/main/java/com/pokitdok/gremlin/python/jsr223 |
12:38:25 | * | bung_ quit (Quit: Lost terminal) |
12:38:55 | disruptek | probably for vm reasons. |
12:39:07 | * | Kaivo joined #nim |
12:41:37 | FromGitter | <bung87> am looking pure ts,js or python implementation, that's easy to me. |
12:42:29 | * | Senny quit (Ping timeout: 272 seconds) |
12:42:41 | * | bung joined #nim |
12:48:01 | bung | any alternative to .dot ? I'v thought use markdown table instead of html in .dot |
12:48:45 | disruptek | but .dot is basically what you want. |
12:49:02 | FromDiscord | <mratsim> I use .dot, it has good integration with many tools |
12:50:22 | bung | yeah, it's good for show graph of project ,avoiding push image to repository |
12:51:00 | bung | only the table part am not feeling well |
12:51:13 | Yardanico | well I think that .dot is mostly for diagrams and graphs :) |
12:53:04 | bung | I used to use it represent database table structure |
12:54:24 | bung | but I cant mark the column relations of tables |
12:56:10 | disruptek | that's your graph application? |
12:56:22 | disruptek | i mean, modeling rdbms tables? |
12:56:46 | bung | rdbms tables , yes |
12:57:35 | disruptek | i would think that gram would work fine for that right now. |
12:57:58 | disruptek | we're not talking about hundreds of thousands of tables, right? |
13:01:32 | bung | https://www.graphviz.org/Gallery/directed/datastruct.html this fit my needs |
13:01:54 | * | drewr quit (Quit: brb) |
13:02:09 | disruptek | cool. |
13:02:51 | * | drewr joined #nim |
13:03:14 | disruptek | i will add skiplists in when i get a chance to finish them. that will yield O(logn) value query on the graph. |
13:03:17 | * | bung_ joined #nim |
13:03:33 | disruptek | then we just output dot and go from there. |
13:06:22 | * | bung quit (Ping timeout: 246 seconds) |
13:06:47 | bung_ | en, that's one feature can be added to gram lib |
13:07:10 | disruptek | en? |
13:07:35 | bung_ | haha ,chinese spell means yes |
13:08:21 | disruptek | i think zevv wrote some dot output in nim once. |
13:09:27 | bung_ | https://github.com/QuinnFreedman/nimgraphviz |
13:10:01 | disruptek | that probably solves all your needs. |
13:12:01 | bung_ | yeah,think so |
13:12:23 | FromGitter | <cyberlis> I have a question. If i run this code https://play.nim-lang.org/#ix=2r1w ⏎ compiled with `nim c -d:release -r speed_test.nim` ⏎ I get this output ⏎ ⏎ ```List: (seconds: 0, nanosecond: 7643) ⏎ Table: (seconds: 0, nanosecond: 4523571)``` ... [https://gitter.im/nim-lang/Nim?at=5f032337bb149531edf21be9] |
13:13:00 | FromGitter | <cyberlis> maybe i am doing something wrong ? |
13:13:30 | Yardanico | because table obviously has more overhead than just a seq? |
13:13:38 | Yardanico | and a table needs to calculate hash for each key too |
13:13:49 | FromGitter | <cyberlis> but |
13:13:51 | FromDiscord | <Rika> tables are complicated |
13:13:56 | FromGitter | <cyberlis> I see |
13:13:57 | disruptek | not surprising to me. |
13:14:30 | FromGitter | <cyberlis> Than why we need tables if array search faster? |
13:14:36 | FromDiscord | <Rika> has key != contains too, anyway |
13:14:49 | FromDiscord | <Rika> because tables dont only accept integer keys? |
13:15:01 | narimiran | shit, we have tables for no reason |
13:15:05 | FromDiscord | <Rika> people usually use string keys |
13:15:10 | narimiran | nobody noticed by now |
13:15:31 | bung_ | everybody need tables right? |
13:15:42 | FromDiscord | <Rika> narimiran is making a joke |
13:15:43 | narimiran | not everybody |
13:15:45 | FromDiscord | <impbox> switch to lua |
13:15:53 | disruptek | at least no one stupidly implemented binary tables. |
13:15:57 | FromDiscord | <Rika> lua doesnt have arrays/lists at all 😛 |
13:16:01 | Yardanico | @cyberlis for each hasKey the tables module needs to calculate a hash for the integer, it doesn't just use the integer keys as indexes |
13:16:14 | narimiran | Yardanico: achtually....... |
13:16:19 | Yardanico | ? |
13:16:19 | disruptek | the hash for the int is the int. |
13:16:22 | narimiran | ^ |
13:16:30 | Yardanico | oh, but stil :) |
13:16:32 | FromDiscord | <impbox> lua has one container which is a table... but sometimes it's an array =) |
13:16:34 | narimiran | but yeah, it still "calculates" its hash |
13:16:41 | FromDiscord | <impbox> or it has an array part + a table part |
13:16:46 | FromDiscord | <Rika> yes but its still technically a table |
13:17:11 | FromDiscord | <impbox> yeah, behaves like a table most of the time |
13:17:15 | FromGitter | <cyberlis> I know how tables work. That is why i'am interested why tables slower in this example. List search O(N), table search O(1) |
13:17:16 | disruptek | it's not that tables are expensive, it's that finding the first element in a seq is fast. |
13:17:21 | FromDiscord | <exelotl> Lua does so much with so little, it's really impressive |
13:17:23 | Yardanico | @cyberlis just FYI with LTO your "tables" part will be 4 times faster |
13:17:45 | Yardanico | and holy sh*t arc for some reason makes this microbenchmark so much faster for the seq |
13:17:52 | disruptek | try searching for _ instead of 0. |
13:18:04 | Yardanico | oh right |
13:18:06 | Yardanico | lol |
13:18:35 | Yardanico | it's still much faster with arc |
13:18:35 | bung_ | that's the key,linear search |
13:19:41 | Yardanico | "list" with arc in this benchmark is ~20x faster than with refc lol |
13:20:01 | * | fanta1 joined #nim |
13:20:04 | Yardanico | and with LTO and arc I get sub 100 nanosecond results |
13:20:13 | disruptek | compare with markAndSweep for a fairer test. |
13:20:17 | Yardanico | maybe the C compiler optimized too much stuff |
13:20:29 | Yardanico | disruptek: 10 times slower than arc |
13:20:42 | disruptek | i don't think arc will free anything in this example. |
13:20:46 | disruptek | put it in a proc |
13:20:49 | Yardanico | i already did |
13:20:55 | disruptek | cool. |
13:21:02 | disruptek | maybe it's time for me to run some more benchmarks. |
13:21:10 | Yardanico | well the scoped PR might've helped |
13:22:08 | Yardanico | ah nvm |
13:22:14 | Yardanico | seems like the C compiler fully optimizes the first loop away lol |
13:22:27 | disruptek | good. |
13:22:43 | Yardanico | the time is literally the same as when just echoing time difference after getting the start time |
13:22:47 | Yardanico | without any loops |
13:22:58 | FromGitter | <cyberlis> And you still have no answer why linear search faster than constant search? ⏎ I can use array of tuple with first integer value as key and get better results then tables? |
13:23:19 | disruptek | no answer? how about the fact that it's not much of a "search" |
13:23:35 | narimiran | yeah you can do that |
13:23:42 | disruptek | it looks at the first element and, "hey! winner, winner, chicken dinner!" |
13:23:59 | Yardanico | @cyberlis your microbenchmark is flawed |
13:24:09 | Yardanico | you always "search" for the first element |
13:24:26 | Yardanico | and that means the list will find it instantly since it'll start iterating by the items and the first one will already be the one it needs |
13:24:40 | * | nkoz joined #nim |
13:24:42 | Yardanico | also yeah, the C compiler seems to be optimizing it away |
13:25:01 | FromDiscord | <impbox> use bogosearch instead |
13:25:19 | FromGitter | <cyberlis> > > and that means the list will find it instantly since it'll start iterating by the items and the first one will already be the one it needs ⏎ I put elements in list in reverse order |
13:25:19 | * | arecaceae quit (Remote host closed the connection) |
13:25:30 | FromGitter | <cyberlis> 1 is last element |
13:25:52 | * | arecaceae joined #nim |
13:26:17 | FromGitter | <cyberlis> ```for i in countdown(1_000_000, 0): ⏎ myList.add(i)``` [https://gitter.im/nim-lang/Nim?at=5f0326783a0d3931fad6f785] |
13:26:20 | FromGitter | <cyberlis> coutdown |
13:27:39 | disruptek | then it's because the compiler has optimized the search for 0. |
13:28:01 | disruptek | that's my guess, anyway. |
13:28:16 | disruptek | i don't understand why you don't search for _. you need that complexity to perform a fair comparison. |
13:28:46 | disruptek | https://github.com/disruptek/criterion |
13:29:03 | * | hpyc9 quit (Quit: FREENODE IS FUCKING GAY) |
13:29:03 | * | blackbeard420 quit (Quit: ZNC 1.8.0 - https://znc.in) |
13:29:27 | disruptek | shashlick: i cannot build golden with nimterop-0.6.2: |
13:29:35 | disruptek | /home/adavidoff/.cache/nim/nimterop/toastCache/nimterop_622733778.nim(7, 16) Error: cannot open file: nimterop/types |
13:33:02 | * | blackbeard420 joined #nim |
13:33:32 | * | hpyc9 joined #nim |
13:43:24 | * | fanta1 quit (Ping timeout: 244 seconds) |
13:43:24 | * | mbuchel joined #nim |
13:48:03 | * | fanta1 joined #nim |
13:48:34 | FromDiscord | <Clyybber> > the hash for the int is the int.↵Actually not anymore |
13:48:54 | FromDiscord | <Clyybber> But theres a switch to use the identity hash |
13:50:19 | * | waleee-cl joined #nim |
13:50:58 | mbuchel | does anyone know how to make a concept that can check the length of a string? |
13:51:07 | Yardanico | I think so |
13:51:31 | Yardanico | wait a sec |
13:52:33 | Yardanico | mbuchel: you mean a concept which would match for objects which can check the length of the string? |
13:53:02 | FromDiscord | <lqdev> sent a code paste, see https://play.nim-lang.org/#ix=2r1I |
13:53:04 | FromDiscord | <lqdev> mbuchel: ↑ |
13:53:12 | Yardanico | no string though |
13:53:23 | ForumUpdaterBot | New thread by Cyberlis: Why Seq search is faster than Table search, see https://forum.nim-lang.org/t/6519 |
13:53:26 | Yardanico | or maybe I misunderstood |
13:54:51 | Yardanico | mbuchel: do you mean something like that ? https://play.nim-lang.org/#ix=2r1K |
13:54:55 | Yardanico | or maybe i misunderstood |
13:55:20 | FromDiscord | <Clyybber> cyberlis: I think its because seqs are very fast, since linear in memory |
13:55:38 | mbuchel | kindof like that but what i want is similar to this https://play.nim-lang.org/#ix=2r1L |
13:55:55 | FromDiscord | <Clyybber> If you increase the size/iteration amount the tables should get faster at some point |
13:55:57 | Yardanico | mbuchel: concepts are compile-time only |
13:56:07 | Yardanico | they don't exist at runtime so you can't add checks like that really |
13:56:30 | FromDiscord | <lqdev> you can use assertions for that |
13:56:33 | mbuchel | is there a different thing like this that can do it at runtime? |
13:56:37 | FromDiscord | <lqdev> `assert s.len < 10` |
13:56:52 | FromDiscord | <lqdev> or `doAssert` if you want the assertion to work on -d:release |
13:56:57 | mbuchel | yes i know about assertions and that is the way we are doing it |
13:57:17 | FromDiscord | <lqdev> well, this is the only way afaik |
13:58:05 | mbuchel | but i want to know if there is a way that allows you to add it to the type and have nim generate the code for checking that it is handling the type correctly |
13:58:12 | mbuchel | or at least raise an error when it is not |
13:58:46 | mbuchel | i was able to do it in a very bad way which worked but it treated string as alias |
13:59:02 | mbuchel | and overwrote the $ for string |
14:00:18 | FromDiscord | <lqdev> there's no way of adding that to the type |
14:03:44 | mbuchel | is there a way to make a type to run a function before any assigning or modification |
14:03:49 | Yardanico | no |
14:03:57 | Yardanico | we don't have "creation" hooks or something like that |
14:04:07 | mbuchel | ah ok thank you |
14:05:27 | * | kenran quit (Quit: leaving) |
14:11:21 | * | flop joined #nim |
14:13:09 | shashlick | @disruptek I thought I had fixed that but it's a cache issue - please just clear nimcache/nimterop |
14:13:56 | * | laqq3 joined #nim |
14:14:08 | shashlick | Basically I removed the nimterop dependency from generated wrappers |
14:14:59 | FromDiscord | <Recruit_main707> nice |
14:18:09 | shashlick | I don't get it - wrapper path should depend on the file date of toast binary so if it was recompiled as part of an update, it should have changed and an old cached wrapper should have been discarded |
14:34:14 | disruptek | shashlick: that was the first thing i tried. |
14:37:14 | shashlick | Well that's nifty |
14:38:28 | disruptek | mbuchel: you can create a setter named `=whatever` for a `foo.whatever = ...` application. |
14:38:45 | leorize | I'm pretty sure the `=` is on the other end |
14:39:07 | disruptek | yeah. |
14:39:14 | disruptek | whatever. |
14:41:14 | disruptek | there are a lot of examples in golden. i hate it. |
14:41:14 | * | Vladar quit (Quit: Leaving) |
14:41:16 | disruptek | !repo golden |
14:41:16 | disbot | https://github.com/disruptek/golden -- 9golden: 11a benchmark for compile-time and/or runtime Nim 🏆 15 20⭐ 0🍴 |
14:42:30 | disruptek | shashlick: http://ix.io/2r1S |
14:59:46 | FromDiscord | <julcz> What GUI framework can you recommend for Nim? |
15:00:19 | Yardanico | well there are things like https://github.com/StefanSalewski/gintro and https://github.com/trustable-code/NiGui |
15:01:01 | shashlick | disuptek: can you also paste the generated wrapper - /home/adavidoff/.cache/nim/nimterop/toastCache/nimterop_622733778.nim |
15:02:28 | FromDiscord | <julcz> Thanks, I'll check it out |
15:02:58 | FromDiscord | <julcz> What about Nimx? Any experience with it? |
15:03:15 | Yardanico | well the people who made it use it in their apps :) |
15:03:16 | FromDiscord | <julcz> It works with mobile platforms and web too |
15:03:20 | Yardanico | but it's a bit less documented I feel |
15:04:10 | FromDiscord | <julcz> Alright, thanks again 😄 |
15:05:41 | * | natrys joined #nim |
15:11:41 | mbuchel | disruptek: thank you that works great |
15:12:08 | disruptek | cool. |
15:13:08 | disruptek | shashlick: http://ix.io/2r1W/nim |
15:14:29 | * | natrys_ joined #nim |
15:14:44 | * | natrys_ quit (Client Quit) |
15:17:27 | * | Vladar joined #nim |
15:18:21 | * | natrys quit (Ping timeout: 256 seconds) |
15:19:25 | * | maier quit (Ping timeout: 264 seconds) |
15:36:57 | FromGitter | <deech> Having some issues with closures and C/C++ interop, am I missing something about how `rawProc` and `rawEnv` work? https://github.com/nim-lang/Nim/issues/14920 |
15:37:00 | disbot | ➥ Passing a function pointer + env to a class constructor fails but works if applied directly ; snippet at 12https://play.nim-lang.org/#ix=2r23 |
15:41:57 | * | lritter joined #nim |
15:43:43 | * | nikita` joined #nim |
15:47:09 | * | marnix_ quit (Read error: Connection reset by peer) |
15:47:50 | * | marnix_ joined #nim |
15:53:14 | * | Jesin quit (Ping timeout: 260 seconds) |
15:54:36 | * | marnix joined #nim |
15:57:27 | * | marnix_ quit (Ping timeout: 256 seconds) |
15:57:31 | * | audiophile joined #nim |
16:00:40 | * | marnix_ joined #nim |
16:02:38 | * | nixfreak_work joined #nim |
16:04:59 | nixfreak_work | I'm starting an embedded project that uses FSR and RFID circuits , was thinking of using auduino or maybe something faster, would nim be a good language to program and interface with all of these circuits ? |
16:05:31 | * | enki_nam_shub joined #nim |
16:05:52 | FromDiscord | <Rika> sorry if this is rude or something but what makes a language bad for that case? |
16:05:55 | enki_nam_shub | someone come get their child, i dont appreciate the harassment https://mastodon.online/@holzwurst |
16:05:58 | * | enki_nam_shub quit (Client Quit) |
16:06:22 | FromDiscord | <Rika> enki_nam_shub what? |
16:07:23 | * | reversem3 joined #nim |
16:07:40 | Yardanico | LOL |
16:07:42 | Yardanico | he left |
16:08:05 | FromDiscord | <Rika> i dont understand |
16:08:08 | Yardanico | neither do I |
16:08:10 | FromDiscord | <Rika> what did they do |
16:08:16 | FromDiscord | <Rika> why was that posted |
16:08:16 | FromDiscord | <lqdev> uh? |
16:08:21 | FromDiscord | <Rika> who is that?? |
16:08:22 | Yardanico | but that name is probably related to The Incident |
16:08:30 | Yardanico | I'm almost 100% sure |
16:08:39 | FromDiscord | <lqdev> oh god no not that again |
16:08:40 | Yardanico | oh yeah |
16:08:41 | narimiran | can we just ignore this and not give it any attention? |
16:08:41 | Yardanico | https://mastodon.online/@holzwurst/with_replies see |
16:08:53 | FromDiscord | <Rika> ah i see |
16:08:54 | FromDiscord | <Rika> okay |
16:08:58 | Yardanico | someone started arguing with that person P |
16:08:58 | FromDiscord | <Rika> let's drop it now lol |
16:09:29 | FromDiscord | <lqdev> jesus fucking christ it's *them* again |
16:09:51 | FromDiscord | <Rika> rather the enki guy was prolly simula, anyway w/e theyre gone |
16:09:57 | Yardanico | yes |
16:10:06 | Yardanico | They joined, sent that message and immediately left |
16:10:08 | FromDiscord | <Rika> (w/e == whatever), for those who dont know |
16:10:27 | Yardanico | wait what |
16:10:33 | Yardanico | https://cybre.space/@simula/104467772660364644 ??????? |
16:10:38 | Yardanico | I hope they don't think it's me |
16:10:53 | Yardanico | I actually considered the idea of making a Mastodon account for some talk about that, but didn't do it |
16:11:08 | narimiran | CAN WE STOP TALKING ABOUT IT PLEASE? |
16:11:15 | Yardanico | OKAY I'M REALLY SORRY |
16:11:24 | Yardanico | you can punish me |
16:11:27 | Yardanico | daddy |
16:11:45 | shashlick | disruptek: this looks like magic - there's no code in nimterop that writes `import nimterop/types` anymore |
16:11:52 | * | marnix quit (Ping timeout: 246 seconds) |
16:12:43 | FromDiscord | <Rika> yard wtf lewd |
16:13:08 | Yardanico | it's not lewd if you say "no oxidizing" |
16:13:18 | Yardanico | oxidation* |
16:13:27 | FromDiscord | <Rika> lmao |
16:15:18 | shashlick | disruptek: can you check if /home/adavidoff/git/golden/deps/pkgs/nimterop-0.6.2/nimterop really is 0.6.2 |
16:15:30 | shashlick | or if it cloned an older code version |
16:15:50 | shashlick | and also can you check when toast in that directory was compiled? |
16:16:43 | disruptek | it's probably old. http://ix.io/2r2c |
16:17:05 | disruptek | it's always something. 😉 |
16:18:56 | mbuchel | nixfreak_work: i used nim for an nfc project before |
16:19:25 | mbuchel | it is good enough, the hardest part is if it is embedded on a smaller microcontroller |
16:19:34 | mbuchel | depends on the specs of the processor you are using |
16:20:45 | * | bacterio quit (Ping timeout: 240 seconds) |
16:21:11 | * | NimBot joined #nim |
16:24:05 | shashlick | disruptek: you trust nimph? 😄 |
16:24:40 | disruptek | i think we have to bump gittyup to support 0.6.2. |
16:25:10 | shashlick | but wrapper is generated at compile time |
16:25:42 | shashlick | nimgit2 is at 0.3.0 |
16:25:49 | disruptek | one at a time... |
16:25:50 | nixfreak_work | mbuchel - ok what did you have to do any "special" like FFI or import libs ? |
16:26:18 | * | Vladar quit (Remote host closed the connection) |
16:26:31 | nixfreak_work | mbuchel - also how did you get started ? |
16:26:54 | shashlick | looks like gittyup refers to git_strarray_free() which is not rendered in the wrapper |
16:27:50 | shashlick | ah it's deprecated |
16:28:29 | shashlick | and I set GIT_DEPRECATE_HARD in nimgit2 |
16:28:43 | disruptek | kinky. |
16:28:54 | shashlick | I can remove that from nimgit2 if you need |
16:29:06 | disruptek | what does it mean? |
16:30:32 | shashlick | https://github.com/genotrance/nimgit2/blob/master/nimgit2.nim#L43 |
16:31:47 | FromDiscord | <mratsim> @nixfreak_work: AFAIK there was a talk at NimConf for running Nim to control light switches |
16:32:05 | FromDiscord | <mratsim> https://www.youtube.com/watch?v=eCCrkZI0rVU&list=PLxLdEZg8DRwTIEzUpfaIcBqhsj09mLWHx&index=8&t=0s |
16:32:23 | disruptek | shashlick: but what does it mean? |
16:32:45 | audiophile | someone here was talking about a book a couple months ago about writing interpreters and they were doing it in nim |
16:32:51 | audiophile | any idea who/what that book is? |
16:32:51 | FromDiscord | <mratsim> https://github.com/clj/nim-esp8266-examples |
16:32:55 | disruptek | well, golden doesn't build due to an lmdb error, now. |
16:33:02 | FromDiscord | <mratsim> crafting interpreters by Nystrom? |
16:33:07 | Yardanico | yes |
16:33:10 | disruptek | yep. |
16:33:20 | FromDiscord | <mratsim> yeet |
16:33:22 | Yardanico | I kinda stopped reading it (not dropped, just did other stuff :P) |
16:33:38 | audiophile | aka paused and thanks! :) |
16:33:51 | Yardanico | see https://github.com/Yardanico/nim-lox/ |
16:34:00 | FromDiscord | <mratsim> Nystrom is the one behind the Wren language |
16:34:02 | Yardanico | the old branch is the java-based part of the book, and it's in Nim |
16:34:08 | audiophile | oooooh dammit |
16:34:10 | Yardanico | I didn't fully finish it though :P |
16:34:11 | FromDiscord | <mratsim> Vade Retro |
16:34:14 | audiophile | I knew the name sounded familiar |
16:34:19 | Yardanico | didn't finish inheritance or stuff like that |
16:34:19 | disruptek | shashlick: afaik, cligen 1.0 breaks nimph. |
16:34:27 | FromDiscord | <mratsim> Java, how could you, you are dead to me |
16:34:28 | Yardanico | and master is the C part of the book |
16:34:29 | Yardanico | still in nim |
16:34:34 | Yardanico | @mratsim I did it in Nim |
16:34:42 | Yardanico | so I had more work to do than just copy paste code from the book :P |
16:34:45 | FromDiscord | <mratsim> my eyes, they bleed |
16:34:57 | FromDiscord | <mratsim> set, get, set, get, Gang of 4 |
16:35:01 | Yardanico | XD |
16:35:14 | Yardanico | and there's also another implementation |
16:35:14 | audiophile | how different is creating an interpreter from a compiler? is the parsing part the same |
16:35:21 | Yardanico | audiophile: I think so, yes |
16:35:23 | audiophile | excuse my ignorance as I slept through my compilers class |
16:35:32 | Yardanico | interpreter itself *is* a compiler usually |
16:35:33 | audiophile | what about this 'lexer' |
16:35:35 | supakeen | audiophile: Nowadays the concepts have mostly merged together. |
16:35:36 | audiophile | oh |
16:35:41 | Yardanico | because it compiles source code into bytecode for the VM |
16:35:47 | Yardanico | same for the Lox (the C part of the book) |
16:35:50 | audiophile | great! I've always wanted to write my own compiler but I guess I can just do an interpreter now |
16:35:51 | supakeen | As in you see a lot of interpreters that will emit an intermediate code for the vm running the instructions. |
16:35:59 | audiophile | yeah python does .pyc |
16:36:39 | shashlick | disruptek: okay let me know what i need to do if anything |
16:36:41 | supakeen | There is really no good definition to make that holds for every setup (is java compiled? it makes bytecode and runs on a vm, so do a lot of other languages such as python, ruby, etc) |
16:37:29 | shashlick | https://github.com/libgit2/libgit2/blob/master/include/git2/deprecated.h#L42 |
16:37:35 | disruptek | shashlick: i dunno, i cannot be bothered to look at the lmdb wrapper atm. i will be moving golden to use gram and gram to use frosty, once i figure out the frosty bug. |
16:37:44 | audiophile | dat feel when you go to add 'crafting interpreters' to your goodreads shelf and see it already added smh |
16:38:38 | nixfreak_work | mratsim - I saw that on the Nim2020 playlist , but I could of sworn that there was a better way to do it? , maybe not. |
16:38:50 | disruptek | shashlick: i am fine with deprecate-hard, i guess. i would rather "fix" that stuff in nim than in the wrapper. |
16:38:58 | disruptek | so that's good. |
16:39:01 | shashlick | okay cool |
16:39:24 | shashlick | but i still don't see how nimterop 0.6.2 with an older nimgit2 renders a types.nim |
16:39:26 | * | GoJiRa123 joined #nim |
16:39:35 | * | GoJiRa123 quit (Remote host closed the connection) |
16:40:12 | disruptek | there's something i don't understand, because invariably, i have to rebuild nimgit2 and nimterop like 10 times to fix these problems. i have a hard time reproducing solutions. |
16:41:07 | shashlick | how do you tell nimph about a deps directory |
16:41:17 | * | endragor quit (Remote host closed the connection) |
16:41:43 | * | endragor joined #nim |
16:41:53 | disruptek | nimph is an auditor, it doesn't really /do/ anything itself. |
16:41:54 | audiophile | will learning to create an interpreter help me understand core nim better? |
16:42:12 | disruptek | --nimblePath="deps" |
16:42:24 | shashlick | you pass that to nimph? |
16:42:29 | disruptek | or whatever. i prefer --nimblePath="$config/deps/pkgs/" myself. |
16:42:35 | disruptek | i put it in a nim.cfg. |
16:42:44 | disruptek | there's a demo on the repo. |
16:42:46 | disruptek | !repo nimph |
16:42:47 | disbot | https://github.com/disruptek/nimph -- 9nimph: 11Nim package hierarchy manager from the future 🧚 15 68⭐ 5🍴 7& 1 more... |
16:44:18 | shashlick | okay building latest nimph |
16:44:54 | FromDiscord | <Shucks> `proc readSeq*(p: Process, address: ByteAddress, size: SIZE_T, t: typedesc): seq[t]` |
16:45:00 | FromDiscord | <Shucks> should I use generics here? |
16:45:11 | FromDiscord | <Rika> you cant |
16:45:38 | FromDiscord | <lqdev> he can |
16:45:42 | FromDiscord | <Rika> ? how? |
16:45:42 | * | fanta1 quit (Quit: fanta1) |
16:45:50 | FromDiscord | <lqdev> he'll just have to specify the type directly each time the proc is called |
16:45:59 | FromDiscord | <Rika> no i dont think that would work either |
16:46:10 | disruptek | sure it would. |
16:46:10 | * | endragor quit (Ping timeout: 246 seconds) |
16:46:14 | FromDiscord | <Rika> well try it anyway |
16:46:14 | FromDiscord | <lqdev> `proc readSeq*[T](p: Process, address: ByteAddress, size: SizeT): seq[T]` |
16:46:18 | disruptek | how do you think parseEnum works? |
16:46:22 | FromDiscord | <lqdev> and then `readSeq[int](…)` |
16:46:48 | FromDiscord | <Shucks> thank you! |
16:46:59 | * | endragor joined #nim |
16:48:32 | * | abm joined #nim |
16:48:37 | audiophile | "...The designer of Nimrod ended up renaming his language to “Nim” because too many people only remember that Bugs Bunny used “Nimrod” as an insult." wow really? |
16:48:49 | audiophile | not even sure what insult that is but okay |
16:48:49 | Yardanico | well, not just because of this, but yes |
16:48:54 | Yardanico | it's an american thing |
16:49:04 | audiophile | wasn't nimrod a dude (from wiki) |
16:49:54 | * | waleee-cl quit (Quit: Connection closed for inactivity) |
16:52:26 | mbuchel | nixfreak_work: nothing really special, you just have to remember that nim allows you to set your cpu |
16:52:34 | mbuchel | it depends on what you want to do |
16:52:46 | * | Trustable joined #nim |
16:53:38 | * | endragor quit (Ping timeout: 272 seconds) |
16:54:15 | shashlick | disruptek: cloned golden, setup nim.cfg for local deps and then ran nimph doctor |
16:54:25 | shashlick | Error: unhandled exception: 'reference' is not accessible using discriminant 'kind' of type 'Release' [FieldDefect] |
16:54:39 | shashlick | src/nimph/dependency.nim(334) isSatisfiedBy |
16:54:47 | shashlick | old case objects? |
16:55:49 | * | nixfreak_work quit (Ping timeout: 256 seconds) |
16:56:10 | disruptek | doesn't anyone test this shit? |
16:56:26 | shashlick | nope, compiling even with -d:nimOldCaseObjects doesn't help |
16:56:33 | disruptek | well, it wouldn't. |
16:56:52 | FromGitter | <matrixbot> `David` Hey I'm having some issues with fmt crashing my program at runtime. During a resize event of my window this is called pretty much constantly: ⏎ ⏎ fmt("place {container.id} -x {container.x.value} -y {container.y.value} -width {container.width.value} -height {container.height.value}") ⏎ ⏎ I will eventually get an error in prepareDealloc with an Illegal storage access segfault. Removing fmt and just |
16:56:52 | FromGitter | ... making the string normally does not crash the program. ... [https://gitter.im/nim-lang/Nim?at=5f0357d482f87b2ad70aed4b] |
16:56:54 | disruptek | that error is because something is making an incorrect case assumption. |
16:57:52 | shashlick | I see |
16:57:57 | disruptek | did you build toast? |
16:58:02 | shashlick | ya |
16:58:14 | disruptek | kk, i am attempting a repro. |
16:58:22 | shashlick | cloned nimph |
16:58:27 | shashlick | create nim.cfg |
16:58:40 | shashlick | export NIMBLE_DIR=deps and then nimble install -d |
16:58:46 | shashlick | cause i'm lazy |
16:58:57 | FromDiscord | <Rika> david: i think an issue is warranted |
16:59:02 | shashlick | then nim c src/nimph |
16:59:04 | FromDiscord | <Rika> well |
16:59:10 | disruptek | well, that's a weird way to do it. neither nim or nimph really use $NIMBLE_DIR. |
16:59:18 | FromDiscord | <Rika> it would be best maybe to show an code example first |
16:59:21 | shashlick | ya only to get the deps down |
16:59:25 | shashlick | maybe i could use your bootstrap |
16:59:26 | disruptek | nimph tries to work with it, but because it's not a compiler thing, i won't support it. |
16:59:40 | shashlick | i removed NIMBLE_DIR when using nimph |
16:59:51 | shashlick | just using nim.cfg like you said above |
16:59:55 | disruptek | well, it doesn't work for me, but for different reasons: |
16:59:58 | disruptek | /home/adavidoff/git/g/golden/deps/pkgs/gittyup-2.5.1/gittyup.nim(1018, 9) Error: undeclared identifier: 'git_strarray_free' |
17:00:36 | disruptek | removing the cache doesn't help. |
17:00:42 | disruptek | this is a fresh golden clone. |
17:01:07 | shashlick | that's cause gittyup is using that proc when it is deprecated |
17:01:46 | disruptek | oh right, i didn't update golden's git version. |
17:01:59 | shashlick | it works for me cause I didn't pull a newer libgit2 in the cache |
17:02:08 | disruptek | rm nimterop cache again, switch to v1.0.1, try again... |
17:02:08 | shashlick | i'm still in July 2nd commit |
17:02:22 | disruptek | now i repro the new lmdb error. |
17:02:37 | disruptek | nimph is working fine for me on golden, though. |
17:02:53 | * | natrys joined #nim |
17:04:58 | shashlick | Hmm |
17:05:29 | shashlick | So golden is compiling now? |
17:05:44 | disruptek | no, due to lmdb wrapper error. |
17:05:52 | disruptek | http://ix.io/2r2o |
17:06:27 | * | FromGitter quit (Ping timeout: 240 seconds) |
17:07:24 | shashlick | Ah I didn't know that was also a wrapper |
17:07:31 | * | oprypin quit (Remote host closed the connection) |
17:07:52 | disruptek | it wasn't, originally, but them you made me one and i decided to use yours instead of federico's. |
17:07:54 | shashlick | Is it within golden? Or a separate package |
17:08:01 | disruptek | it's in golden. |
17:08:07 | shashlick | Oh you want me to use my memory |
17:08:23 | shashlick | I only have up to l3 cache |
17:08:31 | disruptek | see src/golden/lmdb.nim |
17:09:31 | shashlick | Ok I'll check in a bit |
17:09:35 | shashlick | Errands time |
17:09:46 | disruptek | danke. |
17:10:00 | * | FromGitter joined #nim |
17:10:01 | disruptek | i have some trolling to do in another channel. |
17:10:08 | * | oprypin joined #nim |
17:10:39 | alehander92_ | hey |
17:11:00 | alehander92_ | it's time to code? |
17:11:21 | disruptek | nah. |
17:11:21 | * | FromGitter quit (Read error: Connection reset by peer) |
17:11:24 | * | oprypin_ joined #nim |
17:11:25 | * | oprypin quit (Read error: Connection reset by peer) |
17:11:36 | * | FromGitter joined #nim |
17:12:48 | * | dmi0 quit (Read error: Connection reset by peer) |
17:12:52 | * | dmi00 joined #nim |
17:13:25 | solitudesf | disruptek, leave crystal guys alone |
17:14:14 | disruptek | but... |
17:15:00 | solitudesf | you dont see them coming here and bashing our json parser, do you? |
17:16:37 | alehander92_ | what are you fithigng |
17:16:38 | alehander92_ | about |
17:17:04 | disruptek | shhh alehander is a crystal dork. |
17:18:07 | * | nixfreak_work joined #nim |
17:18:10 | * | oprypin_ is now known as oprypin |
17:19:21 | Oddmonger | can you tell me what is the repl used ? https://www.youtube.com/watch?v=Qa_9vut4TzQ&feature=youtu.be&t=199 |
17:19:41 | solitudesf | its literally the name of the video |
17:19:44 | disruptek | it says "INim" at the top. |
17:19:53 | Oddmonger | oh |
17:20:12 | Oddmonger | i had read «nim is back» |
17:20:34 | Oddmonger | and i don't understand all he says |
17:20:38 | FromDiscord | <JackFly26> lol i accidentally programmed in nim like it was lazy |
17:20:44 | FromDiscord | <JackFly26> sent a code paste, see https://play.nim-lang.org/#ix=2r2q |
17:20:46 | alehander92_ | i did write some crystal |
17:20:51 | FromDiscord | <JackFly26> got surprised when infinite recursion happened |
17:20:56 | alehander92_ | i like it |
17:28:44 | disruptek | we can't be friends. |
17:33:35 | FromDiscord | <Clyybber> we can |
17:36:45 | FromDiscord | <Zachary Carter> sent a code paste, see https://play.nim-lang.org/#ix=2r2z |
17:41:34 | shashlick | disruptek: did you have to change anything to fix that discriminator issue |
17:41:47 | shashlick | I still see that so not able to proceed on golden |
17:44:10 | * | vr0n joined #nim |
17:45:19 | FromGitter | <recloser> zachary carter: either drop the parameter and just do`importcpp: "Animation::TestTag<'0>()"`? or try something like this `importcpp: "decltype(#)::TestTag<'0>()"` |
17:46:27 | * | bacterio joined #nim |
17:48:10 | * | Senny joined #nim |
17:50:26 | * | Jesin joined #nim |
17:51:08 | FromDiscord | <Zachary Carter> thanks |
17:51:50 | FromDiscord | <Zachary Carter> the parameter is the instance of the class the member function belongs to though |
17:51:53 | FromDiscord | <Zachary Carter> so I don't think I can drop it |
17:55:15 | * | endragor joined #nim |
17:59:12 | FromGitter | <recloser> i'm guessing TestTag template exists in several classes and you want an overloaded Nim testTag proc for each of them? |
18:00:23 | FromDiscord | <Clyybber> @JackFly26 Doesn't your any just have to be lazy? |
18:03:55 | * | audiophile quit (Remote host closed the connection) |
18:04:37 | * | audiophile joined #nim |
18:05:16 | * | endragor quit (Ping timeout: 246 seconds) |
18:05:51 | FromDiscord | <Zachary Carter> recloser: not exactly - and my example C++ code had the wrong class name. It's defined here - https://github.com/guillaumeblanc/ozz-animation/blob/6ec66420abada9c1235fac25a8d9ff25936fc672/include/ozz/base/io/archive.h#L223 |
18:05:59 | FromDiscord | <Zachary Carter> I actually think what I put in the Nim code is correct |
18:06:05 | FromDiscord | <Zachary Carter> I think I'm maybe invoking it incorrectly |
18:06:13 | * | marnix joined #nim |
18:07:13 | * | nixfreak_work quit (Ping timeout: 256 seconds) |
18:07:55 | FromDiscord | <Zachary Carter> np! |
18:07:56 | * | muffindrake quit (Ping timeout: 244 seconds) |
18:10:39 | FromGitter | <recloser> ah, nvm for some reason i thought that template was supposed to be a static member |
18:12:13 | FromDiscord | <Zachary Carter> np! |
18:31:20 | FromDiscord | <Varriount> Anyone know what timezone timotheecour is in? |
18:31:40 | Yardanico | i think they're in USA at least |
18:32:40 | FromDiscord | <Shucks> does inline asm support x64? Afaik visual studio removed it from x64 projects for any reason. |
18:32:56 | Yardanico | of course? |
18:33:00 | FromDiscord | <Varriount> Shucks: What do you mean by removed? |
18:33:17 | Yardanico | @Varriount seems like vc++ doesn't support inline assembly for x64 or arm |
18:33:28 | Yardanico | "Inline assembly is not supported on the ARM and x64 processors. " |
18:33:30 | Yardanico | https://github.com/MicrosoftDocs/cpp-docs/blob/master/docs/assembler/inline/inline-assembler.md |
18:33:48 | FromDiscord | <Shucks> yup |
18:33:57 | Yardanico | well use clang or mingw :P |
18:34:19 | FromDiscord | <Varriount> Araq: Would you be ok with me reformatting/refactoring nimbase.h? I ran into an odd corner-case with clang+windows sdk that requires some changes, and that file looks badly in need of some love. |
18:34:40 | FromDiscord | <Shucks> im not using cpp at all. Was just wondering if nim as any limitations there |
18:34:47 | Yardanico | nim itself does not I think |
18:34:51 | FromDiscord | <Varriount> Shucks: Unfortunately then, it's not supported. Nim uses the underlying C/C++ compiler. |
18:35:06 | FromDiscord | <Varriount> At least for Visual studio. |
18:35:57 | FromDiscord | <Varriount> Inline ASM pretty much tells the Nim compiler, "place this text in the inline ASM statement for whatever C compiler is being used. |
18:36:21 | FromDiscord | <Varriount> The text isn't translated or analyzed at all, I don't think. |
18:37:56 | FromDiscord | <Shucks> Im confused. I'm not using visual studio to compile my nim code |
18:38:12 | Yardanico | do you use visual studio's c compiler? |
18:38:21 | FromDiscord | <Shucks> im using mingw |
18:38:27 | Yardanico | then you don't need to care about that x64 note |
18:38:33 | Yardanico | I think mingw would support x64 asm just fine |
18:38:52 | FromDiscord | <Shucks> Great |
18:41:29 | * | arecaceae quit (Remote host closed the connection) |
18:42:29 | * | arecaceae joined #nim |
18:47:03 | Yardanico | !status |
18:47:04 | FromDiscord | Uptime - 3 days, 12 hours, and 29 minutes |
18:47:33 | * | maier joined #nim |
18:48:34 | FromDiscord | <Varriount> I'm weird, and attempting to use clang+windows sdk |
18:48:57 | FromDiscord | <Varriount> (although, I wonder if GCC would work with the Windows SDK... probably not) |
18:49:11 | Yardanico | well mingw exists for that |
18:49:31 | FromDiscord | <Varriount> True, but Mingw uses reverse-engineered header files. |
18:53:58 | * | endragor joined #nim |
18:59:01 | * | endragor quit (Ping timeout: 264 seconds) |
19:03:06 | * | waleee-cl joined #nim |
19:03:54 | FromDiscord | <dom96> > Nice, thanks Yardanico. I've been thinking whether to buy the book or not and this makes the decision easier. I assume dom96 will still get his full share?↵@--HA-- @Yardanico if you want to support me in the best way possible then purchase via http://book.picheta.me |
19:04:16 | Yardanico | well you didn't update the price today :P |
19:04:19 | Yardanico | and it's $25 as I said |
19:04:25 | Yardanico | all manning books are 50% off I think |
19:04:36 | FromDiscord | <dom96> yeah, I can't keep up with all their sales |
19:05:06 | FromDiscord | <dom96> You can also link via https://www.manning.com/books/nim-in-action?a_aid=niminaction&a_bid=78a27e81 |
19:05:20 | FromDiscord | <dom96> (That's my affialiate code ;)) |
19:05:23 | Yardanico | lol |
19:05:24 | FromDiscord | <dom96> (edit) 'affialiate' => 'affiliate' |
19:12:44 | FromDiscord | <Zachary Carter> hrm still need help with this importcpp C++ template stuff |
19:20:01 | * | marnix quit (Ping timeout: 264 seconds) |
19:35:03 | * | laqq3 quit (Ping timeout: 256 seconds) |
19:41:05 | FromDiscord | <treeform> I had a big C++ template mess, I just create a bloc of C++ code and made C-like interface for it. Then wrapped that in nim. Works! |
19:41:48 | FromDiscord | <treeform> Example here: https://github.com/treeform/steamworks/blob/master/src/steamworks.nim#L229 |
19:42:11 | FromDiscord | <treeform> I could not make nim produce that exact C++ definition. So i just emit it. |
19:45:06 | * | laqq3 joined #nim |
19:56:32 | FromDiscord | <Zachary Carter> ooph - yeah I'd like to avoid that if I can possibly |
19:56:42 | FromDiscord | <Zachary Carter> let me throw together a gist of what i have |
19:58:41 | FromDiscord | <lqdev> how can I produce a doc comment AST? |
19:59:02 | FromDiscord | <lqdev> ah, I can just set the strVal |
19:59:40 | FromDiscord | <Zachary Carter> https://gist.github.com/zacharycarter/8e1ab668fa2295089ca49037d0e3ab7a |
20:01:56 | * | polypus74 joined #nim |
20:03:20 | polypus74 | Is there a doc server or standard command for generating all installed (nimble) package docs? |
20:07:53 | FromDiscord | <treeform> What error do you get? |
20:09:55 | FromDiscord | <treeform> Hmm I don't get what `"ozz::io::IArchive(@)"` or `"#.TestTag<'*0>()"` do... |
20:10:25 | disruptek | shashlick: send me a paste? |
20:10:36 | disruptek | (i cannot repro it) |
20:15:34 | FromDiscord | <Zachary Carter> I pasted the error in the last part of the gist |
20:15:40 | FromDiscord | <Zachary Carter> `Error: cannot instantiate: 'T'` |
20:16:06 | FromDiscord | <Zachary Carter> oh maybe because I need to define the constructor for `Skeleton` I'll try that |
20:27:47 | * | endragor joined #nim |
20:28:21 | FromDiscord | <Zachary Carter> maybe I should just pass the type in as a parameter |
20:32:27 | FromDiscord | <Zachary Carter> yeah that worked |
20:32:34 | * | endragor quit (Ping timeout: 240 seconds) |
20:32:38 | FromDiscord | <Zachary Carter> `proc testTag*(a: Archive, b: typedesc): bool {.importcpp: "#.TestTag<'2>()", header: ozzIncludePath/"ozz/base/io/archive.h".}` generates the correct C++ |
20:32:48 | shashlick | disruptek: http://ix.io/2r3v |
20:33:05 | shashlick | when i setup deps with nimterop, i can compile but it fails with the undeclared identifier: 'git_strarray_free' |
20:33:14 | shashlick | nimble, not nimterop |
20:37:20 | disruptek | yeah, that means you've got the wrong version of libgit2. |
20:37:39 | disruptek | i fixed that today; issue `nimph fetch` and `nimph upgrade`. |
20:38:30 | disruptek | why can't the compiler parse your nim.cfg? |
20:38:49 | disruptek | --nimblePath:"$config/deps/pkgs" |
20:38:54 | disruptek | try s/:/=/ |
20:39:52 | disruptek | also, where did these deps come from? they aren't from git? |
20:40:15 | disruptek | put a --clearNimblePath in first if you're going to use local deps, right? |
20:41:04 | disruptek | that's probably the key that i need to debug this. |
20:42:08 | * | dmi00 quit (Remote host closed the connection) |
20:42:08 | disruptek | hmm, that : syntax works fine for me. which compiler built your nimph? |
20:42:33 | * | narimiran quit (Quit: leaving) |
20:44:20 | shashlick | ah okay - let me add clearNimblePath |
20:45:00 | disruptek | the error is from npeg iirc. it's odd i can't even repro that. |
20:46:15 | disruptek | instead of "not in git repo" it should probably provide the path to the nimble package. |
20:46:19 | shashlick | starting with your bootstrap - Error: Cannot satisfy the dependency on cligen 1.0.0 and cligen 0.9.45 |
20:46:42 | disruptek | yeah, because you require 1.0 in nimterop but it breaks nimph. |
20:47:50 | disruptek | i should give c-blake a bug report. |
20:48:13 | * | maier quit (Ping timeout: 264 seconds) |
20:48:23 | shashlick | okay i recompiled nimph after clearing nimterop cache |
20:48:33 | shashlick | ran nimph on golden and run into same issue |
20:49:08 | disruptek | does your golden.nim.cfg have git2SetVer="v1.0.1"? |
20:49:30 | disruptek | ie. it's commit 5f9b9e |
20:49:53 | shashlick | yes golden is up to date |
20:49:57 | polypus74 | Is there a standard (easy) way of viewing all of the docs in one place globally and/or per nimble project like there is in some languages via a doc server, or just generating the doc locally? |
20:50:02 | shashlick | nimph is crashing tho |
20:50:06 | disruptek | welcome to my world. |
20:50:23 | disruptek | polypus74: only https://nimble.directory/ afaik |
20:50:36 | shashlick | this is different |
20:50:37 | disruptek | you can generate docs locally with `nim doc`. |
20:50:39 | shashlick | Error: unhandled exception: /home/genotrance/programming/golden/deps/ is missing; can't run nimble [IOError] |
20:51:50 | disruptek | if the directory exists then that's a bug. |
20:52:07 | shashlick | it doesn't exist - it doesn't get created? |
20:52:25 | shashlick | okay i created it and nimph ran |
20:52:28 | shashlick | now trying doctor |
20:52:34 | disruptek | nimph doesn't create any paths for you, because otherwise it'd be creating /opt/nimble all the fscking time. |
20:52:43 | polypus74 | i want all the docs for all of the dependencies though, either that or just all installed packages. is there a tool? how do you guys view package docs? |
20:53:09 | shashlick | could not parse /home/genotrance/programming/golden/nim.cfg naïvely: |
20:53:13 | disruptek | i just told you what i use. you could contribute your thoughts to the ndoc repo where i'm scheming a better solution. |
20:53:17 | disruptek | !repo ndoc |
20:53:19 | disbot | https://github.com/nodeca/ndoc -- 9ndoc: 11js port of pdoc, with extentions 15 93⭐ 8🍴 7& 29 more... |
20:53:57 | shashlick | nimph adds paths but missed a newline - `--nimblePath="$config/deps/pkgs"--path="$config/deps/pkgs/terminaltables-#head/src/"` |
20:54:10 | disruptek | ah, that's why it could not parse your nim.cfg. |
20:54:21 | disruptek | that's an easy fix, cool. keep them coming. |
20:54:30 | shashlick | golden version 3.0.14 lookin' good |
20:55:34 | shashlick | hmm, nimph didn't build toast |
20:55:40 | shashlick | gotta do that manually |
20:55:58 | disruptek | yeah, it doesn't do any nimble bullshit. |
20:58:38 | shashlick | how about just compiling bin declarations |
20:58:45 | * | endragor joined #nim |
20:58:59 | disruptek | no point; i'm removing .nimble files. |
21:01:23 | disruptek | gah, i don't even know how to remove a trailing newline from my .cfg. 🤣 |
21:01:46 | FromDiscord | <lqdev> this shit again. `internal error: environment misses: radius` |
21:01:51 | FromDiscord | <lqdev> when does this error arise? |
21:02:04 | FromDiscord | <lqdev> I'm trying to use a parameter's value in another parameter's default value |
21:02:13 | disruptek | that's when. |
21:02:16 | FromDiscord | <lqdev> but I can't seem to reproduce the error in a standalone setting |
21:02:28 | FromDiscord | <lqdev> I changed my module layout and this started happening |
21:05:07 | disruptek | shashlick: there's code to test the config after nimph modifies it, so i guess that didn't work in your case. 🙁 |
21:06:58 | * | endragor quit (Ping timeout: 272 seconds) |
21:07:11 | FromDiscord | <lqdev> just re-ran the compiler with koch temp to get a stack trace, this is what I got http://ix.io/2r3G |
21:07:20 | FromDiscord | <lqdev> any compiler folks around? |
21:08:04 | disruptek | lqdev: can i see the code? |
21:08:13 | FromDiscord | <lqdev> give me a sec, I'm pushing it |
21:08:56 | FromDiscord | <lqdev> disruptek: https://github.com/liquid600pgm/rapid/blob/version-2020/src/rapid/graphics/context.nim#L295 |
21:09:04 | shashlick | i found your issue - MDBEnv is an importc object so you cannot `var e: MDBEnv` |
21:09:09 | shashlick | size is unknown |
21:09:27 | disruptek | well, it worked a month ago. |
21:09:34 | shashlick | lmdb api should be returning it to you, looking at the api |
21:09:43 | shashlick | that's cause you used the old nimterop |
21:09:45 | shashlick | backend |
21:10:45 | shashlick | it's now marked as an incompleteStruct |
21:11:00 | disruptek | 0.8.10 has your two fixes in it. |
21:11:59 | disruptek | lqdev: i mean, i get it, but you're kinda asking a lot here (and needlessly). |
21:12:25 | disruptek | why not just `let points = ...` in the proc? |
21:12:38 | FromDiscord | <lqdev> because I want to make it user-controllable |
21:12:57 | disruptek | does it ever make sense to pass 0? |
21:13:07 | FromDiscord | <lqdev> also even if I remove this, it breaks in other places (line 394) |
21:13:19 | FromDiscord | <lqdev> disruptek: probably not, I need to change it to something else |
21:13:43 | disruptek | well, that's a workaround. i'm not sure this isn't a bug though; at least the message is misleading. |
21:14:22 | FromDiscord | <lqdev> well what makes me confused is that it worked literally like, 10 minutes ago |
21:14:34 | disruptek | where are you using it? |
21:14:39 | FromDiscord | <lqdev> and it broke while I was doing some stuff with matrices |
21:14:52 | FromDiscord | <lqdev> here https://github.com/liquid600pgm/rapid/blob/version-2020/tests/tgfx.nim |
21:15:45 | shashlick | how do i test golden |
21:16:17 | disruptek | golden somebinary or golden some.nim |
21:16:23 | FromDiscord | <lqdev> I'm not sure what default param values have to do with lambda lifting though |
21:16:28 | FromDiscord | <Shucks> How would you guys read a sequence from internal memory? My approach: ```proc readSeq*(address: ByteAddress, size: SIZE_T, t: typedesc = byte): seq[t] =↵ var data = newSeq[t](size)↵ copyMem(data.addr, cast[pointer](address), size)↵ result = data``` |
21:16:47 | FromDiscord | <lqdev> @Shucks yeah pretty much like that |
21:17:32 | shashlick | `var e: ptr MDBEnv; self.db = e` |
21:17:50 | shashlick | and `var txn: ptr MDB_Txn; result = txn` |
21:18:16 | shashlick | in lm.nim |
21:18:46 | disruptek | lqdev: it's trying to write the call and it needs to put the default points in because you didn't supply it. |
21:19:15 | disruptek | so it literally moves the exp outside the proc to prepare it for inclusion in the proc env. |
21:19:33 | FromDiscord | <lqdev> huh |
21:19:39 | disruptek | i dunno why it cannot find it, though. |
21:19:57 | FromDiscord | <lqdev> I mean, like I said, it worked a short while ago |
21:20:07 | FromDiscord | <lqdev> then I rearranged some stuff, added some type safety™ and it's broken |
21:20:26 | FromDiscord | <lqdev> let me try to remove the new import I added maybe it's the cause |
21:21:09 | FromDiscord | <lqdev> nope, no effect |
21:21:43 | ForumUpdaterBot | New thread by Timothee: Difference between any and auto?, see https://forum.nim-lang.org/t/6520 |
21:22:13 | disruptek | i've produced this error before but i don't recall the circumstances, so it's a useless experience. 😉 |
21:22:21 | shashlick | disruptek: here's a patch to get it to compile - http://ix.io/2r3L |
21:22:34 | disruptek | well is your git broken? |
21:22:41 | disruptek | you have push rights, don't you? |
21:23:03 | disruptek | oh, maybe not to golden. 😁 |
21:23:26 | FromDiscord | <lqdev> the patch contains ANSI color codes |
21:23:36 | disruptek | he's a wildman. |
21:23:46 | shashlick | disruptek: till tests pass, patch doesn't mean anything |
21:24:29 | shashlick | it fails with --useVersion:1.0 though |
21:24:35 | disruptek | everything does. |
21:24:36 | shashlick | so might not be related to the patch |
21:24:43 | shashlick | too lazy to fork around |
21:24:45 | disruptek | !issue useVersion author:disruptek |
21:24:55 | disruptek | disbot: you awake? |
21:24:55 | disbot | yep. 😊 |
21:24:58 | disruptek | !issue useVersion author:disruptek |
21:24:58 | disbot | https://github.com/nim-lang/Nim/issues/14912 -- 3the --useVersion:1.0 no longer works in devel |
21:25:55 | * | endragor joined #nim |
21:26:08 | disruptek | so we need to require which version of nimterop, now? |
21:26:18 | shashlick | 0.6.2 is latest |
21:26:36 | disruptek | that's the first one with this, uh, "feature"? |
21:26:47 | shashlick | which feature |
21:27:05 | FromDiscord | <Recruit_main707> shashlick:ive seen a lot of improvements in nimterop recently, first of all congrats for it, secondly, I was wondering if static inline functions worked already |
21:27:23 | shashlick | yes if you use header, rather if you avoid --noHeader |
21:28:07 | FromDiscord | <Recruit_main707> Ok, might give it another try then |
21:28:16 | shashlick | cool |
21:28:26 | shashlick | see the changelog to see what's changed - https://github.com/nimterop/nimterop/blob/types/CHANGES.md |
21:29:10 | disruptek | golden fixed. thanks, shashlick. you are the man. |
21:29:19 | disruptek | 3.0.15 |
21:29:27 | FromDiscord | <Varriount> What's golden? |
21:29:33 | disruptek | !repo golden |
21:29:35 | disbot | https://github.com/disruptek/golden -- 9golden: 11a benchmark for compile-time and/or runtime Nim 🏆 15 20⭐ 0🍴 |
21:30:37 | disruptek | arc still 3.2s versus 2.5s for refc on json benchmark. |
21:31:06 | FromDiscord | <dom96> Any people with systemd knowledge here? |
21:31:54 | disruptek | wow, base64 benchmark is now 7s versus 1.35s for refc. |
21:32:01 | disruptek | we're moving in the wrong direction, here. |
21:32:19 | disruptek | really need zevv's bug fixed, at least. |
21:33:29 | * | endragor quit (Ping timeout: 256 seconds) |
21:33:49 | * | natrys quit (Quit: natrys) |
21:34:43 | FromDiscord | <lqdev> disruptek: I think I managed to find the culprit |
21:34:59 | FromDiscord | <lqdev> wrapping tgfx's code in a `proc main =` causes the error |
21:35:13 | FromDiscord | <lqdev> it works fine without a `proc main` |
21:35:57 | * | flop quit (Quit: WeeChat 2.8) |
21:36:26 | disruptek | is it lifting it outside the main? can i see the c? |
21:36:37 | FromDiscord | <lqdev> sure, give me a sec |
21:36:57 | FromDiscord | <lqdev> wait, does it still output C if compilation fails? |
21:37:13 | disruptek | i don't need a failure, i need success. hehe |
21:37:22 | disruptek | i just wanna see where it's lifting it. |
21:38:13 | disruptek | iirc it was in a block, so any c output will be good enough for me. |
21:39:16 | * | solitudesf quit (Ping timeout: 272 seconds) |
21:39:23 | * | sz0 quit (Quit: Connection closed for inactivity) |
21:39:49 | FromDiscord | <lqdev> will just @mtgfx.nim.c suffice, or do I need to upload any other files? |
21:39:56 | disruptek | no, just that one. |
21:39:59 | FromDiscord | <lqdev> anyways here it is http://ix.io/2r3O |
21:40:44 | disruptek | omg my vim thinks all files are binary now. |
21:42:22 | * | abm quit (Quit: Leaving) |
21:44:17 | disruptek | well it's not lifting it past the while, so i don't think it's a lifting problem. |
21:45:33 | FromDiscord | <lqdev> well, you can't even know that because when it fails it doesn't output the c. |
21:45:52 | disruptek | why should it vary, though? |
21:46:16 | FromDiscord | <lqdev> because there's another proc involved now |
21:46:20 | FromDiscord | <lqdev> and it's `main()` |
21:46:32 | disruptek | main? |
21:46:37 | disruptek | is that special? |
21:46:40 | * | sz0 joined #nim |
21:46:42 | FromDiscord | <lqdev> no. |
21:46:43 | FromDiscord | <lqdev> i made it. |
21:46:52 | FromDiscord | <lqdev> i said that it errors when i wrap the module in a main() proc |
21:47:01 | disruptek | i know. but, this is a bug. |
21:47:14 | * | Senny quit (Ping timeout: 240 seconds) |
21:48:46 | FromDiscord | <lqdev> well, but then it has to be doing something weird if it's main()ed. |
21:49:28 | disruptek | agree. but, i have to get back to moving. bbl. |
21:49:48 | FromDiscord | <lqdev> well, I'm off to bed so goodnight |
21:55:58 | * | Trustable quit (Remote host closed the connection) |
22:01:15 | * | sagax joined #nim |
22:14:51 | shashlick | disruptek: gittyup still refers to `git_strarray_free` |
22:15:48 | disruptek | so? |
22:18:10 | shashlick | its deprecated remember |
22:18:19 | disruptek | oh, hard deprecation. |
22:18:24 | disruptek | you are a naughty, naughty man. |
22:18:43 | disruptek | Error: undeclared identifier: 'git_strarray_dispose' |
22:18:51 | disruptek | no what? |
22:18:54 | disruptek | now what? |
22:19:42 | disruptek | dispose is only in HEAD. you're gonna have to turn off the hard deprecate. |
22:19:58 | shashlick | fair |
22:20:06 | disruptek | wait, maybe i can alias it somehow. |
22:24:47 | shashlick | bunch of stylistic duplicates man |
22:24:48 | shashlick | what a bore |
22:25:05 | disruptek | kinda makes sense though; they can cache the arrays in the lib. |
22:25:16 | disruptek | ima template it i guess. |
22:26:28 | * | nikita` quit (Remote host closed the connection) |
22:28:33 | shashlick | this is going to take forever |
22:30:58 | ForumUpdaterBot | New thread by XxDiCaprioxX: How to set up/start a Project?, see https://forum.nim-lang.org/t/6521 |
22:31:28 | * | polypus74 quit (Quit: WeeChat 2.8) |
22:43:33 | FromDiscord | <pan> sent a code paste, see https://play.nim-lang.org/#ix=2r43 |
22:44:03 | FromDiscord | <pan> what would be the correct way to do this? my syntax here probably isnt correct but im unsure what this would look like |
22:46:21 | FromDiscord | <Rika> sent a code paste, see https://play.nim-lang.org/#ix=2r46 |
22:46:59 | FromDiscord | <pan> oh, i wasnt aware `block` would be useful there, thanks |
22:54:44 | FromDiscord | <pan> thinking i could make it a bit cleaner by just having it run and then using a `continue` when it finds a factor already in the list, can i use a continue on the outer for loop of `for i in 1..limit:` when it would be inside of the `for prime in result:` block? |
22:55:12 | FromDiscord | <pan> im assuming i would need to name the outer for loop block somehow |
22:55:44 | FromDiscord | <Rika> outer? |
22:56:13 | disruptek | shashlick: what is? |
22:57:31 | FromDiscord | <pan> sent a code paste, see https://play.nim-lang.org/#ix=2r4b |
22:58:15 | disruptek | pro tip: continue is for wusses. |
22:58:56 | disruptek | pro tip: lookup the sieve of eratosthenes. |
22:59:31 | FromDiscord | <pan> if the logic in `for prime in result:` finds that `i mod prime == 0` then it needs to continue the outer loop `for i in 1..limit` |
22:59:58 | disruptek | see named break statements. |
23:00:02 | disruptek | ~manual |
23:00:02 | disbot | manual: 11the Nim Manual is https://nim-lang.org/docs/manual.html -- disruptek |
23:02:42 | shashlick | pushing a newer nimgit2 with deprecated included |
23:03:12 | FromDiscord | <pan> i dont understand how i would use a named break here though, thats my issue |
23:03:32 | disruptek | see the block: statement. |
23:03:40 | shashlick | v0.3.1 is out |
23:03:49 | shashlick | hopefully it passes tests, too bored to wait for the CI |
23:03:52 | disruptek | so we need to depend on it? |
23:04:14 | shashlick | ideally |
23:04:26 | disruptek | okay; i'll bump everything. |
23:04:57 | disruptek | what did you do? i already patched gittyup and released it. |
23:07:13 | shashlick | happy to revert, what do you prefer |
23:07:37 | shashlick | why would they deprecate in a release and then add the replacement to head |
23:07:45 | shashlick | wouldn't you do both together |
23:08:00 | disruptek | i dunno, seems like you did some other stuff? |
23:08:19 | disruptek | i wouldn't revert a release; does it work with current gittyup? |
23:08:54 | disruptek | isn't git_oid_iszero okay? |
23:09:43 | disruptek | we'll just commit gittyup to see if it passes and we can bump it later if we need to. |
23:10:00 | shashlick | i just removed the #define HARD deprecated, and then removed proc which were stylistic duplicates in deprecated |
23:10:24 | disruptek | ah; see i just fix that shit with templating. |
23:10:54 | disruptek | i didn't realize you were working on it or i'd have told you to skip it. 😉 |
23:12:35 | shashlick | i can revert the commit - i think it is wiser to not include deprecated |
23:12:41 | shashlick | since it could break if someone tried an older version |
23:12:46 | shashlick | with missing skips |
23:13:59 | disruptek | it's confusing that i have to click on the committer to see the commits. |
23:14:13 | disruptek | especially since hover tells me it'll only show me that person's commits, not all of them. |
23:15:30 | disruptek | you can't even build gittyup with <1.0.0, y'know. |
23:16:26 | shashlick | i'm working on building v1.0.1 of libgit2 with julia |
23:16:27 | disruptek | also, looks like 0.3.1 will pass tests. |
23:16:34 | * | oddp quit (Ping timeout: 260 seconds) |
23:16:42 | shashlick | thinking of posting the binaries elsewhere so that we have newer versions than what julia provides |
23:16:47 | shashlick | they are gated by wrapper support too |
23:16:57 | shashlick | cross OS? |
23:16:59 | disruptek | we can just add the binaries into gitnim. |
23:17:20 | disruptek | https://travis-ci.com/github/disruptek/gittyup/builds/174531936 |
23:17:26 | disruptek | it's chewing on windows only, now. |
23:17:53 | disruptek | bbl |
23:17:56 | shashlick | https://travis-ci.org/github/genotrance/nimgit2 |
23:18:23 | shashlick | meh should have bumped to Nim 1.2.4 |
23:19:59 | * | endragor joined #nim |
23:26:55 | * | endragor quit (Ping timeout: 246 seconds) |
23:29:35 | * | krux02_ joined #nim |
23:31:53 | * | krux02 quit (Ping timeout: 244 seconds) |
23:42:34 | * | endragor joined #nim |
23:47:28 | * | endragor quit (Ping timeout: 258 seconds) |
23:55:32 | * | FromDiscord quit (Remote host closed the connection) |
23:55:45 | * | FromDiscord joined #nim |
23:58:22 | * | muffindrake joined #nim |