<< 30-05-2018 >>

00:02:50*Electrux quit (Ping timeout: 260 seconds)
00:04:11*skelett1 joined #nim
00:04:50*enigmeta quit (Ping timeout: 265 seconds)
00:05:19*FromGitter quit (Ping timeout: 265 seconds)
00:06:18*avsej quit (Ping timeout: 265 seconds)
00:06:18*skelett quit (Ping timeout: 265 seconds)
00:06:46*xet7 quit (Ping timeout: 265 seconds)
00:11:17*avsej joined #nim
00:11:49*FromGitter joined #nim
00:13:47*NimBot joined #nim
00:15:58*enigmeta joined #nim
00:37:20*sroecker[m] quit (Ping timeout: 240 seconds)
00:37:21*petersjt014[m] quit (Ping timeout: 245 seconds)
00:37:22*Abnegation quit (Ping timeout: 240 seconds)
00:37:30*pqflx3[m] quit (Ping timeout: 255 seconds)
00:37:40*planetis[m] quit (Ping timeout: 256 seconds)
00:37:44*dyce[m] quit (Ping timeout: 260 seconds)
00:37:45*narimiran[m] quit (Ping timeout: 245 seconds)
00:37:48*solitudesf quit (Ping timeout: 245 seconds)
00:37:50*unclechu quit (Ping timeout: 260 seconds)
00:37:52*zielmicha[m] quit (Ping timeout: 240 seconds)
00:37:52*sendell[m] quit (Ping timeout: 240 seconds)
00:37:57*libman[m] quit (Ping timeout: 255 seconds)
00:37:58*Miguelngel[m] quit (Ping timeout: 255 seconds)
00:37:58*yglukhov quit (Ping timeout: 255 seconds)
00:38:01*endes[m] quit (Ping timeout: 269 seconds)
00:38:02*Demos[m] quit (Ping timeout: 269 seconds)
00:38:07*amp907[m] quit (Ping timeout: 245 seconds)
00:38:07*macsek1911[m] quit (Ping timeout: 240 seconds)
00:38:10*Jipok[m] quit (Ping timeout: 245 seconds)
00:38:13*metaden92[m] quit (Ping timeout: 256 seconds)
00:38:14*mgdelacroix[m] quit (Ping timeout: 256 seconds)
00:38:14*notdekka[m] quit (Ping timeout: 260 seconds)
00:38:14*byteflame quit (Ping timeout: 260 seconds)
00:38:14*hohlerde quit (Ping timeout: 277 seconds)
00:38:15*hitchhooker[m] quit (Ping timeout: 277 seconds)
00:38:17*carterza[m] quit (Ping timeout: 260 seconds)
00:38:17*marszym[m] quit (Ping timeout: 260 seconds)
00:38:23*TheManiac quit (Ping timeout: 255 seconds)
00:38:23*stisa quit (Ping timeout: 255 seconds)
00:39:31*avsej is now known as Guest93660
00:39:54*xet7 joined #nim
00:43:21*skrzyp quit (Ping timeout: 240 seconds)
00:45:08*skrzyp joined #nim
01:00:43*pqflx3[m] joined #nim
01:16:00*vegecode joined #nim
01:18:17*hitchhooker[m] joined #nim
01:18:17*byteflame joined #nim
01:18:18*Abnegation joined #nim
01:18:18*yglukhov joined #nim
01:18:18*dyce[m] joined #nim
01:18:19*Miguelngel[m] joined #nim
01:18:19*unclechu joined #nim
01:18:19*solitudesf joined #nim
01:18:19*mgdelacroix[m] joined #nim
01:18:19*Demos[m] joined #nim
01:18:24*Jipok[m] joined #nim
01:18:24*stisa joined #nim
01:18:24*narimiran[m] joined #nim
01:18:24*marszym[m] joined #nim
01:18:25*petersjt014[m] joined #nim
01:18:25*metaden92[m] joined #nim
01:18:25*TheManiac joined #nim
01:18:25*endes[m] joined #nim
01:18:25*macsek1911[m] joined #nim
01:18:25*zielmicha[m] joined #nim
01:18:25*libman[m] joined #nim
01:18:25*sendell[m] joined #nim
01:18:25*carterza[m] joined #nim
01:18:26*sroecker[m] joined #nim
01:18:26*planetis[m] joined #nim
01:18:27*notdekka[m] joined #nim
01:18:27*hohlerde joined #nim
01:18:27*amp907[m] joined #nim
01:24:31*dddddd quit (Remote host closed the connection)
01:30:50vegecodeDoes anyone know a good repository of Nim code written with an embedded target in mind? I keep hoping to find some good examples of programming for that kind of environment.
01:30:52*xet7 quit (Ping timeout: 265 seconds)
01:31:27*Snircle is now known as gummy3
01:43:51*xet7 joined #nim
01:48:04*vegecode quit (Quit: Page closed)
01:52:39*gummy3 is now known as Snircle
01:54:12*ftsf joined #nim
02:01:11*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
02:12:01*endragor joined #nim
02:16:37*endragor quit (Ping timeout: 256 seconds)
02:37:01*smt quit (Ping timeout: 268 seconds)
02:37:34*Electrux joined #nim
03:22:59*Gnjurac joined #nim
03:23:11Gnjurachi anyone alive in these hours
03:26:02FromGitter<Varriount> I am
03:26:22FromGitter<Varriount> Gnujurac: What do you need?
03:26:31Gnjurachmm have question about sqlite lib
03:26:52Gnjuracam trying to do 2 quaryes to create 2 tables
03:27:30Gnjuracbut it only does 1 and in sqlbrowserdb app if i do same command it creates both so duno if its nim bug or what
03:28:18Gnjurachttps://pasteboard.co/HnvVTO6.png
03:29:27Gnjuracif i copy paste in sqlbrowser same query it creates both table but from nim only first , my guess it has something to do whit ;
03:30:22Gnjuracand i need something for my nose , i couth some cold or some bacterial infection am driping whole night slept like 2 hours
03:30:30FromGitter<montychen> ```code paste, see link``` ⏎ ⏎ Why are the results of x and y different? [https://gitter.im/nim-lang/Nim?at=5b0e1ad616f6496124ef7277]
03:36:22Gnjuraclol duno but looks wierd
03:47:26FromGitter<Varriount> Gnujurac: Doesn't 'exec' only run the first query?
03:49:21FromGitter<Varriount> @montychen Hm, looks like a bug. Although the mapLiterals macro should really only be used with literals, not variables.
03:53:57Gnjuracoh will check i thinked exec just executes whole query
03:55:37GnjuracFrom docs -"executes the query and raises DbError if not successful." , but anyway it is one query just connected :)
03:56:11Gnjuracwill just split for now until dom or who writed it is back
03:59:34*skrylar quit (Remote host closed the connection)
04:10:22*vivus quit (Quit: Leaving)
04:19:01*endragor joined #nim
04:23:27FromGitter<Varriount> Gnujurac: I believe the `;` separates queries.
04:40:32FromGitter<data-man> Oh, hub 2.3.0 released.
04:41:14Electruxwhat's that?
04:41:38FromGitter<data-man> https://github.com/github/hub
04:43:55Electruxso it just converts git clone https://... to directly username/repository?
04:45:38FromGitter<data-man> Read the docs :) https://hub.github.com
04:46:12Electruxok thanks a lot :)
04:50:49shashlicknimarchive - libarchive wrapper is now functional on Windows and Linux, will get Mac working in the next few days - https://github.com/genotrance/nimarchive
04:51:30*xkapastel quit (Quit: Connection closed for inactivity)
05:04:29*darithorn quit (Quit: Leaving)
05:07:50*couven92 joined #nim
05:25:14Gnjuracnice
05:40:22*nsf joined #nim
05:55:10Gnjurac theDb.exec(sql"INSERT INTO myTestTbl (name,i,f) VALUES (?,?,?)",
05:55:10Gnjurac "Item#" & $i, i, sqrt(i.float))
05:56:48Gnjuraci think i got it :)
06:00:45GnjuracVALUES will be populated by 3 variables after ,
06:25:30*yglukhov[i] quit (Remote host closed the connection)
06:26:31*yglukhov[i] joined #nim
06:27:54*yglukhov[i] quit (Read error: Connection reset by peer)
06:28:26*yglukhov[i] joined #nim
06:39:17*skelett1 quit (Quit: WeeChat 2.0.1)
06:40:52*skelett joined #nim
06:41:22*skelett quit (Client Quit)
06:41:47*skelett joined #nim
06:58:01*floppydh joined #nim
07:06:46*nif joined #nim
07:07:55*Vladar joined #nim
07:37:35narimiran[m]Since recently on Riot/Matrix only the messages from IRC are seen. No messages from Gitter. Is FromGitter bot broken?
07:38:55FromGitter<S-YOU> ?
07:41:46*xet7 quit (Remote host closed the connection)
07:42:54*couven92 quit (Quit: Client disconnecting)
07:44:11*xet7 joined #nim
08:03:45Gnjuraci slep 2 hours yey
08:03:56Gnjuracanyway where i left , db.exec(sql("""DELETE FROM TVShows WHERE folderName = MYVARHERE"""))
08:03:59*gmpreussner_ quit (Ping timeout: 256 seconds)
08:04:13Gnjurachow to add my war i tryed $myvar but dident work
08:04:41*gmpreussner_ joined #nim
08:06:27Gnjuracfound it
08:34:30*xkapastel joined #nim
09:02:36*Vladar quit (Quit: Leaving)
09:14:11*Vladar joined #nim
09:55:16*tribly joined #nim
09:59:48FromGitter<dandevelo> How can I make the Nim compiler generate a unicode string like L"Hello" ?
10:01:42dom96Nim strings can already contain unicode characters
10:02:41FromGitter<dandevelo> @dom96 I am aware of that, I am only asking about the way those strings are generated in the resulting C/C++ code
10:17:35*SenasOzys__ quit (Remote host closed the connection)
10:19:47*leorize quit (Ping timeout: 255 seconds)
10:21:32*leorize joined #nim
10:52:01FromGitter<krux02> @dandevelo isn't the L prefix for wide strings?
10:52:19FromGitter<dandevelo> @krux02 correct
10:52:36FromGitter<krux02> @dandevelo I don't think Nim has wide strings
10:52:41FromGitter<krux02> I would have to check that
10:53:09FromGitter<krux02> but strings are allowed to be utf8 and that is basically the default for everything
10:53:41FromGitter<krux02> you would need to convert nim strings to wide strings on windows though
10:59:02dom96if you want wide strings then check out how the `os` module handles them
11:00:50FromGitter<krux02> @dandevelo I would like to inform you that your question is kind of wrong. Wide string is orthogonal to unicode. Nim strings support utf8 (unicode) characters very well, and wide strings are not necessarily unicode, only utf16 is.
11:01:55FromGitter<alehander42> @dandevelo if you just want to generate such c code, you can use something like ⏎ ⏎ ```proc lstring*(e: cstring): string {.importcpp: "L#".}``` [https://gitter.im/nim-lang/Nim?at=5b0e84a3ba1a351a68d67a69]
11:01:59FromGitter<krux02> eval! echo "Hällö Wörld"
11:02:05FromGitter<alehander42> `lstring("e") # L"e"`
11:02:33FromGitter<alehander42> but I have no idea if it would be entirely correct for unicode
11:02:34FromGitter<krux02> !eval echo "Hällö Wörld"
11:02:36NimBotHällö Wörld
11:02:37FromGitter<Vindaar> @krux02 pfft, you could at least have made use of all your fancy characters on your keyboard layout :P
11:02:55FromGitter<krux02> @Vindaar of course
11:03:25FromGitter<krux02> !eval echo "λωχϵοζεψγφΞ√Λℂ×⊂∫∃∈∪∪Πℤℝ∂Φ₁₂₃♀¬∨∧∡ªº№£"
11:03:27NimBotλωχϵοζεψγφΞ√Λℂ×⊂∫∃∈∪∪Πℤℝ∂Φ₁₂₃♀¬∨∧∡ªº№£
11:03:33FromGitter<Vindaar> haha nice
11:04:26FromGitter<krux02> but also standard german qwertz has many more characters on Linux than on windows.
11:04:43FromGitter<Vindaar> it does?
11:04:45FromGitter<krux02> just with alt gr + <some letter> there are many characters
11:04:51FromGitter<Vindaar> Oh, I had no idea
11:05:11FromGitter<krux02> and alt gr + shift + <some letter> more characters
11:05:20FromGitter<krux02> most keys can produce 4 characters
11:06:54FromGitter<krux02> this is on qwertz (de) "æſðđŋ»«¢„@ł€¶ŧ←↓→øþĸŋ“”µ·…––––ΩŁ€®Ŧ¥↑ıØÞÆẞЪŊĦ˙&Ł›‹‚‚‘’º×÷ ⏎ "
11:08:10FromGitter<Vindaar> huh, TIL. I'm using the US layout and on that I don't get anything interesting. Stuck with my compose key (:
11:08:50FromGitter<alehander42> i only hit shortcuts with my altgr :(
11:08:59FromGitter<krux02> →→⃗→⃗⃗→⃗⃗⃗→⃗⃗⃗⃗→⃗⃗⃗⃗⃗→⃗⃗⃗⃗⃗⃗→⃗⃗⃗⃗⃗⃗⃗→⃗⃗⃗⃗⃗⃗⃗⃗→⃗⃗⃗⃗⃗⃗⃗⃗⃗→⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗→⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗⃗
11:09:30dom96lol
11:09:43dom96That overflows the messages above in my IRC client
11:09:48FromGitter<krux02> yea that is the shit about the shit that happened when the de layout was created
11:11:09FromGitter<krux02> IBM thought carefully that it is a good idea to have modifier keys available on both sides of the keyboard, because depending on what you press you better use the one on the left or on the right. the "de" team thought hey the alt key is duplicate anyway let's just repurpose the right one
11:11:25FromGitter<krux02> idiots if you ask me.
11:12:21FromGitter<krux02> dom96: that was not intentional, I really wonder how it looks in your irc client
11:12:30FromGitter<krux02> I am just abusing unicode a bit
11:13:07FromGitter<dom96> (https://files.gitter.im/nim-lang/Nim/szTT/Screen-Shot-2018-05-30-at-12.12.28.png)
11:13:25FromGitter<Vindaar> haha, what the heck :D
11:13:37FromGitter<krux02> well that is actually correct
11:14:37FromGitter<krux02> here in the browser the arrows are all rendered at the exact same position making them thicker and thicker, but not higher
11:15:24Yardanico@dom96 do you use textual?
11:15:25FromGitter<krux02> now I am thinking of abusing this unicode feature to plot graphs
11:15:30YardanicoBecause I don't get that with this
11:15:38dom96Yardanico: no, XChat Azure
11:15:41Yardanicoah, ok
11:15:56Yardanico@krux02 there's already a library in Nim which uses braille characters for graphs :)
11:16:04Yardanicohttps://github.com/PMunch/drawille-nim
11:16:58Yardanicowell, it's not really only for graphs, it's for drawing in terminal using braille characters
11:17:43FromGitter<krux02> well when rendering pixels directly is just too fast and you really need to abuse fonts :P
11:19:18*BitPuffin joined #nim
11:19:23FromGitter<krux02> @dom96 I heared that hexchat is the continuation of Xchat. If you care at all, I mean the feature set of IRC is frozen for decades now.
11:19:46dom96Sure. I am aware of it
11:19:52dom96Last time I checked though it was Windows-only
11:20:13FromGitter<krux02> well I used it a year ago on linux
11:20:50Yardanico@krux02 I want to make a confession - I never use right alt, or right shift, or right control :D
11:22:02dom96That's disappointing, their Linux version is missing the chat divider? https://hexchat.github.io/img/screenshot-gnome-3.10.png
11:22:37dom96Reminds me of the IRC client I wrote in Python many years ago https://a.fsdn.com/con/app/proj/nyxirc/screenshots/239688.jpg/max/max/1 (poor quality sadly)
11:23:15Yardanicodom96 it looks very cool
11:23:17FromGitter<krux02> dom96 : what is a chat divider?
11:23:29Yardanicoit really looks similar to hexchat :)
11:23:31dom96https://hexchat.github.io/img/screenshot-windows.png
11:23:43dom96All nicknames are right aligned to it, and all messages are left aligned to it
11:23:54Yardanicodom96 maybe there's an option to enable/disable it?
11:23:55YardanicoAFAIK there is
11:24:13Yardanicoyeah
11:24:14Yardanicodom96 http://i.imgur.com/OMwETac.png
11:24:18dom96Maybe, or maybe they got rid of it during the GTK2->3 transition
11:24:43dom96I remember wanting that divider so much for my IRC client
11:24:59dom96Seemed like such a PITA to implement though
11:25:03FromGitter<krux02> yes it really is very important, I can see it
11:25:09FromGitter<krux02> why?
11:25:19dom96Because GTK is a PITA
11:25:37*Vindaar joined #nim
11:25:45FromGitter<krux02> can't you just do it by streaming the input messages through sed :P
11:25:55*Vindaar is now known as Guest5498
11:25:56Yardanicoevery big GUI framework/library is a PITA :D
11:26:07dom96hrm? It needs to be movable
11:26:10*Guest5498 left #nim (#nim)
11:26:56dom96Funny how I pursued Nim to make a native IRC client and then never managed to do it.
11:27:20FromGitter<krux02> Yardanico: well you are not alone, the people who developed the de layout oviously also never used the right modifiers. But the truth is that when you get used to always use the modifiers on the opposite sides, your hands are much less cramped in their position.
11:27:31FromGitter<krux02> But that just doesn't work if the layout makes it impossible
11:27:55Yardanico@krux02 well, my typing method is very, very wrong - I mostly type with 3-5 fingers
11:28:02FromGitter<krux02> just for example {} on de qwertz is the worst thing that could happen
11:28:40FromGitter<krux02> alt gr (right alt) + 7 for {
11:28:52FromGitter<krux02> alt gr + 0 for }
11:28:55Yardanicolol
11:28:58FromGitter<krux02> type that a lot and you will hate it
11:29:19Yardanico@krux02 that's the reason you use Nim? :D almost no need for {} ?
11:29:27FromGitter<krux02> no not at all
11:29:35FromGitter<krux02> that is the reason I don't use qwertz
11:29:38Yardanicooh
11:30:04FromGitter<Vindaar> yep, for programming qwertz really is a pain :/
11:30:28FromGitter<krux02> and qwerty was also not really an option for me because it does not have äöüß
11:30:59FromGitter<krux02> (I am german and sometimes I need it, and switching layout just for those charactes, no I don't want that to be my habit)
11:31:59FromGitter<krux02> (qwerty international still doesn't have ß, I think)
11:33:40FromGitter<alehander42> i switch the layoyut probly 100s times a day sometimes
11:33:55FromGitter<alehander42> you don't know what it is to use cyrillic
11:34:10YardanicoI know :D
11:34:34FromGitter<Vindaar> The amount of German I actually write is so little that I don't mind having to type Compose + " + u = ü etc. Works fine and I didn't have to learn neo D:
11:34:43Yardanicoyeah, I switch the layout a lot more than 100 times in a day probably
11:35:11FromGitter<alehander42> :D thinking about it, no idea why i didnt remap alt+shift until now
11:35:28FromGitter<alehander42> and it's even worse on mobile
11:35:30FromGitter<mratsim> is German qwertz different from Swiss qwerty? I don’t remember those issue on a Swiss keyboard
11:35:36FromGitter<alehander42> usually the switch is harder there
11:35:55Yardanicowell, not really, on a lot of android keyboards you just need to swipe on the bottom of the keyboard
11:36:06FromGitter<mratsim> Swiss qwerty*
11:36:11FromGitter<mratsim> qwertz*
11:36:21FromGitter<krux02> @mratsim it is different
11:36:25FromGitter<Vindaar> https://en.wikipedia.org/wiki/QWERTZ#/media/File:KB_Swiss.svg
11:36:27FromGitter<krux02> I think swiss german doesn't use ß
11:36:43FromGitter<Vindaar> https://en.wikipedia.org/wiki/QWERTZ#/media/File:KB_Germany.svg
11:37:21FromGitter<alehander42> i think sometimes you need to click a button
11:37:29FromGitter<alehander42> mobile keyboards are hard for me overally haha
11:37:37FromGitter<mratsim> anyway boath are better than French Azerty. You also have the alt vs Alt Gr difference but numbers need the shift key ...
11:38:02FromGitter<krux02> and swiss keyboard is not a german keyboard, it is a swiss keyboard for all languages that are spoken there
11:38:04FromGitter<alehander42> but nothing can compare to the old nokia 3-press system
11:39:07FromGitter<krux02> in what, slowness?
11:39:51FromGitter<alehander42> http://www.yorku.ca/mack/chapter5.html
11:39:59FromGitter<alehander42> actually people experimented with a lot of variations there
11:40:12FromGitter<alehander42> amusing
11:40:39FromGitter<krux02> @mratsim french as something related to do neo, I think it is bepo or something like that
11:41:27FromGitter<alehander42> i wonder if the opposite idea: having a bigger keyboard with some often used multi letter morphems as different keys be even faster
11:41:33livcdthat's why i like hangul
11:41:50FromGitter<alehander42> especially if one could map them dynamically for different scenarios
11:41:54livcdWish i could write only in hangul even for english :D
11:42:03FromGitter<alehander42> e.g. english morphems for english, keywords for IDE etc
11:43:32FromGitter<alehander42> I remember there was a thread about electronic remappable keyboards maybe on the twitch channel, maybe they can do this
11:44:58FromGitter<krux02> @alehander42 well you can already program keyboard layouts a lot.
11:45:20FromGitter<krux02> On linux there is a config where you could in theary bind language keyboards to keys
11:45:59FromGitter<krux02> then you press alt gr+o and you get ``object`` fully written out in any program
11:46:39FromGitter<krux02> unless you use programs that tend to fuck with keyboard layouts and how input is handled like visual studio code
11:47:24FromGitter<krux02> but maybe I have to try it again, I have seen many people telling me that it works on linux now.
11:47:51FromGitter<alehander42> yeah, that's cool, but I imagined keybuttons that can visually adapt their physical labels
11:48:04FromGitter<alehander42> like, being something like a small touchpad screen?
11:48:12FromGitter<alehander42> but I guess that would be bad for writing
11:48:18FromGitter<krux02> that exists
11:48:29FromGitter<alehander42> yeah I remember, but I cant find it :D
11:48:34FromGitter<krux02> but I have a keyboard without any writing on them at all.
11:48:35FromGitter<alehander42> except the mac touchbar
11:48:38FromGitter<alehander42> but its limited
11:49:02FromGitter<alehander42> well that could work too, but it's not so "look at me wtf" :D
11:49:25FromGitter<krux02> that is ok for my every day layout "ne neo" because I learned it, I never look at the keys anymore, but sometimes to play a game or something I still need to switch back the layout. and then I really need to look at the keys, but they are empty
11:51:37FromGitter<alehander42> yeah, it's useful from time to time
11:55:01FromGitter<krux02> I think it's sad that there is so little development in the user interface "keyboard", only a few nerds tinker with new keyboards and some companies that focus on user interfaces for disabled people, but that's it.
11:55:53FromGitter<Vindaar> yep, totally agree. and basically we're rather moving into the wrong direction (keyboards on smartphones, 2 thumbs ftw)...
11:56:41FromGitter<krux02> when you ask around "what is the best keyboard in the world" people will tell you "IBM model M" and that is from the 80s. And I wonder myself: that's it? The best keyboard has been invented in the 80s and we just stick to it? no improvements or fixing of problems? Introducing new problems?
11:57:33FromGitter<krux02> yea development towards touch. I highly dislike it.
11:58:33FromGitter<krux02> The other trend is cheaper and cheaper
11:58:50FromGitter<krux02> the IBM model M keyboard was expensive as everything back then.
11:58:57FromGitter<krux02> keyboards now 12€
11:59:07FromGitter<krux02> and people buy it and it works
12:00:24FromGitter<krux02> people spend hundreds of dollor or euro on their smartphone every year, but then when it is about the desktop computer they buy a 12€ keyboard.
12:00:47FromGitter<krux02> And the keyboard is really a bottleneck for creating input for the computer
12:01:03FromGitter<krux02> just measure how many bytes per minute you can create on a keyboard
12:02:02FromGitter<Vindaar> yeah. And when you tell them that your keyboard costs > 100 euro they're like "whaat? why would you pay so much for one?"
12:02:53FromGitter<Vindaar> It's not like my keyboard is probably the device (aside from my monitors) I use by far the most every day...
12:02:59*xkapastel quit (Quit: Connection closed for inactivity)
12:03:51FromGitter<Vindaar> and yes, the bandwidth human brain -> computer is way too low :P
12:04:57*Electrux quit (Ping timeout: 240 seconds)
12:08:54FromGitter<krux02> I want's things to be more physical
12:09:15FromGitter<krux02> and I don't mean, "hey it has a wheel"
12:09:48FromGitter<krux02> I mean when I change the state of a handle when the device is unpowered it should still have an affect as soon as the device is up and running
12:09:56FromGitter<krux02> like the volume wheel on the old GB.
12:10:11FromGitter<krux02> you could turn off the volume before turning it on.
12:25:19*Snircle joined #nim
12:34:49FromGitter<krux02> well yea I got a bit off topic
12:35:00FromGitter<krux02> sorry people
12:47:00FromGitter<krux02> we have 1337 issues, should be celebrate this?
12:47:36FromGitter<krux02> and I am posting this at 14:47 local time
12:47:53FromGitter<krux02> I missed the 13:37 local time today
13:04:34Gnjurachats too much issues
13:04:49*themagician joined #nim
13:04:57FromGitter<Varriount> Not really.
13:04:58Gnjuraci think nim needs full time stuff, need some money source backer
13:05:39FromGitter<Varriount> Gnujurac: Do you have someone in mind?
13:06:13Gnjuracnot reaaly, we can rob a bank if interstef
13:08:41*Electrux joined #nim
13:12:59FromGitter<ephja> doesn't hurt to ask nicely first
13:16:14dom96Gnjurac: Always happy to accept donations https://nim-lang.org/donate.html :)
13:16:29*sz0 quit (Quit: Connection closed for inactivity)
13:19:48FromGitter<krux02> Gnjurac: that would mean that the money from that bank would finally be used for something useful
13:35:06livcdkrux02: money from banks are usually used for useful things :)
13:35:52livcdis
13:35:59*endragor quit (Remote host closed the connection)
13:36:25*endragor joined #nim
13:37:40FromGitter<mratsim> money is good but before that we need Nim devs ;)
13:40:47*endragor quit (Ping timeout: 256 seconds)
13:44:01*Electrux quit (Ping timeout: 248 seconds)
13:46:27*Electrux joined #nim
13:48:11Gnjuraci cant help whit that i am like 200 newb
13:48:14Gnjurac200%
13:48:28Gnjuracin Nim deving , robing have some exp :)
14:04:29FromGitter<mratsim> I’ve only been developing in Nim for about 14 months
14:04:41FromGitter<mratsim> days and night though
14:10:48dom96what we need is more devs writing about Nim
14:10:50FromGitter<krux02> @mratsim so I guess Nim is the language you see yourself developing in also in the far future
14:11:15FromGitter<krux02> I am writing my master theses about nim
14:11:18FromGitter<krux02> (kind of)
14:35:43*xkapastel joined #nim
14:55:36*Gnjurac quit (Remote host closed the connection)
15:01:22*nsf quit (Quit: WeeChat 2.1)
16:02:04*ofelas quit (Quit: shutdown -h now)
16:07:51*ofelas joined #nim
16:25:48dom96!eval echo(4'i64 / 8'i64)
16:25:49NimBotCompile failed: in.nim(1, 12) Error: type mismatch: got <int64, int64>
16:25:57dom96:/
16:26:58FromGitter<krux02> lol
16:27:53FromGitter<krux02> dom96: a long time ago I requested that int will become just an alias for int64, like it is done for float and float64. this is not the case though
16:28:05FromGitter<krux02> that is very inconsastent and it causes weird problems like yours
16:28:43FromGitter<krux02> I even put that on my personal list of changes for the Nim language
16:30:05dom96I'd be happy if the same operations were defined for all combinations of ints/floats
16:30:27Yardanicohonestly yes
16:30:34YardanicoIt's actually very annoying
16:31:24FromGitter<data-man> import lenientops?
16:33:15FromGitter<data-man> !eval import lenientops; echo(4'i64 / 8'i64)
16:33:17NimBotCompile failed: in.nim(1, 31) Error: type mismatch: got <int64, int64>
16:34:04FromGitter<data-man> !eval import lenientops; echo(4'i64 / 8.0)
16:34:06NimBot0.5
16:34:08FromGitter<krux02> int64 and int are both signed 64 bit integers, but they are not the same type
16:34:59FromGitter<data-man> !eval echo(4'i64 / 8.0)
16:35:00NimBotCompile failed: in.nim(1, 12) Error: type mismatch: got <int64, float64>
16:35:27dom96yeah, lenientops is meant to be the solution to this
16:36:44FromGitter<krux02> what is lenientops?
16:37:23FromGitter<krux02> ah I looked it up
16:37:59FromGitter<krux02> but lenientops is only for int/float combinations not int int combinations
16:39:48FromGitter<data-man> !eval import lenientops; echo(4.0 / 8)
16:39:50NimBot0.5
16:42:10FromGitter<data-man> !eval echo(4.0 / 8)
16:42:12NimBot0.5
16:42:21FromGitter<data-man> :)
16:42:31*floppydh quit (Quit: WeeChat 2.1)
16:43:55Yardanico!eval import lenientops; echo (35 / 4) * 3
16:43:58NimBot26.25
16:44:04Yardanico!eval echo (35 / 4) * 3
16:44:07NimBot26.25
16:45:11*xkapastel quit (Quit: Connection closed for inactivity)
16:45:57*icebattle quit (Remote host closed the connection)
16:46:00FromGitter<krux02> I recommend not to use lenientops
16:46:53FromGitter<krux02> I think automatic lossy conversion of int to float types is a bad idea
16:55:40shashlickdom96: hate to nag but any chance of reviewing https://github.com/nim-lang/nimble/pull/464 - just wrapped libarchive, yet another nimgen based wrapper which could do with being easily installed with nimble
16:56:17dom96Sorry, but I won't review that until I'm working on Nimble
16:57:57shashlickok, i guess you will get to it before 0.19.0 so that the next release works with nimgen wrappers seamlessly
16:59:09dom96most likely yes
16:59:30shashlick🤞
17:00:03euantorWhilst we're talking about Nimble, it would be cool if it did something like Cargo does: https://doc.rust-lang.org/cargo/reference/environment-variables.html#environment-variables-cargo-sets-for-crates
17:00:38euantorThen in a bin app, you could pull the verison number, author, description etc. straight from the `.nimble` file at compile time so you only have to maintain it in one place
17:00:52euantorOf course, that depends on if `getEnv` works at compile time...
17:01:40shashlickospaths is available in nimscript and vm, yes
17:01:54FromGitter<krux02> euantor: I would not use getEnv for that
17:02:03FromGitter<krux02> I think nim has something better for that
17:03:39FromGitter<krux02> https://nim-lang.org/docs/manual.html#implementation-specific-pragmas-compile-time-define-pragmas
17:03:44euantor@krux02: doesn’t have to be an env var, but being able to access that information in some way would be great
17:03:52*leorize quit (Quit: WeeChat 2.1)
17:04:07euantorYes, that would definitely work
17:09:41FromGitter<ephja> int *might* be 64-bit. if not, then it's 32-bit
17:10:44FromGitter<krux02> @ephja yes that is true, but when it is 64bit it is not int64
17:11:13FromGitter<krux02> the point is that int is not just an alias
17:16:30*pydsigner quit (Ping timeout: 245 seconds)
17:24:19FromGitter<data-man> Keep in mind #7118 was merged.
17:24:40*pydsigner joined #nim
17:26:45FromGitter<krux02> @data-man thanks a lot
17:26:48FromGitter<krux02> that was cool
17:27:19FromGitter<krux02> It is something that I was looking forward to
17:29:02FromGitter<data-man> All thanks to @GULPF.
17:32:57FromGitter<data-man> Now math module is very rich :) There is RFC #3745.
17:38:40FromGitter<data-man> @Yardanico: Time to update mathexpr ;)
17:38:46Yardanicowhy? :)
17:39:03FromGitter<data-man> New funcs
17:39:57YardanicoI also still don't know where to put (in nim's stdlib) this procedure - https://github.com/Yardanico/nim-mathexpr/blob/master/mathexpr.nim#L13
17:40:00Yardanicofor JS
17:40:43Yardanico(fmod is not defined for JS target currently in math module)
17:42:08FromGitter<data-man> Now it's ```mod```
17:50:05FromGitter<krux02> you know it's fun to write shaders in Nim, when it just works :D
17:57:12FromGitter<data-man> Congrats! :)
18:09:56Yardanico@data-man I now use parsetoml https://github.com/vk-brain/Nickel/commit/85e6503de906f2fae3de77e7169d4c2a98b346b9 :)
18:10:24Yardanico@data-man https://github.com/vk-brain/Nickel/blob/85e6503de906f2fae3de77e7169d4c2a98b346b9/src/default_config.nim
18:10:40FromGitter<data-man> Congrats! :-D
18:24:25*nsf joined #nim
18:40:05*Electrux quit (Ping timeout: 240 seconds)
18:49:20*yglukhov_ joined #nim
18:49:20*yglukhov[i] quit (Read error: Connection reset by peer)
18:56:25*Electrux joined #nim
19:00:45*Electrux quit (Ping timeout: 256 seconds)
19:06:27*Electrux joined #nim
19:11:05*Electrux quit (Ping timeout: 268 seconds)
19:12:27*Camparis joined #nim
19:16:25*Electrux joined #nim
19:21:09*Electrux quit (Ping timeout: 256 seconds)
19:36:25*Electrux joined #nim
19:40:51*Electrux quit (Ping timeout: 240 seconds)
19:41:29FromDiscord<Dragon> Can someone explain project structure for Nim? Looking at the documentation and several projects on Github, I can't see why some people use `name/name` and some people use `name/namepkg`
19:42:12FromDiscord<Dragon> for sub directories in projects
19:44:11shashlickDragon: https://github.com/nim-lang/nimble/#project-structure
19:45:35FromDiscord<Dragon> "When introducing more modules into your package, you should place them in a separate directory named foobar (i.e. your package's name). For example:"
19:45:53FromDiscord<Dragon> If I try to do that the compiler tells me it needs to be in a directory called "foobarpkg"
19:49:21FromDiscord<Dragon> I see the docs mention "hybrids"
19:49:32FromDiscord<Dragon> not sure why my code is being considered a hybrid?
19:53:43shashlickare you building a binary or a library
19:53:55FromDiscord<Dragon> binary
19:54:20shashlicksee how I organized snip: https://github.com/genotrance/snip
19:55:54dom96Dragon: Add skipExt = @["nim"] to your .nimble file
19:56:12dom96I plan to make this the default in later Nimble versions
19:56:24FromDiscord<Dragon> Here is my code (ignore the point of the project, i'm just using it as a way to learn nim) https://github.com/thatguywiththatname/SimpleFileArchive
19:56:27dom96For now you have to explicitly state that you don't want those .nim files installed
19:56:37FromDiscord<Dragon> ok
19:56:39FromDiscord<Dragon> thanks for the info
19:57:27*Electrux joined #nim
19:58:02shashlickDragon: installed fine with nimble
19:58:16gmpreussner_is there an idiot's guide to JavaScript FFI? i'm trying to create a more comprehensive wrapper for Web Audio, and i'm at a loss for certain built-in JS types, method imports, etc.
19:58:59dom96Not aware of a guide for that
19:59:02gmpreussner_i've been piecing things together based on other packages, but i'd much rather understand what i'm doing
19:59:22dom96Happy to share my knowledge
19:59:54gmpreussner_dom96, shall i post here or pm?
20:00:08dom96Here is best, others can learn from the logs :)
20:00:15gmpreussner_understood
20:01:24gmpreussner_right now i'm specifically stuck on importing JS functions that use the following parameter type: sequence<double>, and the following return type: Promise<T>
20:01:35*Electrux quit (Ping timeout: 240 seconds)
20:01:56dom96huh, are you sure that's JS?
20:02:19gmpreussner_well, i'm looking at the Web Audio API at w3.org
20:02:34gmpreussner_it's not actually JS, i guess
20:03:07dom96MDN docs might be better https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API
20:03:07gmpreussner_their documentation uses Web IDL
20:03:54FromGitter<data-man> ```Error: for the pattern '$i' (position: 22) given var 's' with 'string' type``` ⏎ Is it correct for better error messages of scanf?
20:04:22gmpreussner_dom96, ah, that's a little more digestible, thanks
20:04:46FromGitter<data-man> I mean grammatically :)
20:05:26dom96data-man: I'm afraid I don't really understand it
20:05:29*jjido joined #nim
20:07:27*Electrux joined #nim
20:07:42FromGitter<data-man> var ```s``` has ```string``` type. For pattern ```$i``` it's error. I want improve error messages.
20:08:06FromGitter<data-man> I did it, I mean.
20:09:26FromGitter<data-man> I need help with right English :)
20:09:53dom96gmpreussner_: My book might be helpful too, the chapter with a section on the JS FFI is free: https://manning-content.s3.amazonaws.com/download/5/08b3cf8-cea3-42c1-97b5-b5047c472b73/SampleCh08.pdf
20:10:24gmpreussner_i bought your book, actually. i'll take a look
20:10:31dom96Thanks :D
20:11:27shashlickdata-man: can you share a snippet that generates the error so that we can understand the context
20:11:34*Electrux quit (Ping timeout: 244 seconds)
20:12:51FromGitter<data-man> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5b0f05c2016ae21a4cf868da]
20:13:08gmpreussner_dom96, how would i translate the return type here: https://developer.mozilla.org/en-US/docs/Web/API/BaseAudioContext/resume
20:13:20gmpreussner_i found PromiseJs in asyncjs.nim. not sure if that's the right place to look though
20:15:01*Vladar quit (Quit: Leaving)
20:15:19dom96proc resume(ctx: AudioContext): Promise[void] {.importcpp: "#.resume()".}
20:15:26dom96And then you should wrap AudioContext and Promise
20:15:51dom96or yeah, you can use asyncjs.PromiseJs probably
20:16:16FromGitter<data-man> ```let ⏎ input = "qwerty" ⏎ var ⏎ s: string ⏎ if scanf(input, "$i", s):``` [https://gitter.im/nim-lang/Nim?at=5b0f068f160c567d16edfa91]
20:16:19dom96Might be possible (and nice) to wrap it as a generic
20:16:26*Electrux joined #nim
20:16:36dom96Promise[T]* {.imporcpp: "Promise".} = ref object # Might work
20:16:51gmpreussner_ok, i'll give that a shot, thanks!
20:17:07dom96I suppose you should make that proc take a BaseAudioContext
20:17:25dom96and then wrap that and AudioContext (and inherit from BaseAudioContext)
20:17:38gmpreussner_yeah, i already did that
20:21:13*Electrux quit (Ping timeout: 256 seconds)
20:27:02FromGitter<data-man> New version: ```Error: var s has string type. Pattern '$i' (position: 22).```
20:30:33*jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:33:12FromGitter<genotrance> data-man: the error I see right now is Error: no int var given for $i
20:33:47shashlickso basically the error is that you are providing a string variable to store an integer value
20:34:22FromGitter<data-man> Yes, it's for current scanf. I want improve error messages.
20:35:29FromGitter<data-man> Now scanf shows var's name and type.
20:36:05FromGitter<data-man> And position in pattern.
20:36:25*Electrux joined #nim
20:36:26*Sembei joined #nim
20:36:38shashlickType mismatch between int pattern '$i' and string var 's'
20:36:56shashlickcould be better
20:37:34FromGitter<data-man> Thanks!
20:39:09shashlickhow do you do x || y in nim
20:41:15*Electrux quit (Ping timeout: 260 seconds)
20:43:59FromGitter<data-man> ```x or y```?
20:47:27*Electrux joined #nim
20:47:58gmpreussner_dom96, JS enumeration fields translate to cstring, right?
20:48:58dom96enumeration fields?
20:49:16gmpreussner_for example, https://developer.mozilla.org/en-US/docs/Web/API/AudioNode/channelCountMode
20:49:28gmpreussner_it looks like they're just strings
20:50:33dom96yeah
20:51:45*Electrux quit (Ping timeout: 248 seconds)
20:55:15Yardanico@data-man follow 80-line rule https://github.com/nim-lang/Nim/commit/664b949d5438b42736a621547929b573f3eaeedb#diff-8289a169b6577f02926b315643f46020R320 :)
20:56:02Yardanicojust a suggestion, I see there are some lines in strscans with more than 80 chars
20:56:25*jjido joined #nim
20:57:26*Electrux joined #nim
20:58:05FromGitter<data-man> Yes, I edited only a piece of code. :)
20:58:22FromGitter<ephja> not 79? ;)
21:00:54FromGitter<data-man> nep1.rst recommend :) ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5b0f1106b6eece791dc763b5]
21:02:01*Electrux quit (Ping timeout: 256 seconds)
21:06:47*yglukhov_ quit (Remote host closed the connection)
21:07:21*yglukhov[i] joined #nim
21:07:27*Electrux joined #nim
21:11:39*yglukhov[i] quit (Ping timeout: 256 seconds)
21:11:57*Electrux quit (Ping timeout: 240 seconds)
21:16:28*Electrux joined #nim
21:18:52*smt joined #nim
21:20:28*sz0 joined #nim
21:20:55*Electrux quit (Ping timeout: 260 seconds)
21:26:08YardanicoBy the way, recommended extensions for anyone who's using GitHub a lot and wants an easier navigation between modules - https://chrome.google.com/webstore/detail/module-linker/dglofghjinifeolcpjfjmfdnnbaanggn (chrome-based), https://addons.mozilla.org/en-US/firefox/addon/module-linker/ (firefox-based)
21:26:15Yardanico(it supports Nim!)
21:27:01Yardanicohttps://fiatjaf.alhur.es/module-linker/#/nim
21:27:27*Electrux joined #nim
21:28:23FromGitter<cabhishek> @ Yardanico ^^ is great. Thanks
21:28:53FromGitter<cabhishek> I also use https://github.com/buunguyen/octotree for navigation
21:29:35Yardanicobut it doesn't seem that this extension supports new modules like "strformat"
21:29:47FromGitter<data-man> Hmm, should scanf parse an empty values? ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5b0f17ca16f6496124f341d8]
21:31:35*Electrux quit (Ping timeout: 240 seconds)
21:31:35Yardanico@data-man: you don't need "an" here :) about the question - I think it doesn't need to, but you can create RFC :)
21:31:38*DarkArctic quit (Read error: Connection reset by peer)
21:31:51*DarkArctic joined #nim
21:32:47Yardanico@cabhishek thanks a lot for this, it seems to be a very useful extension (because there's nothing on the left and on the right on github, just empty space)
21:34:05FromGitter<data-man> Thanks. Anyone else uses the scanf? :)
21:40:09*nsf quit (Quit: WeeChat 2.1)
21:46:28*Electrux joined #nim
21:51:15*Electrux quit (Ping timeout: 260 seconds)
21:57:42*jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:16:53shashlickwow these are great - module-linker and octotree
22:22:53FromGitter<data-man> module-linker works with Opera (with "Install Chrome Extensions" extension)
22:23:43*kicking_tires joined #nim
22:25:31*Elronnd is now known as Elronnd`srn
22:25:37*Elronnd`srn is now known as Elronnd\srn
22:32:31*kicking_tires quit (Remote host closed the connection)
22:37:26*Electrux joined #nim
22:41:57*Electrux quit (Ping timeout: 240 seconds)
22:44:09*themagician quit ()
22:47:29*Electrux joined #nim
22:47:47shashlicklooking into extracting payload from NSIS exe, any of you have any experience with that?
22:50:53FromGitter<data-man> For Windows there is Universal Extractor: https://www.legroom.net/software/uniextract
22:51:28shashlick7zip can also do it but I'm trying to do it from nim so that choosenim can installer older binaries of nim
22:51:36shashlickvery low priority but interesting nonetheless :)
22:51:57*Electrux quit (Ping timeout: 256 seconds)
22:52:35FromGitter<data-man> Wrapper for 7-zip? :)
22:53:02shashlickthat's all C++ so not my forte
22:53:14shashlicki've been looking at wrapping their C extractor demo
22:53:20*xkapastel joined #nim
22:53:21FromGitter<data-man> And for windows only.
22:53:23shashlicklibarchive didn't work with the .exe
23:00:11FromGitter<data-man> Any .exe? I looked at sources, self-exracted 7z archives should be supported.
23:05:03FromGitter<data-man> Can be useful https://github.com/libarchive/libarchive/wiki/Examples
23:22:09*BitPuffin quit (Remote host closed the connection)
23:30:31FromGitter<kayabaNerve> Can I have comments in a nim.cfg
23:41:58FromGitter<data-man> Why not? Just look at this more closely. :)
23:45:57shashlickdata-man: it just says archive format not supported
23:46:26shashlicki tried the nim-0.12.0_x32.exe
23:48:39FromGitter<data-man> Try with 7z self-extracted .exe.
23:59:41*craigger_ quit (Quit: bye)