<< 24-09-2017 >>

00:04:49*zachk quit (Ping timeout: 248 seconds)
00:06:30*zachk joined #nim
00:06:43CalinouI'd like to see a nice, easy-to-use CLI library for Nim
00:06:48*zachk quit (Max SendQ exceeded)
00:06:55Calinouhttps://github.com/mattallty/Caporal.js is cool, but slow
00:06:57YardanicoCalinou, cligen ? :)
00:07:14Calinougood UX is a must-have
00:07:15Calinou(and DX)
00:07:37Calinouhttps://github.com/kbknapp/clap-rs also is pretty decent, usability-wise
00:08:04*zachk joined #nim
00:08:12FromGitter<zacharycarter> nim docopt?
00:08:27Calinouprobably way too basic/low-level
00:08:33Calinoulook at what clap or Caporal can do :P
00:09:29FromGitter<Varriount> Was someone here working on a file de-duplicator?
00:09:42FromGitter<Varriount> Because I could use one at the moment.
00:09:50CalinouI'd work on a CLI library, but I barely know Nim
00:09:50FromGitter<zacharycarter> yeah
00:09:55Calinouand am not very good at programming anyway
00:10:20FromGitter<zacharycarter> @genotrance
00:10:47FromGitter<Varriount> @genotrance I am in need of a file-deduplicator
00:10:56*zachk quit (Client Quit)
00:12:06*zachk joined #nim
00:14:35*endragor quit (Ping timeout: 240 seconds)
00:16:22FromGitter<zacharycarter> --no-heap-copy was the answer to my problem
00:16:33FromGitter<zacharycarter> ¯\_(ツ)_/¯
00:16:39FromGitter<zacharycarter> ¯\_(ツ)_/¯
00:16:43FromGitter<zacharycarter> whoops
00:16:46Yardanico:D
00:16:56YardanicoI wouldn't ask you how you figured this out :D
00:17:19FromGitter<zacharycarter> https://github.com/kripken/emscripten/issues/5179
00:17:43FromGitter<zacharycarter> took a lot of googling
00:19:30FromGitter<Varriount> @zacharycarter Is that a compiler option for Nim?
00:19:44Yardanicono
00:19:45Yardanicoit's for emscripten
00:21:14FromGitter<zacharycarter> ^
00:33:18FromGitter<zacharycarter> getting somewhere
00:33:37FromGitter<zacharycarter> (https://files.gitter.im/nim-lang/Nim/fEDx/Screen-Shot-2017-09-23-at-8.33.14-PM.png)
00:34:04Yardanicoyay, assimp?
00:34:54FromGitter<zacharycarter> yup
00:36:15FromGitter<Varriount> @zacharycarter Have you tested with WebAssembly yet?
00:36:33Yardanicohe does that already :)
00:36:37YardanicoIIRC
00:37:04FromGitter<zacharycarter> yup!
00:37:05FromGitter<Varriount> Might be worth it to write up an article showcasing Nim and WebAssembly. It would be something to post to Reddit, Hacker News, etc.
00:37:11FromGitter<zacharycarter> I could do that
00:37:47FromGitter<Varriount> Actually, a comparison on performance and tradeoffs between WebAssembly and Javascript would be even better.
00:38:18FromGitter<zacharycarter> it would be but I don't think I'm going to get zengine compiling to the js backend
00:38:32FromGitter<zacharycarter> so I'd have to do some other sort of example
00:38:49Yardanicowell maybe asm.js ?
00:39:47FromGitter<Varriount> Sure, asm.js
00:39:54FromGitter<zacharycarter> that i coul do
00:39:56FromGitter<zacharycarter> could do
00:42:15*vlad1777d quit (Ping timeout: 240 seconds)
00:43:58FromGitter<zacharycarter> I guess I cant use the os module with wasm which kind of stinks
00:44:08FromGitter<zacharycarter> not sure how I'm supposed to find the current working directory
00:49:47*obadz- joined #nim
00:53:20FromGitter<zacharycarter> looks like maybe I can wrap https://github.com/kripken/emscripten/blob/incoming/src/library_fs.js
00:53:36*zachk quit (Quit: Leaving)
00:54:03*relax joined #nim
01:02:41FromGitter<zacharycarter> crap I'm not using the js backend so that's not possible is it
01:02:42FromGitter<zacharycarter> ugh
01:06:39FromGitter<zacharycarter> anyone have any ideas?
01:13:17*obadz- quit (Quit: WeeChat 1.9)
01:16:59*endragor joined #nim
01:20:56*chemist69 quit (Ping timeout: 246 seconds)
01:23:38Yardanicoadded proper readme now (and a repo) - https://github.com/Yardanico/nim-mathexpr
01:24:41*def-pri-pub joined #nim
01:26:57*relax quit (Ping timeout: 248 seconds)
01:34:51*chemist69 joined #nim
01:42:17*relax joined #nim
01:50:01*endragor quit (Ping timeout: 240 seconds)
01:50:14*jsgrant quit (Read error: Connection reset by peer)
02:05:51FromGitter<zacharycarter> @yglukhov - on the off chance you're around - is there any possibility of creating something like - EM_ASM_STRING ?
02:08:53Yardanicohmm wait
02:09:06YardanicoI remember some library in nim, maybe by yglukhov
02:09:22Yardanicowhich allowed you to wrap JS functions from asm.js or from pure JS
02:09:32Yardanicoor even from wasm, I don't really remember
02:11:34Yardanicoah
02:11:37Yardanicozacharycarter: https://github.com/yglukhov/jsbind
02:11:43Yardanicosadly not for wasm :(
02:12:19Yardanicoor maybe it would work too
02:13:40FromGitter<zacharycarter> yeah I tried that
02:14:04FromGitter<zacharycarter> but sadly there's not EM_ASM_STRING macro only a EM_ASM_INT and EM_ASM_DOUBLe
02:14:08FromGitter<zacharycarter> I tried adding one but it blows up :/
02:32:51FromGitter<zacharycarter> figured it out - it was the try / catch statements that were causing issues
02:33:10FromGitter<zacharycarter> or try except I guess
02:36:15*ipjk quit (Read error: Connection reset by peer)
02:48:19*endragor joined #nim
02:58:12*Serenit0r joined #nim
03:01:30*SerenityStyle quit (Ping timeout: 252 seconds)
03:06:50*dddddd quit (Remote host closed the connection)
03:08:20*Nobabs27 joined #nim
03:11:40*mahmudov quit (Remote host closed the connection)
03:15:46FromGitter<zacharycarter> (https://files.gitter.im/nim-lang/Nim/cUbr/Screen-Shot-2017-09-23-at-11.15.24-PM.png)
03:16:35*endragor quit (Ping timeout: 240 seconds)
03:20:35Yardanicowhat's the FPS like ? :)
03:20:38Yardanicobut cool anyway
03:21:37*rauss joined #nim
03:22:03*Yardanico quit (Remote host closed the connection)
03:23:20FromGitter<zacharycarter> thanks
03:23:24FromGitter<zacharycarter> good question
03:23:37FromGitter<zacharycarter> seems to be running fine, but I'll write a fps counter now
03:36:12*m712 quit (Ping timeout: 260 seconds)
03:45:59*dashed joined #nim
03:49:54*dashed quit (Client Quit)
03:50:11*dashed joined #nim
03:50:20*def-pri-pub left #nim (#nim)
04:17:40*endragor joined #nim
04:41:42*Nobabs27 quit (Quit: Leaving)
04:47:15*relax quit (Ping timeout: 240 seconds)
04:53:19*endragor quit (Ping timeout: 248 seconds)
05:04:33*jsgrant joined #nim
05:13:21*Serenit0r quit (Quit: Leaving)
05:21:05*onionhammer quit (Ping timeout: 240 seconds)
05:27:42*onionhammer joined #nim
05:52:38*endragor joined #nim
06:11:11*endragor quit (Remote host closed the connection)
06:11:27*endragor joined #nim
06:27:28*solitudesf joined #nim
06:34:35*rauss quit (Read error: Connection reset by peer)
06:36:40*rauss joined #nim
07:16:13FromGitter<genotrance> @Varriount: I'm yet to post this to github but you can download the latest version here: https://www.dropbox.com/s/149gz1k3taoehp8/autodup.zip?dl=0. Requires asynctools and docopt for build, and fpcalc - https://acoustid.org/chromaprint if you want to dedupe music files. I've only tested on Windows but I don't believe there's anything OS specific. @zacharycarter was able to build on Mac.
07:31:03FromGitter<Bennyelg> Can i iterate over csv in threaded mode? ⏎ I want to pass X amount of chunks to each thread to process some work
07:31:15FromGitter<Bennyelg> what is the best way to achieve this ?
07:37:42FromGitter<Varriount> @Bennyelg Read in the CSV, and launch workers. I'd use spawn
07:38:21FromGitter<Bennyelg> I thought about it, I just need appropriate way to split the lines of the csvs among the threads
07:43:01FromGitter<Varriount> Well, spawn uses a threadpool, so I would work with that: https://nim-lang.org/docs/manual.html#parallel-spawn
07:43:08FromGitter<Varriount> @Bennyelg ^
07:43:18FromGitter<Bennyelg> Thanks I'll dig into
07:54:16*claudiuinberlin joined #nim
08:03:38FromGitter<Varriount> @Bennyelg
08:03:54FromGitter<Bennyelg> ?
08:04:09FromGitter<Varriount> Gah, mistype
08:04:14FromGitter<Varriount> Sorry
08:04:17FromGitter<Bennyelg> :)
08:13:20*libman quit (Quit: Connection closed for inactivity)
08:30:44*skrylar joined #nim
08:52:40*nsf joined #nim
08:56:38FromGitter<mratsim> 3998 people starred Nim on Github!
08:59:46FromGitter<mratsim> @Bennyelg, the fastest CSV reader by far is XSV in Rust https://github.com/BurntSushi/xsv. It’s the only one who didn’t choke on a 1.3GB csv I had with 3500+ columns and 110k lines. You first start by indexing the binary start of all lines, and then it can do multithreading safely and aggressively on each of those lines
09:01:10*thomasross quit (Remote host closed the connection)
09:01:35*thomasross joined #nim
09:04:54Araqcan't you use a database instead?
09:05:20Araqsuch a CSV file is not very interoperable if no other library can handle it ...
09:09:52FromGitter<mratsim> Well it was for a data science competition that was long finished so I could manage manually. The file came from a perl tool that dumped the EXIF metadata of 100k+ photos
09:13:08AraqI would use sqlite instead
09:13:48*endragor_ joined #nim
09:17:01*endragor quit (Ping timeout: 240 seconds)
09:24:09FromGitter<mratsim> Yes, I think it’s a good idea, I actually tried, but I didn’t have the time to setup everything.
09:25:37*Yardanico joined #nim
09:31:19Yardanicotwo more stars on github! it's happening, yay!
09:37:22FromGitter<mratsim> Nim code is like 3-10 lines of documentation for 1-3 lines of code >_>
09:38:00Yardanicowell it's literally the same for every language :)
09:47:31Araqmratsim: solution: don't document your code :D
09:48:09Yardanicook, now I need to do shunting yard instead of recursive descent because it should be a lot faster :)
09:48:29AraqYardanico: c2nim uses it and Nim's parser too
09:48:40YardanicoAraq, recursive descent?
09:48:42Araqyou can copy it from there
09:48:52Yardanicoah, shunting yard, ok, interesting
09:49:07Araqrecursive descent + shunting yard is what every expert uses :P
09:50:20Yardanicowell recursive descent seems to be easiest to implement
09:53:12Araqit's the natural solution
09:53:27Araqand can be enhanced with backtracking
09:53:33Araqc2nim does that too.
09:57:02FromGitter<mratsim> @Araq, not documenting >_>, imagine the questions if we didn’t have a Nim manual
09:57:38FromGitter<mratsim> @Yardanico, I did a calculator for iOS/Android in React Native in the past. My Shunting Yard algo is there: https://github.com/mratsim/ReactFincal/blob/master/src/MathLogic.ts
09:58:05FromGitter<mratsim> Functional style typescript* not javascript
10:01:36*mahmudov joined #nim
10:09:24*ofelas joined #nim
10:18:52*nsf quit (Quit: WeeChat 1.9)
10:20:15*Sembei quit (Ping timeout: 240 seconds)
10:20:21*MyMind joined #nim
10:26:06*endragor joined #nim
10:29:13*dddddd joined #nim
10:29:21*endragor_ quit (Ping timeout: 248 seconds)
10:41:03*adeohluwa joined #nim
10:46:23adeohluwahttps://www.irccloud.com/pastebin/eiKCS6O3
10:46:46adeohluwaanyone else gets.... routines:SSL_shutdown:shutdown while in init
10:47:20*yglukhov joined #nim
10:51:04adeohluwahttps://usercontent.irccloud-cdn.com/file/ua40uwy5/IMG_20170924_125015.jpg
10:53:45adeohluwaspawn retrieve gives an error after a while
10:56:38adeohluwalooks like the house is asleep
10:56:44adeohluwa
11:09:11FromGitter<zacharycarter> morning
11:09:18federico3adeohluwa: what is that?
11:09:28FromGitter<zacharycarter> looks like android nim
11:09:40Yardanicowell it doesn't really matter in his case :)
11:09:41Yardanicoit's termux
11:09:59adeohluwa:D
11:10:04FromGitter<zacharycarter> is he typing all that code on a phone>
11:10:14FromGitter<zacharycarter> because I would kill myself
11:10:18FromGitter<zacharycarter> :P
11:10:31FromGitter<zacharycarter> are you typing all that on a phone adeohluwa
11:10:32FromGitter<zacharycarter> >
11:11:06adeohluwasome part of u wanted to hear a yes??
11:11:11adeohluwadefinitely not!
11:11:25adeohluwanot into masochism :D
11:11:32federico3a little tutorial on how build and run Nim on a phone without having to fiddle with the phone itself would be nice
11:11:47adeohluwaI git clone & edit on the go
11:11:58Yardanicofederico3, you don't need that much
11:12:04Yardanicotermux support is already here
11:13:04federico3Yardanico: even 5 lines on the wiki on what termux is and how to use Nim on it..
11:14:35adeohluwatermux support? there is no pkg install nim
11:15:02adeohluwa anyone else gets....    routines:SSL_shutdown:shutdown while in init
11:15:42Yardanicoadeohluwa, there is no package, but nim supports termux
11:15:43FromGitter<zacharycarter> while in what init?
11:15:56Yardanicozacharycarter: it seems to be an openssl error
11:16:08Yardanicomaybe some incorrect call from nim side
11:16:33adeohluwaspawn retrieve (URL, filename, proxy)
11:16:39adeohluwain a for loop
11:16:49FromGitter<zacharycarter> you're compiling with -d:ssl right?
11:17:00adeohluwadefinition for proc retrieve () is in picture
11:17:14adeohluwaZachary: yes I am
11:17:43FromGitter<zacharycarter> if you can post the full code on gist I can try to compile it on my machine
11:17:50FromGitter<zacharycarter> and see what happens
11:18:30FromGitter<zacharycarter> I have a feeling this error has nothing to do with termux / android
11:19:03adeohluwano the error happens on my PC
11:19:14adeohluwamy PC is off @ the moment
11:19:51adeohluwawill post the gist
11:20:10FromGitter<zacharycarter> cool
11:22:46Yardanicolol, it literally was 3 lines to add variables to my math evaluator :D
11:22:48Yardanicoeval("+5^+3+1.1 + a", {"a": 5.0})
11:23:28Yardanicoresult is 131.1, which is correct
11:24:06FromGitter<Bennyelg> I'll explain my problem in more detail: ⏎ ⏎ @Araq @mratsim @Varriount ⏎ I wrote CSVql using nim. ⏎ The bottom line is: Query over CSV with ansi SQL: e.g "SELECT a,b,avg(c) FROM '/path/to/file.csv' group by a,b LIMIT 100" -H ... [https://gitter.im/nim-lang/Nim?at=59c795d6b59d55b823303f3d]
11:25:05FromGitter<Bennyelg> If you want to see the project here it is: ⏎ https://github.com/Bennyelg/csvql ⏎ ⏎ I'm using SQLite in the background to do the sqls of course. [https://gitter.im/nim-lang/Nim?at=59c79611cfeed2eb6544c36f]
11:25:29FromGitter<Bennyelg> @ Yardanico you are also in
11:26:28FromGitter<zacharycarter> I see how it is
11:26:30FromGitter<zacharycarter> :P
11:26:43Yardanico:D
11:27:13FromGitter<zacharycarter> @Bennyelg it seems like you're recreating Nimdata more or less
11:27:19FromGitter<zacharycarter> minus the sql part
11:27:46FromGitter<Bennyelg> No it wasn't my intention to mimic nimdata
11:27:52FromGitter<zacharycarter> what exactly do you want to do in parallel? load the files up?
11:28:07FromGitter<Bennyelg> just query inline over csvs somethins it's better then to use awk or grep
11:28:07FromGitter<zacharycarter> parallel is for CPU intensive tasks, async is I/O intensive
11:28:07FromGitter<mratsim> read the lines in the csv files I think
11:28:24FromGitter<zacharycarter> I would use async in this case and not threadpool
11:28:45FromGitter<zacharycarter> I think anyway
11:29:29FromGitter<zacharycarter> I'm guessing this is the slow part? https://github.com/Bennyelg/csvql/blob/master/src/csvql.nim#L138
11:29:55FromGitter<mratsim> @Bennyelg I would read BurntSushi blog about CSV parsing performance: http://blog.burntsushi.net/csv/
11:30:02FromGitter<Bennyelg> yup, the code can be simplefy but I wont doing that before changing it to async
11:31:28FromGitter<zacharycarter> I'll check out the project and play around with it
11:31:28jsn-I'd assume async helps with io blocking (like network), not io waiting (like local disk reads)
11:31:44FromGitter<zacharycarter> well the file is already read into memory
11:32:06FromGitter<zacharycarter> or I guess it's a stream
11:40:09FromGitter<Bennyelg> Stream so I guess each read is in memory
11:41:11FromGitter<zacharycarter> yeah :/ going to be hard to parallelize this
11:42:28FromGitter<Bennyelg> Pah, I must find a solution to this, it' can be very nice tool if it will work faster
11:43:19FromGitter<Bennyelg> currently, a csv with 2m rows on my laptop I took to upload the csv aprox 50 seconds
11:44:12jsn-my undestanding is, unless you are doing network / terminal io or timeouts, async is useless. windows might have some exceptions, but other that that it doesn't make much sense
11:44:50FromGitter<Bennyelg> Do you have any solution for that? because threads is also not an option i guess
11:45:22jsn-i don't know, why not threads? [i probably missed the discussion of that]
11:46:21FromGitter<zacharycarter> I think threads are fine for part of the solution but it doesn't help with a file stream reading
11:47:00jsn-ah, the stream thing
11:47:13FromGitter<zacharycarter> yeah :/
11:47:22FromGitter<Bennyelg> :(
11:47:26FromGitter<zacharycarter> maybe look at how Nimdata does this
11:47:33FromGitter<zacharycarter> because it can take a CSV as input
11:47:36FromGitter<zacharycarter> and to my knowledge it's fast
11:47:45FromGitter<Bennyelg> I'll see now
11:48:15jsn-well, either you reading your stream slower than you're processing lines on one cpu -- and then you don't need parallel processing
11:48:48jsn-or you're reading faster than you can process on one cpu, then some pooled thread workers should help
11:50:13jsn-... or you might want to read in parallel too, but that's not exactly trivial [yet should be possible]
11:50:40FromGitter<Bennyelg> this may be the best solution I guess.
11:53:02*nsf joined #nim
11:53:04jsn-do you even know where your bottleneck is now? is it io or cpu?
11:54:17jsn-if it's io, i'm not even sure parallel reading would improve the situation, btw; if you're hitting the disk sequential read bandwidth cap, parallel will not magically fix that
12:05:16jsn-hmm, btw
12:07:23jsn-since sqlite command line utility already has csv import built in, probably well-optimizied ...
12:09:07*vlad1777d joined #nim
12:11:39FromGitter<zacharycarter> hrm I need to figure out how to read files with emscripten / wasm
12:12:24FromGitter<zacharycarter> @yglukhov are you around by any chance?
12:12:36yglukhovyup
12:12:46FromGitter<zacharycarter> sweeeetttttt
12:13:17FromGitter<zacharycarter> would something like - https://github.com/yglukhov/jsbind/blob/master/jsbind/emscripten.nim#L291 - be possible for a string value?
12:13:44FromGitter<zacharycarter> I'm trying to figure out how I can call / wrap this function - https://kripken.github.io/emscripten-site/docs/api_reference/Filesystem-API.html#FS.readFile
12:17:35FromGitter<Jipok> @zacharycarter , try something like this ⏎ ⏎ ```passL %= "--preload-file file.txt" ⏎ var contents = FS.readFile('file.txt'); ``` [https://gitter.im/nim-lang/Nim?at=59c7a25e32fc8b7e40353062]
12:17:40yglukhovzacharycarter: it's not clear what you want. read a file from js code? why would you want that?
12:18:16FromGitter<zacharycarter> well I'm preloading the files
12:18:43FromGitter<zacharycarter> but whenever I call - https://nim-lang.org/docs/system.html#readFile,string_2 - I get the following error
12:19:27jsn-Bennyelg, did you consider just creating init file and command line for sqlite binary, and then just doing exec? that would get you free sql shell with history/readline, optional persistence with indices and probably some more benefits
12:19:50FromGitter<zacharycarter> missing function: *setjmp ⏎ printErr @ 00*Minimal.html:1249 ⏎ __setjmp @ 00_Minimal.js:1 ⏎ <WASM UNNAMED> @ VM205-462 wasm-028db34a-462:98 ⏎ <WASM UNNAMED> @ VM205-542 wasm-028db34a-542:47 ... [https://gitter.im/nim-lang/Nim?at=59c7a2e632fc8b7e403531ec]
12:19:53FromGitter<zacharycarter> whoops sorry
12:20:09FromGitter<zacharycarter> missing function: _setjmp
12:20:27FromGitter<zacharycarter> not sure how to deal with that
12:20:37FromGitter<Jipok> ah
12:21:05yglukhovzacharycarter: whats your emcc version?
12:21:21FromGitter<zacharycarter> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59c7a341614889d4753346fc]
12:21:24yglukhovi thought it has already implemented setjmp support for wasm
12:21:43yglukhovsetjmp is nim exception mechanism
12:22:00yglukhovjust play with some try:except, youl see the same error likely
12:22:12FromGitter<zacharycarter> yeah I did get that when using try except
12:22:28FromGitter<zacharycarter> I guess readFile internally uses try except
12:22:49Yardanicowell anyway it would be hard to use nim without any try except
12:22:53yglukhovif wasm doesnt support setjmp, are you sure that youll get too far even if you workaround readfile? =)
12:23:07FromGitter<zacharycarter> I've gotten pretty far so far
12:23:15FromGitter<zacharycarter> but it is painful to have to live without try except
12:23:29FromGitter<zacharycarter> I'm pretty sure wasm / emscripten is supposed to support it to
12:23:39yglukhovive heard emscripten should already support it.
12:23:52yglukhovthat was the case a while aho, but now it should be good.
12:24:10yglukhovi'd better try to dig that way instead of avoiding exceptions
12:24:38FromGitter<zacharycarter>  I'll see what I can dig up in emscripten issue tracker
12:24:40FromGitter<zacharycarter> thanks
12:25:00yglukhovmake sure youve got the latest ver
12:26:10FromGitter<zacharycarter> I think I do
12:26:13FromGitter<zacharycarter> emsdk update doesn't do anything
12:26:16FromGitter<zacharycarter> nor does emsdk install latest
12:26:21yglukhovemcc --version
12:26:45FromGitter<zacharycarter> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59c7a484b59d55b823306ec1]
12:26:48FromGitter<zacharycarter> looks like the latest version to me
12:27:21yglukhovnope
12:27:23yglukhovhttps://github.com/kripken/emscripten/releases
12:27:38FromGitter<zacharycarter> ah crap
12:27:44FromGitter<zacharycarter> I guess I have to build from source or something then?
12:27:56yglukhovlooks like it
12:28:46yglukhovcan give a dockerfile if you want
12:28:58yglukhov*i can give u
12:29:00FromGitter<zacharycarter> looks like - emsdk install sdk-incoming-64bit - will install the latest
12:29:06FromGitter<zacharycarter> running that now
12:29:11yglukhovoh ok cool
12:29:13FromGitter<zacharycarter> https://kripken.github.io/emscripten-site/docs/building_from_source/building_emscripten_from_source_using_the_sdk.html#building-emscripten-from-the-main-repositories
12:29:29FromGitter<zacharycarter> thanks for the offer though
12:29:33Yardanicoit's fun to properly handle functions with zero arguments, functions with any number of arguments, functions without parens
12:29:50YardanicoI mean I can't get it to work :P I wanted to have functions with zero number of arguments
12:30:44FromGitter<Jipok> ```echo readFile("text.txt")``` ⏎ ⏎ works for me. emcc --version 1.37.18 [https://gitter.im/nim-lang/Nim?at=59c7a574bac826f054f2f2ad]
12:31:08FromGitter<zacharycarter> wtf....
12:31:24FromGitter<zacharycarter> oh 18
12:31:26FromGitter<zacharycarter> okay phew hehe
12:32:04FromGitter<zacharycarter> thanks for trying that @Jipok
12:34:49adeohluwaZachary: https://gist.github.com/Adeohluwa/f16783b3789931bb562c9a6c41ac3526
12:35:06adeohluwahttps://gist.github.com/Adeohluwa/d7969fd9c5c8679b83378015ecbe8a50
12:35:21adeohluwathe script & the txt file needed
12:36:29FromGitter<zacharycarter> trying now adeohluwa
12:37:44adeohluwabless
12:39:39FromGitter<zacharycarter> I got : STOP | Too Many Requests From This IP
12:39:53FromGitter<zacharycarter> :P
12:40:30FromGitter<zacharycarter> are you sure you want to use threads here for retrieving the data rather than async?
12:40:37FromGitter<zacharycarter> as it stands you're going to issue a ton of http requests
12:40:47FromGitter<zacharycarter> and very quickly
12:42:03adeohluwayes if I make too much request within a small time frame from same IP
12:42:09adeohluwaI get asked to fill a captcha
12:42:27adeohluwathats why I'm scared to use async
12:42:35FromGitter<zacharycarter> async should alleviate that problem
12:42:41FromGitter<zacharycarter> threads will magnify it
12:42:52adeohluwareally?
12:42:56dom96erm
12:42:59adeohluwaWoW...
12:43:08Yardanicowell you can sleep in async too
12:43:15dom96I don't think that's strictly true
12:43:26dom96The real solution here is to ensure you don't make more than x amount of requests per second
12:43:36adeohluwabut all requests from async will come from the same IP
12:43:38dom96Not "oh well, I bet async will make it slower"
12:43:48FromGitter<zacharycarter> I'm not saying async will make it slower
12:44:12adeohluwaideally I'm thinking I will throw in random proxies
12:44:54FromGitter<zacharycarter> but yeah I guess what dom96 is saying is right
12:45:04FromGitter<zacharycarter> throttle your requests
12:45:18adeohluwaso I can set a super large sleep
12:45:26adeohluwabut then the script will take Ages
12:45:33adeohluwamaybe days running
12:45:48dom96what API is this accessing?
12:46:09Yardanicoit's not an api :)
12:46:11adeohluwaam scraping the website for details
12:46:21adeohluwathat I'm writing to CSV
12:46:31dom96I see. Interesting.
12:47:21FromGitter<Bennyelg> I was notice that Sites which ask for java script enable (which is required in most of the interesting sites) nim can't scraping this
12:47:39adeohluwa& even @ that
12:47:47adeohluwaThe SSL shutdown error
12:47:58adeohluwaWill make sure the script stops after a while
12:48:06adeohluwawhich defeats it all
12:48:18YardanicoBennyelg: naah
12:48:22Yardanicoyou can always spoof requests :)
12:48:35adeohluwahmm...
12:48:44adeohluwaI set UA to googlebot
12:48:52adeohluwadidn't seem to help :D
12:49:36FromGitter<zacharycarter> grr I still get :
12:49:42FromGitter<zacharycarter> ```warning: unresolved symbol: _longjmp ⏎ warning: unresolved symbol: _setjmp``` [https://gitter.im/nim-lang/Nim?at=59c7a9e6614889d475335bb9]
12:49:45FromGitter<zacharycarter> with the latest emcc wtf
12:50:44FromGitter<Jipok> It's a familiar mistake. There was something about it, but I do not remember anymore.
12:50:56adeohluwaYardanico: how do u spoof requests?
12:51:04FromGitter<Jipok> Can you give your code and config file?
12:51:09FromGitter<zacharycarter> sure
12:51:14Yardanicoadeohluwa, well not exactly "spoof", you can just check what requests website does
12:51:21Yardanicoeven in chrome developer tools
12:51:28FromGitter<zacharycarter> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59c7aa507b7d98d30d2f0c80]
12:52:15Yardanicobtw, I just re-wrote argument handling and I can now parse "sqrt(max(1, 2))", "sqrt max(1, 2)", "sqrt max(1 2)" at the same time
12:52:41FromGitter<zacharycarter> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59c7aa99bac826f054f30482]
12:52:43Yardanicoalso I've added custom functions and variables to my parser :)
12:53:14FromGitter<zacharycarter> HERE2 never gets logged
12:54:00FromGitter<zacharycarter> I'll try a simpler example just reading a file and spitting it out
12:55:37FromGitter<zacharycarter> even this produces those warnings
12:55:42FromGitter<zacharycarter> ```echo readFile("examples/data/shaders/glsl100/foward.fs")```
12:55:51adeohluwaZachary: even if all goes well
12:56:03adeohluwathere is the SSL shutdown error
12:56:10FromGitter<zacharycarter> yeah :/
12:56:18FromGitter<zacharycarter> I'm not even sure how to get to that because I get too manyr equests from this IP first
12:58:16*kunev quit (Ping timeout: 255 seconds)
12:58:56*yglukhov quit (Remote host closed the connection)
13:00:30FromGitter<Jipok> @zacharycarter: check 00_Minimal.data
13:00:32Yardanicowhat would be a good name for math expressions evaluation library? it seems "mathexpr" is already taken by some C++ parser :)
13:00:44*kunev joined #nim
13:02:21FromGitter<zacharycarter> @jipok it's definitely in there
13:02:23adeohluwaZachary: increase the sleep a little
13:02:39adeohluwareduce for 1..10 to for 1..5
13:03:49FromGitter<zacharycarter> I gotta run I'll be back on in like an hour and try to help more adeohluwa
13:04:27FromGitter<Jipok> @zacharycarter: For me it works without errors. Which OS, browser, emcc do you use?
13:04:28adeohluwaalright ... will be here
13:17:57*libman joined #nim
13:28:18Yardanicoyay! https://github.com/Yardanico/nim-mathexpr/commit/c70e6cbd9ede324afbd4d629ff7ab7d89811dfa9
13:29:30*relax joined #nim
13:32:36Yardanicoit even supports things like this: "sqrt fac log2 20" is parsed as "sqrt(fac(log2(20)))"
13:33:05Yardaniconim-like :P
13:40:46*PMunch joined #nim
13:44:31*yglukhov joined #nim
13:49:34*relax quit (Ping timeout: 264 seconds)
13:52:24Yardanicoyglukhov, nimble js badge is cool :)
14:10:20*ShalokShalom_ joined #nim
14:11:15Yardanicoand btw, JS generated code doesn't look that bad
14:11:19Yardanicoit's really readable
14:13:08*ShalokShalom quit (Ping timeout: 240 seconds)
14:13:10*relax joined #nim
14:17:47*Yardanico_ joined #nim
14:20:18*Yardanico quit (Ping timeout: 246 seconds)
14:20:48*Yardanico_ quit (Client Quit)
14:21:01*Yardanico joined #nim
14:22:35*relax quit (Ping timeout: 240 seconds)
14:24:40*yglukhov quit (Remote host closed the connection)
14:40:23FromGitter<zacharycarter> @Jipok chrome, osx sierra and emcc ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59c7c3d7210ac26920685585]
14:54:11FromGitter<zacharycarter> I'm going to try an older version of emsdk this latest one seems to be buggy
15:02:00*mahmudov quit (Ping timeout: 252 seconds)
15:03:13dom96PSA. From now on let's start adding any changes between releases to this document: https://github.com/nim-lang/Nim/blob/devel/changelog.md
15:03:44*miran joined #nim
15:05:42Yardanicodom96, add "func" to changelog :)
15:05:51*skrylar quit (Remote host closed the connection)
15:07:54dom96Araq: Mind if I implement a `*` for (int, float)?
15:13:45FromGitter<zacharycarter> ugh so weird - whenever I compile anything for emscripten now I just get a bunch of spam output in my console after it compiles
15:16:45FromGitter<Jipok> @zacharycarter: you can give me the project completely, I'll try to run it myself
15:16:55FromGitter<zacharycarter> sure
15:17:04FromGitter<zacharycarter> let me commit this branch
15:18:59FromGitter<zacharycarter> https://github.com/zacharycarter/zengine/tree/wasm
15:19:03FromGitter<zacharycarter> here's the command I"m running
15:19:15FromGitter<zacharycarter> from the root of the cloned directory
15:19:20FromGitter<zacharycarter> ``````
15:21:02FromGitter<zacharycarter> thanks for giving this a shot @Jipok I appreciate it greatly
15:25:01FromGitter<zacharycarter> okay I think I know one problem
15:25:29FromGitter<zacharycarter> I think since I compiled assimp with a older version of emscripten that's why I get all that crazy output I was talking about
15:25:43Araqdom96: I do mind.
15:25:46FromGitter<zacharycarter> if I remove libassimp.bc from the nim.cfg then it at least compiles properly
15:25:59dom96Araq: okay, why?
15:26:06FromGitter<zacharycarter> but I still get the setjmp warnings
15:26:18dom96Also, how do I prevent Nim from generating myCppTypeDatInit000 calls?
15:26:23FromGitter<Jipok> it seems you forgot the config file
15:26:53FromGitter<Jipok> at least I do't see it
15:28:03FromGitter<zacharycarter> I'll push up another commit
15:28:31FromGitter<zacharycarter> please check now @jipok - sorry about that
15:29:21*PMunch quit (Quit: leaving)
15:29:28*MyMind quit (Ping timeout: 240 seconds)
15:29:54*Pisuke joined #nim
15:32:05FromGitter<Jipok> glsl100?
15:32:16FromGitter<zacharycarter> shit
15:32:19FromGitter<Jipok> cannot open: examples/data/shaders/glsl100/animation/forward.fs
15:32:41FromGitter<Jipok> m.b. glsl400&
15:32:42FromGitter<zacharycarter> just pushed up again ugh my bad
15:35:48FromGitter<Jipok> https://i.imgur.com/Bbbm4sZ.png
15:36:23FromGitter<zacharycarter> ughhhh
15:36:25FromGitter<zacharycarter> so weird
15:36:26FromGitter<Jipok> +
15:37:02FromGitter<Jipok> but
15:37:24FromGitter<Jipok> (https://files.gitter.im/nim-lang/Nim/h9p9/___________.png)
15:38:11FromGitter<zacharycarter> well you're not getting the setjmp error so I wonder what is going on with my emscripten / wasm install
15:40:10FromGitter<Jipok> or browser
15:40:21FromGitter<Jipok> can u test in firefox?
15:40:36FromGitter<Jipok> and try asmjs version
15:41:26FromGitter<zacharycarter> sure
15:41:44FromGitter<zacharycarter> well the thing is I get those warnings during compilation
15:41:45FromGitter<zacharycarter> so I don't think it's the browser
15:41:46*Sentreen quit (Ping timeout: 264 seconds)
15:41:47FromGitter<zacharycarter> I'll try asm.js
15:47:40*libman quit (Quit: Connection closed for inactivity)
15:49:08FromGitter<zacharycarter> same error with asm.js @Jipok
15:52:38*Jesin quit (Quit: Leaving)
15:54:19FromGitter<Jipok> http://rgho.st/8nLWycDQP
15:54:20*Sentreen joined #nim
15:54:36FromGitter<Jipok> @zacharycarter, try this
16:02:22FromGitter<zacharycarter> @Jipok that works for me
16:02:33FromGitter<Jipok> hmm
16:02:35*nsf quit (Quit: WeeChat 1.9)
16:02:35FromGitter<zacharycarter> so I guess that means it's machine specific with my emsdk
16:02:41*Sentreen quit (Ping timeout: 248 seconds)
16:02:43FromGitter<Jipok> nim -v?
16:02:56FromGitter<zacharycarter> 1) 17.2
16:03:05FromGitter<Jipok> stable?
16:03:15FromGitter<zacharycarter> don't think so
16:03:41FromGitter<Jipok> but I don't think that it influenced
16:03:44FromGitter<zacharycarter> yeah :/
16:03:50FromGitter<zacharycarter> def seems like something with emsdk
16:04:18FromGitter<zacharycarter> I think I'll post an issue on the emscripten github
16:05:40FromGitter<Jipok> it's strange,emcripten seems to be machine-independent
16:05:59FromGitter<zacharycarter> I agree it definitely should be
16:07:51FromGitter<Jipok> You can try to build a debug version and find cause of error
16:07:59*mahmudov joined #nim
16:09:05FromGitter<Jipok> code without -d:release readable
16:10:03FromGitter<zacharycarter> I just found this - https://groups.google.com/forum/#!topic/emscripten-discuss/5-0m2GZH6jw
16:10:39FromGitter<zacharycarter> http://qiita.com/biotist/items/0499575bc64e49c9f998 and that
16:12:40*enthus1ast- quit (Ping timeout: 255 seconds)
16:14:17FromGitter<Jipok> looks like an interesting article, but does not translatable
16:15:27Yardanicowell it translates for me well
16:15:39Yardanicofrom japanese to russian
16:15:39FromGitter<Jipok> чем?
16:15:45Yardanicogoogle translate
16:15:59Araqdom96: currently you can't prevent these calls from being emitted
16:16:06FromGitter<Jipok> ну переводится, но не читабельно же
16:16:10Araqlater versions will eliminate them
16:16:28YardanicoJipok: читабельно же
16:16:29Araqdom96: float*int and int*float adds special cases to what is already too complex
16:16:35*Sentreen joined #nim
16:18:08AraqЯ люблю рисовать розу
16:18:58YardanicoAraq, nice!
16:19:20Araqif only I knew more words :P
16:19:43FromGitter<Varriount> I'd memory map the entire file (or part of the file) and use a threadpool of workers
16:20:16dom96Araq: What's too complex about it?
16:20:23FromGitter<Jipok> Yardanico, а да. Я прост листнул куда-то, увидел "я спал, прежде чем написал «Сон», поэтому добавил", закрыл.
16:20:43YardanicoJipok: ну машинный перевод
16:20:55Araqdom96: do you know the type inference rules for mixed arithmetic?
16:21:36Araqand what's special about * ? why not allow float + int ?
16:21:43dom96That should be allowed too
16:21:59dom96and you'd get a float back
16:22:26Araqwe could add them to a new module, 'import betterarithmetic'
16:23:51FromGitter<alehander42> can I inject nodes in the closest block AND return an inplace node in macros? e.g. expanding `for s in x()` x to stuff before `for ` and in place of `x()`
16:24:35Araqno.
16:25:13*yglukhov joined #nim
16:26:28dom96so you're worried this is going to have surprising behaviour?
16:27:14dom96Are other languages really as strict about this?
16:27:18FromGitter<alehander42> is that a design decision(it doesn't seem useful) or is it just hard to provide that kind of functionality (inject in surrounding block) in all situations :?
16:28:20Araqalehander42: It's a design decision so that I can know only the macro's context is affected by the macro.
16:28:43FromGitter<Jipok> @zacharycarter ⏎ This is what you get from the compiler? ⏎ ⏎ ```$ llvm-nm stdlib_system.o | grep jmp ⏎ U longjmp ⏎ U setjmp ⏎ ``` [https://gitter.im/nim-lang/Nim?at=59c7dd3b7b7d98d30d2fc4ad]
16:29:08*yglukhov quit (Ping timeout: 240 seconds)
16:30:01Araqbbl
16:30:27FromGitter<alehander42> @Araq ok, makes sense
16:30:43FromGitter<zacharycarter> need to figure out where stdlib_system.o is
16:31:12FromGitter<zacharycarter> oh that's a nim file
16:31:20FromGitter<zacharycarter> err compiled nim file
16:31:30FromGitter<Jipok> nimcache
16:32:07FromGitter<zacharycarter> :/ I get - ```error: Unknown attribute kind (52) (Producer: 'LLVM4.0.0' Reader: 'LLVM APPLE_1_800.0.42.1_0')```
16:32:16FromGitter<zacharycarter> nm examples/src/zengine_examples/00_Minimal/nimcache/stdlib_system.o | grep jmp
16:32:30FromGitter<Jipok> wtf
16:32:56FromGitter<zacharycarter> I agree!
16:33:40*enthus1ast- joined #nim
16:35:17mirani'm using `nre` library for regex - how can i get the subgroups of a match?
16:35:19FromGitter<zacharycarter> maybe I have an old version of xcode command line tools or something
16:35:58miranfor example: `s.find(re"\((\d+)x(\d+)\)")` -> how to get the first and the second number separately?
16:36:28FromGitter<zacharycarter> @Jipok updating commandline tools hopefully this fixes things
16:44:14*adeohluwa quit (Quit: Connection closed for inactivity)
16:46:42FromGitter<Jipok> but why 'commandline tools'? ⏎ ⏎ ```should work``` [https://gitter.im/nim-lang/Nim?at=59c7e172cfeed2eb6545d515]
16:50:09*enthus1ast- quit (Ping timeout: 248 seconds)
17:09:03*couven92 joined #nim
17:11:06*solitudesf quit (Remote host closed the connection)
17:15:35*def-pri-pub joined #nim
17:17:01FromGitter<zacharycarter> i has no idea
17:17:14FromGitter<zacharycarter> sorry bouncing back and forth between the computer and my truck I'm trying to sell
17:20:45FromGitter<zacharycarter> @Jipok updating command line tools made nm work
17:20:56FromGitter<adamrezich> is play.nim-lang.org broken atm? I can neither compile nor create gists :(
17:21:16Yardanicoyeah
17:21:19Yardanicoseems to be broken for me
17:21:24YardanicoFailed to load resource: the server responded with a status of 502 ()
17:21:27FromGitter<zacharycarter> :/
17:21:43FromGitter<zacharycarter> I'll try to fix
17:21:56FromGitter<adamrezich> anyways, what am I doing wrong here? https://pastebin.com/rWe2uvuk
17:22:14FromGitter<zacharycarter> apparently the device is out of space :O
17:22:17FromGitter<zacharycarter> wonder why
17:22:18*mahmudov quit (Remote host closed the connection)
17:22:35FromGitter<adamrezich> I'm assuming it's a case of me thinking nim'd do something for me when it wouldn't, and it needs templates/macros?
17:24:15Yardanicoadamrezich: nonono, almost everything is perfect
17:24:33Yardanicoyou forgot to add [T] to SlotMap
17:24:36Yardanicoat line 4
17:24:49Yardanicochange SlotMap to SlotMap[T]
17:24:49FromGitter<adamrezich> *smacks forehead*
17:25:26FromGitter<adamrezich> thanks haha
17:25:59FromGitter<adamrezich> I'm trying to implement a nim version of a container a former classmate of mine is trying to get added to the C++ STL: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0661r0.pdf
17:26:28*def-pri-pub quit (Ping timeout: 240 seconds)
17:27:05FromGitter<zacharycarter> today is not a good day for me :/
17:27:07*libman joined #nim
17:27:18FromGitter<zacharycarter> playground is very broken and so is emscripten
17:28:13FromGitter<adamrezich> :<
17:29:58FromGitter<zacharycarter> this is the error I see over and over in the nginx logs
17:30:01FromGitter<zacharycarter> ``````
17:35:18FromGitter<zacharycarter> okay playground should be up again
17:37:13Araqdom96: I've said it before, if I were to redesign the arithmetic rules, I'd copy C#'s rules and call it a day. not sure how much work that is to change now
17:37:39dom96I think it's worth trying
17:37:46dom96Although I don't know what C#'s semantics are.
17:37:57Araqwe do break compat in 0.18 though which is still planned to be version 1 RC
17:38:27dom96Games development seems to be a big niche for Nim so we need to ensure that handling of numbers is as friction-free as possible
17:39:03FromGitter<ephja> what are the proposed changes?
17:39:29*sleepyqt joined #nim
17:40:06YardanicoAraq, yay, I personally will make a dirty work: remove all {.deprecated pragmas before 1.0
17:40:15*endragor_ joined #nim
17:40:19Yardanicobefore 1.0 release
17:40:28Yardanicoand we'll need to update rosetta fully :P
17:40:33Yardanicorosetta code
17:40:34Araqdom96: friction-free conflicts with "silent overflow problems"
17:41:01dom96Yardanico: do it :D
17:41:13dom96Araq: Well we should discuss it at least
17:41:15Yardanicodom96, you're about rosetta or deprecated?
17:41:18FromGitter<zacharycarter> @adamrezich can you please verify?
17:41:19Araqin fact, int+float is not lossless for 64 bits ints
17:41:23dom96Yardanico: both
17:41:30Yardanicorosetta code seems to be very laggy :(
17:41:32*nsf joined #nim
17:41:33Araqlow(int64) does not fit in a float
17:42:07Araqdom96: also ... Jai doesn't do implicit integer conversions :P
17:42:14FromGitter<krux02> I am pretty sure low(int64) is in float
17:42:16FromGitter<adamrezich> @zacharycarter compiling works, but it seems like generating gists still fails :<
17:42:24dom96If we keep this then we should at least document the reasoning well
17:42:30FromGitter<krux02> it is the negative of a power of two
17:42:58*def-pri-pub joined #nim
17:43:03FromGitter<zacharycarter> @adamrezich I'll look into it
17:43:08*endragor quit (Ping timeout: 240 seconds)
17:43:21Araqkrux02: oh yeah good point, but low(int64)-1 is not a float then
17:43:56Araqsince both use 64bits there are integers that cannot be represented as floats precisely
17:44:36FromGitter<krux02> low(int64)-1 isn't an int either :P
17:44:46FromGitter<krux02> (int64)
17:44:53Araqlow(int64)+1
17:44:58Araqyou know what I mean :P
17:45:12FromGitter<krux02> yes I do
17:46:18FromGitter<zacharycarter> @adamrezich strange I can hit the url in a rest client and it works fine, just not from the playground :/
17:47:24FromGitter<adamrezich> @zacharycarter can you hit it from the server?
17:47:36FromGitter<zacharycarter> let me try
17:48:54FromGitter<zacharycarter> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59c7f006614889d475345fd4]
17:49:42*Elronnd is now known as WartHug
17:49:55*WartHug is now known as Elronnd
17:50:01FromGitter<adamrezich> maybe the server got temporarily blocked or something? D:
17:50:34FromGitter<zacharycarter> not sure :/
17:50:44FromGitter<zacharycarter> I think it's something going on with nginx
17:50:54FromGitter<zacharycarter> it's strange I can hit the uri from my browser and it's fine
17:50:57FromGitter<zacharycarter> but from the app it blows up
17:52:57FromGitter<adamrezich> weird
17:53:55dom96yglukhov: any reason why nimasset isn't in nimble?
17:54:05FromGitter<krux02> does anybody know how to create a gif animation from a nim application?
17:54:33FromGitter<krux02> I already have a screenshot button, but I would like to have the same for 5 second animations
17:54:50dom96Araq: What? If low(int64) can be represented as a float then how come low(int64)+1 can't?
17:55:20FromGitter<krux02> dom96: IEEE floanting point numbers
17:55:32FromGitter<krux02> low(int64) is the negative of a power of two
17:56:16dom96zacharycarter: what's the problem? Maybe I can help?
17:56:42dom96krux02: I guess I would need to remind myself about how floating point numbers are represented to understand
17:56:54FromGitter<krux02> dom96: most confusing are subnormal numbers
17:57:29FromGitter<krux02> and yes you should know how IEEE floats work
17:57:40FromGitter<krux02> and how they perform
17:58:50FromGitter<zacharycarter> dom96: gist's won't compile on the playground , keep getting 502 errors
17:59:15dom96does it work via the API?
17:59:30FromGitter<krux02> for example a lot of C/C++ compilers have a flag for fast math operations that round all subnormal numbers to zero because that path is little optimized and is for most applications not distinguishable from 0
17:59:35dom96is jester outputting anything useful?
18:00:07FromGitter<zacharycarter> it does work via the api
18:00:25FromGitter<zacharycarter> just not from the box
18:00:44FromGitter<zacharycarter> nothing useful in the app logs :/
18:01:32dom96Have you tried turning it off and on again? :)
18:02:47FromGitter<zacharycarter> yeah - tried restarting nginx as well as the service
18:02:58FromGitter<zacharycarter> let me try turning both off then ngnix on then the playground
18:03:03dom96Araq: Are exceptions in `cpp` mode working well?
18:03:23dom96I get stuff like this https://gist.github.com/dom96/bc8ffe85f4d59e379835cb6baa943c44
18:04:15AraqI think so, they are part of the testing suite, but most C++ code doesn't use exceptions
18:04:38Araqyour gist does not indicate any exception problems
18:04:38dom96It happened when an assert failed
18:04:45dom96and now it's happening for an index error as well
18:05:04Araqyes, unhandled exceptions terminate the program, what else
18:05:18dom96Well shouldn't I get the exception name instead of a SIGABRT?
18:05:29*def-pri-pub1 joined #nim
18:05:33dom96exception name + exception msg that is
18:06:05dom96Something like this: `Error: unhandled exception: index out of bounds [IndexError]`
18:06:21Araqthat's not under our influence
18:06:32Araqwe map 'raise' to 'throws'
18:06:35*def-pri-pub quit (Ping timeout: 240 seconds)
18:06:43Araqand so you get C++'s error messages
18:06:57dom96You print a Nim-like traceback though
18:07:07dom96This is a little surprising.
18:07:46FromGitter<ephja> only a few known concept issues left
18:08:13Yardanicoephja?
18:08:34Yardanicothere's also 8 generic concept issues :( https://github.com/nim-lang/Nim/issues?q=is%3Aissue+is%3Aopen+label%3AConcept%5BT%5D
18:08:57*mahmudov joined #nim
18:10:23FromGitter<ephja> that's what I was looking at. maybe it'll be possible to get a container interface in before 1.1 or so
18:11:08dom96https://github.com/nim-lang/Nim/issues/6431
18:11:24Yardanicoephja: container interface?
18:11:29Yardanicoor a concept"?
18:11:43Yardanicoif concept - it's possible already
18:11:56Araqdom96: I think that's actually a bug, it cannot reliably produce a stack trace
18:12:09Araqit just prints it in any case (?)
18:12:26FromGitter<ephja> nah I ran into a codegen issue, but it could be related to something else
18:12:32YardanicoAraq, I get proper traceback
18:12:41Yardanicoah, sorry
18:12:52dom96Araq: definitely a bug :)
18:12:54Yardanicoyeah, I have the same bug
18:12:58dom96maybe mac os x-specific?
18:13:05Yardanicodom96, no, I reproduced it
18:13:09YardanicoI was calling "nim c -r file.nim"
18:13:19YardanicoI get SIGABRT in 100% of runs
18:13:24*chemist69 quit (Ping timeout: 252 seconds)
18:13:59Yardanicoclang on linux
18:14:17Yardanicosame with gcc though
18:14:47FromGitter<ephja> Yardanico: concept(s). "interface" might be correct, but confusing since it has different meanings
18:15:09Yardanicodid you report this codegen issue?
18:15:11FromGitter<ephja> I haven't really felt the need to define class interfaces yet
18:15:15FromGitter<ephja> yep
18:16:20*nsf quit (Quit: WeeChat 1.9)
18:22:52FromGitter<ephja> https://gist.github.com/ephja/42adacd0a3e216bc0462bd1a568e7ea8 that's all I have so far
18:24:18dom96ahh, off-by-one errors, you are my nemeses.
18:27:05FromGitter<ephja> I dunno if I need to use shallow semantics. I will look into it
18:30:17dom96Hrm, not quite what was supposed to be rendered: https://i.imgur.com/MkD9P27.png
18:30:36Yardanicolol
18:31:55*chemist69 joined #nim
18:38:02*def-pri-pub1 quit (Ping timeout: 260 seconds)
18:39:52*aziz joined #nim
18:39:56*aziz quit (Client Quit)
18:40:28FromGitter<mratsim> Is that the new Nim logo?
18:41:45Yardanicowhy this nimble logo was changed? :DDDD https://github.com/yglukhov/nimble-tag/blob/b8880187ae5033bb8c5b5a27d81caac3248b927a/nimble.png
18:41:59Yardanicohttps://github.com/yglukhov/nimble-tag/commit/b8880187ae5033bb8c5b5a27d81caac3248b927a#diff-f68df6aa907c343f457e50715d774fc2
18:42:12dom96because we don't live in the year 2005 any more.
18:43:09FromGitter<ephja> I would tweak the gradients a little, but maybe it looks better at smaller sizes ;)
18:43:27FromGitter<ephja> the ones in the readme look great IMO
18:43:39dom96they need to be smaller too IMO
18:43:44dom96and incorporate the Nimble logo
18:43:56dom96My SO actually created the current ones :)
18:44:06Yardanicoephja yeah
18:44:18Yardanicobut I didn't put them on my repos before :D only put one today
18:47:56FromGitter<ephja> hmm, let's see if the relevant line in one of my modules appears somewhere in this future error stack trace :D
18:48:29Yardanicowell because sometimes an error in some line can be caused by incorrect code in some line before
18:48:46Yardanicoand there's no way for compiler to check the "actual" wrong line
18:49:06YardanicoIt's not easy to debug recursive parser too :P
18:49:35FromGitter<ephja> I see "send" somewhere in there, and that's specific enough
18:53:35*def-pri-pub joined #nim
18:59:36*def-pri-pub quit (Ping timeout: 252 seconds)
19:01:28FromGitter<adamrezich> is the best way to "empty a seq" to just set it to []?
19:03:09*def-pri-pub joined #nim
19:06:41FromGitter<ephja> that'll do, but set the length to 0 instead if you need more efficient buffer handling setLen (https://nim-lang.org/docs/system.html#setLen,seq[T],Natural)
19:08:01FromGitter<ephja> speaking of which, we need `to string` routines etc that take output buffers :D
19:13:48*def-pri-pub quit (Ping timeout: 240 seconds)
19:15:17*chemist69 quit (Ping timeout: 255 seconds)
19:15:30*Arrrr joined #nim
19:15:30*Arrrr quit (Changing host)
19:15:30*Arrrr joined #nim
19:18:31*PMunch joined #nim
19:19:52FromGitter<zacharycarter> @jipok: ➜ zengine_wasm git:(wasm) ✗ llvm-nm examples/src/zengine_examples/00_Minimal/nimcache/stdlib_system.o | grep jmp ⏎ ⏎ ``` U _longjmp ⏎ U _setjmp``` [https://gitter.im/nim-lang/Nim?at=59c8055832fc8b7e403694b4]
19:20:10FromGitter<zacharycarter> so confused as to why I'm still getting those warnings
19:20:12FromGitter<zacharycarter> ugh
19:20:19FromGitter<zacharycarter> screw emscripten / wasm!
19:21:01*solitudesf joined #nim
19:32:18*adeohluwa joined #nim
19:33:56*chemist69 joined #nim
19:35:31adeohluwaZachary: u back
19:38:57*nsf joined #nim
19:40:40adeohluwaZachary: u re-ran the script?
19:43:29FromGitter<Jipok> @zacharycarter why _? ⏎ ⏎ ```$ llvm-nm stdlib_system.o | grep jmp ⏎ U longjmp ⏎ U setjmp ⏎ ``` [https://gitter.im/nim-lang/Nim?at=59c80ae1177fb9fe7efa4232]
19:47:59*rabbi joined #nim
19:49:58FromGitter<Jipok> try open stdlib_system.c and search setjmp
19:51:31FromGitter<Jipok> it should be something like: ⏎ ⏎ ```T3_ = setjmp(registers);``` ⏎ ⏎ if not, then maybe you should try to fix it manually [https://gitter.im/nim-lang/Nim?at=59c80cc3cfeed2eb654676f9]
19:57:32*ofelas quit (Quit: shutdown -h now)
20:06:15FromGitter<mratsim> Btw, any good resources that explains the tradeoffs/applications between each concurrency and parallelism techniques? I’m getting lost between thread pool, actors, work stealing, fork/join, lock-free whatever
20:07:41*miran quit (Ping timeout: 240 seconds)
20:08:03*Jesin joined #nim
20:13:18FromGitter<Jipok> @zacharycarter, I was able to reproduce your problem, and found its solution. Still, it was in nim ⏎ Just compile with -d:nimStdSetjmp and it will works. ⏎ https://github.com/nim-lang/Nim/blob/f8b82869594e8009ddd7262b281eb598a2e13ab6/lib/system/ansi_c.nim#L75
20:26:04*dataPulverizer joined #nim
20:26:33*Jesin quit (Quit: Leaving)
20:32:18*Jovan joined #nim
20:34:55dom96c2nim is so awesome
20:35:31Yardanicodom96, yes! did you do something cool with it ?:)
20:35:47dom96not really, just translating some C++ header files.
20:37:01*rabbi quit (Ping timeout: 240 seconds)
20:38:01FromGitter<zacharycarter> @Jipok you are awesome~
20:38:03FromGitter<zacharycarter> !\
20:38:18FromGitter<mratsim> Wow, ponylang reddit is a one-man show: https://www.reddit.com/r/ponylang/
20:38:52FromGitter<zacharycarter> @Jipok how'd you figure that out
20:39:07dom96I wish Sean would help develop Nim.
20:39:18dom96Pretty sure Nim provides similar concurrency guarantees.
20:39:31FromGitter<zacharycarter> reference capabilities are interesting
20:39:33FromGitter<zacharycarter> in pony
20:39:52Yardanicowell it seems to have a lot less PRs and development in general
20:40:03Yardanicoonly 3 PRs were merged for example, for 0.19.2 release
20:40:07Yardanico*4
20:40:19Yardanicoand it's not self-hosted :)
20:41:04Yardanicowow
20:41:04Yardanicohttps://www.ponylang.org/media/papers/fast-cheap.pdf
20:41:14dom96I'm pretty sure the main dev of Pony has stopped working on it.
20:42:08FromGitter<mratsim> Yes, his company bankrupted because of J.P. Morgan apparently
20:42:25FromGitter<mratsim> https://www.linkedin.com/pulse/end-causality-constantine-goulimis
20:43:21FromGitter<mratsim> Interesting piece about the new dev (it’s quora so …): https://www.quora.com/What-is-your-experience-with-using-Pony-programming-language
20:43:43FromGitter<mratsim> > The guys who took over from Sylvan and Causality are just not up to the job. ⏎ ⏎ > There is no more brilliance in the whole project, and the first thing they did when they took over the project, was to post a Code of Conduct, a SJW bullshit document specifying all ways you have to comply with their idiotic leftist ideology before you can be part of their little group. ⏎ ⏎ > This is literally one of those
20:43:43FromGitter... times in tech development, where the worse solution won, because of certain market conditions. The other time was when Sun, with billions of $$$ from dot-com bubble, marketed Java as the solution for all kinds of problems it was never designed for. [https://gitter.im/nim-lang/Nim?at=59c818ff7b7d98d30d30b215]
20:45:14FromGitter<ephja> -.-
20:45:47dom96:o
20:48:47FromGitter<Varriount> Anyone want to give me some advice on this: https://github.com/Varriount/NimLime/issues/88 ?
20:49:24dom96That is very interesting. Nice find mratsim.
20:49:30FromGitter<Varriount> Quite frankly, I don't have time to support NimLime, and even if I did, I would be dropping support for Sublime Text 2.
20:49:50FromGitter<mratsim> Are people using Sublime v2?
20:50:01Yardanicono, this issue is about st 3 it seems
20:50:11Araqoh thanks for reminding me, I wanted to give NimLine a shot since forever
20:50:30FromGitter<Varriount> Araq: Everything should work except for Nimsuggest support.
20:50:37Araqsince VS Code gets worse instead of better I'm looking for a new editor
20:50:37FromGitter<Jipok> @mratsim I wanna use v3, but it not works for me
20:51:04FromGitter<krux02> how is vs code getting worse?
20:51:07FromGitter<Varriount> @Jipok It's a pain to support both versions. The plugin loading behavior is subtly different.
20:51:21FromGitter<Jipok> drop v2
20:51:52FromGitter<krux02> Araq: is the plugin getting worse, or is VS code itself becoming worse?
20:51:52PMunchAraq, join the dark side and go with Vim :)
20:52:15FromGitter<krux02> (or emacs :D
20:52:16Yardanicokrux02: vs code itself IIRC
20:52:22PMunchOr kakoune, which seems pretty interesting
20:52:26YardanicoI use VS code too
20:52:31Yardanicobecause nim plugin seems to be the best here
20:52:37Yardanicowhat are GUI alternatives to VS Code for nim?
20:52:44PMunchgvim?
20:52:50PMunch:P
20:52:53FromGitter<Varriount> NimLime, although I don't have time to support or enhance it.
20:53:05PMunchAporia is an alternative I guess
20:53:14Yardanicowell it's dead sadly :/
20:53:15FromGitter<Varriount> Personally, all I ever need for Nim development is the autochecker
20:53:15dataPulverizerHow do you print out runtime type information on Nim? I have looked at the typeinfo library but am none the wiser.
20:53:22PMunchAnd Atom, but not sure how the plugin there is doing
20:53:29FromGitter<krux02> aporia is really just to quickly test out nim, that's it
20:53:33dom96dataPulverizer: what info do you want?
20:53:35YardanicoPMunch, atom isn't much better than vs code :P
20:53:40Yardanicosince they both based on electron
20:53:46dataPulverizerJust the runtime type
20:53:56PMunchYeah, electron is pretty crap..
20:54:41YardanicodataPulverizer, I don't think you would be able to get it. and I think there's runtime type only for inherited objects
20:54:46Araqkrux02: project management is not acceptable for me anymore and now they screwed up auto indentation
20:55:43Yardanicolet's find some text editor/small ide and write nim plugin for it :P
20:55:44PMunchdataPulverizer, what are you trying to do? It seems like you are trying to do something "dynamic language"-esque in Nim
20:55:59FromGitter<krux02> well I use emacs, and there project management is pretty OK thanks to projectile
20:56:03PMunchYardanico, or create a new from one scratch?
20:56:21dataPulverizerYardanico: I am doing polymorphism, and would like to print out the runtime type. For instance var a: Class4 = Class5(...) I would like to be able to print the runtime type for a as `Class5`
20:56:42PMunchHmm, maybe spacemacs?
20:57:00dataPulverizerThis is when Class5 is a child of Class4
20:57:09FromGitter<krux02> fuzzy search project, fuzzy search file in project, fuzzy search threugh lines of files in project
20:57:17FromGitter<krux02> very effective
20:57:34FromGitter<Jipok> @Varriount ⏎ I can provide any information for you and try anything to make NimLine work. I hate modern applications on the electron and hate modern web. But last I can`t avoid. My 4 gb of memory in the laptop is not enough for the browser and vscode.
20:58:07FromGitter<krux02> but I still don't think that emacs key bindings are at all better than anything. Honestly they are horrible by default
20:58:07PMunchdataPulverizer, isn't that just .type?
20:58:09Yardanicohmm, I want to try sumblime text 3 with nimlime too :)
20:58:14dom96dataPulverizer: This seems related https://github.com/nim-lang/Nim/issues/4193
20:58:27dom96Maybe you can look into the option that Araq mentioned there
20:58:27FromGitter<krux02> almost all of them, I have no idea how people could ever think that they are a good idea
20:58:35FromGitter<Jipok> In the last week I even thought about switching to emacs. Just because there is nowhere else a good support for nim.
20:58:55dataPulverizerPMunch No, .type will give you Class4
20:59:01PMunchI'm starting to use Vim more and more exclusively
20:59:18PMunchdataPulverizer, go with what dom96 suggested then
20:59:21FromGitter<krux02> the emacs plugin works, kind of, but it lacks the true support that I would really like
20:59:57PMunchThe Vim plugin is a bit shaky as well. But TBH I could probably write Nim in a plain text editor now
20:59:57FromGitter<krux02> for example in the Nim project itself, correct highlighting for files, nope, the inclusion of other files simply doesn't allow it
21:00:08PMunchAlthough syntax highlighting is always good :)
21:00:30YardanicoPMunch, yeah, same for me
21:00:57FromGitter<krux02> I hacked the nim-mode, so that it does it fact work for me. But the default nim-mode doesn't support it
21:01:01FromGitter<ephja> @jipok vscode?
21:01:03*yglukhov joined #nim
21:01:26PMunchephja, vscode is also Electron
21:01:30FromGitter<krux02> but I am not switching to anything else at the moment
21:01:31FromGitter<mratsim> I just need the rainbow for indent and a trailing space highlighter to write Nim
21:01:57PMunchmratsim, the rainbow?
21:02:18FromGitter<Jipok> @zacharycarter ⏎ As far as you had a *longjmp, I realized that it was coming from the source code. I was just looking where exactly it came from. ⏎ 1) https://gist.github.com/Jipok/8a18995932f627a6b7cafcbc160f4250#file-stdlib*system-c-L3052 ⏎ This was generated from: ⏎ 2) https://github.com/nim-lang/Nim/blob/f8b82869594e8009ddd7262b281eb598a2e13ab6/lib/system/excpt.nim#L260 ...
21:02:18FromGitter... [https://gitter.im/nim-lang/Nim?at=59c81d5a614889d4753511d5]
21:02:19YardanicoVarriount: I'll try NimLime now too :)
21:02:24FromGitter<krux02> @mratsim emacs has a setting to auto delete trailing whitespace
21:02:55FromGitter<zacharycarter> @Jipok ah okay
21:03:00FromGitter<zacharycarter> thanks for that explanation
21:03:00*Snircle joined #nim
21:03:02PMunchkakoune is pretty interesting
21:03:24FromGitter<krux02> PMunch has kakoune any support for Nim?
21:03:32PMunchDon't think so, unfortunately
21:03:39FromGitter<ephja> PMunch: 路
21:03:49FromGitter<mratsim> (https://files.gitter.im/nim-lang/Nim/hlTb/2017-09-24_23-03-18.png)
21:03:56FromGitter<mratsim> @Pmunch: rainbow
21:03:58FromGitter<krux02> well yea then don't mention it.
21:04:02dataPulverizerPMunch So I compiled with "-d:nimTypeNames" flag and used .type.name to print the type and still getting Class4
21:04:04PMunchephja, what kind of emoticon is that :S
21:04:35PMunchmratsim, ooh that's pretty interesting
21:04:43FromGitter<ephja> shrug
21:04:49PMunchI've only got lines like in e.g. Sublime
21:04:56PMunchephja, aah
21:05:24PMunchkrux02, I was hoping maybe someone tried it out, liked it, and made a plugin for it :)
21:07:13FromGitter<krux02> I heared about it, I like the idea, but I don't belive it can be successful
21:07:22FromGitter<Jipok> There is also an interesting editor - textadept. But nim plugin didn't works for me. ⏎ https://github.com/xomachine/textadept-nim
21:08:23PMunchkrux02, yeah it's a tough crowd to attract
21:08:35FromGitter<krux02> We are still in a world where tools are heavily integrated in text editors/IDEs. As long as this integration doesn't become a lot more decoupled, new text editors will have a lot of problems
21:08:36PMunchVery workflow oriented
21:08:42FromGitter<ephja> I dunno if Electron has a negative effect on me as a user
21:08:56PMunchWell it definitely hurts your battery
21:08:56dom96Wow, so my mistake was `face[(j+1) mod 3]` vs. `face[(j+1)] mod 3`
21:09:18FromGitter<Varriount> @Jipok What's wrong with Sublime Text's builtin suggestion?
21:09:38Yardanicois there a way in Sublime Text 3 to save file on every change with no delay?
21:09:54YardanicoSo nim check would work nicely :)
21:10:28FromGitter<Jipok> @Varriount builtin suggestion?
21:10:32FromGitter<krux02> well in emacs there is a setting to save on focus loss
21:10:42FromGitter<krux02> almost as good as save at any time
21:11:16FromGitter<ephja> PMunch: are any particular features demanding?
21:11:16PMunchHuh, textadept looks interesting
21:11:22FromGitter<Varriount> Jipok: Yeah. When you type Sublime Text shows an autocompletion based on words in the current file.
21:11:31FromGitter<krux02> wait I am not sure if it's a setting, but it made it do so in my init.el, could be a hook
21:12:04PMunchephja, not anything in particular I think. I just noticed that my battery life was much greater with Vim over Atom
21:12:09FromGitter<Jipok> @Varriount, "in the current file." - useless
21:12:11PMunchOr Sublime for that matter
21:12:41FromGitter<ephja> I thought it didn't use Atom
21:12:53*Arrrr quit (Read error: Connection reset by peer)
21:13:27PMunchephja, VS Code and Atom uses Electron
21:13:39PMunchVS Code doesn't use Atom
21:14:24YardanicoVarriount: how to turn nimsuggest on?
21:14:46FromGitter<Varriount> Yardanico: For NimLime?
21:14:49Yardanicoyeah
21:16:02FromGitter<ephja> the CPU usage is very low right now for me anyway (on Windows)
21:16:05FromGitter<Varriount> Yardanico: Just be aware that it's likely not going to work.
21:16:15Yardanicowell I want to try anyway
21:16:23FromGitter<Varriount> @Jipok There's an extension that makes it work over the set of opened files too.
21:17:19FromGitter<Jipok> @Varriount, I need to know what arguments pass the function. To do this either need to "Goto Definition" or "Quick info" (as in vscode)
21:17:56FromGitter<Varriount> @Yardanico You'll need to add/modify the "imsuggest.executable" setting to point to your nimsuggest binary.
21:18:01FromGitter<Varriount> *nimsuggest
21:18:39FromGitter<Jipok> @Varriount: Do you propose to keep all imported modules open?
21:18:42FromGitter<Varriount> The thing is, I developed the NimLime code to work with a custom version of nimsuggest, as the standard version didn't support a performant model
21:18:52FromGitter<Jipok> +1
21:19:35FromGitter<Jipok> nimsuggest eats a lot of memory.
21:19:46FromGitter<Varriount> Look, if anyone wants to develop Nimsuggest support for Nimlime, I'm more than willing to give advice and accept pull requests. I just don't have the time to develop anything.
21:20:03FromGitter<zacharycarter> grrrr emscripten is driving me nuts now all of a sudden I'm getting errors like this again -
21:20:13FromGitter<zacharycarter> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59c8218dbac826f054f4c568]
21:20:21FromGitter<zacharycarter> wtffffffff
21:21:15*Yardanico_ joined #nim
21:21:57FromGitter<ephja> @Jipok https://gist.github.com/ephja/70375009b9b6de00e3e115e3d7682ec2
21:22:22FromGitter<Jipok> @Varriount ⏎ There are no ideas how to fix NimLine? Goto definition is very important.
21:23:02Yardanico_ephja: you can just find where this leaks are located :)
21:23:04*yglukhov quit (Remote host closed the connection)
21:23:42FromGitter<ephja> oh ok
21:23:44*Yardanico quit (Ping timeout: 240 seconds)
21:23:50FromGitter<zacharycarter> okay weird - apparently -d:useRealtimeGC causes that error
21:23:53*ipjk joined #nim
21:24:10FromGitter<Jipok> @ephja Do not you think this approach is wrong?
21:24:16FromGitter<Varriount> Jipok: I have ideas, just not *time*
21:25:15*yglukhov joined #nim
21:25:44FromGitter<Jipok> @Varriount Why you need "Setup nimsuggest" command?
21:26:07FromGitter<Varriount> Because the code was meant to handle a custom version of Nimsuggest.
21:26:19FromGitter<Jipok> By the way, it does not work for me
21:26:25FromGitter<Varriount> Yes, I know!
21:26:33FromGitter<Varriount> None of it works!
21:26:41FromGitter<ephja> @Jipok lol. I dunno how to fix it, so this is the next best approach I suppose
21:26:54FromGitter<ephja> :D
21:27:47FromGitter<Varriount> The standard version of Nimsuggest has a badly designed "one command per connection" model where you have to initiate a new TCP connection for every new query you want to pass to Nimsuggest.
21:27:57FromGitter<ephja> I ain't a core dev btw ;)
21:28:15FromGitter<Varriount> And the standard input mode is meant for interactive input, as it presents things like prompts
21:28:55FromGitter<Varriount> I *had* a custom version of Nimsuggest that added on new features, but it hasn't been maintained, because I haven't had the time nor inclination to maintain it!
21:29:09Yardanico_maybe you should've made a PR ? :)
21:29:21*yglukhov quit (Ping timeout: 240 seconds)
21:29:33FromGitter<Jipok> Perhaps it's worth using something like this instead of nimsuggest? ⏎ https://bitbucket.org/nimcontrib/ntags/src/a1c62c38e539877c105fbe4e08d06b76232f8017/ntags.nim?at=master&fileviewer=file-view-default
21:30:06PMunchYeah I've added some stuff to the Vim plugin which I should probably PR as well..
21:30:57FromGitter<Varriount> Yardanico_: I did make a PR. It was never accepted.
21:31:00Yardanico_oh
21:32:28*yglukhov joined #nim
21:33:57*onionhammer1 joined #nim
21:34:35*Sentreen quit (Ping timeout: 240 seconds)
21:35:25FromGitter<Jipok> what disadvantages does ntags have in front of nimsuggest?
21:35:41*onionhammer quit (Ping timeout: 240 seconds)
21:35:46Yardanico_I think many
21:36:09*PMunch quit (Quit: leaving)
21:36:36Yardanico_Ctags is a programming tool that generates an index (or tag) file of names found in source and header files of various programming languages.
21:36:40Yardanico_so it's just an index
21:36:58FromGitter<Jipok> for use in a text editor? To add support for Goto definition?
21:37:10Yardanico_https://en.wikipedia.org/wiki/Ctags
21:40:27FromGitter<Jipok> Да знаю про ctags. Я имел в виду использовать часть кода, ответствуенную за парсинг. Держать результат в памяти, а не сохранять в файл. Там достаточно информации для реализации Goto Definition. При этом памяти оно жрать должно не так много. ⏎ К
21:40:27FromGitter... тому же можно будет подготовить такие фаилы для все стандартной библиотеки, чтобы не обрабатывать его при каждом запуске.
21:41:19dom96Offtopic: You guys have any good headphone recommendations?
21:41:38FromGitter<Varriount> I just go to the store and buy the cheapest pair they have.
21:42:15FromGitter<krux02> well I spend 50€ on a Sennheiser Headphone
21:42:24FromGitter<krux02> not sure if they are the best
21:42:54FromGitter<krux02> because I am not an expert, they just work and I don't feel like I got the cheapest ones
21:42:55dom96I've done that too. But now I want my ears not to hurt after 10 minutes of wearing the head phones.
21:43:05*Jesin joined #nim
21:43:24FromGitter<krux02> after wearing them the entire day, my earst do hurt
21:44:30FromGitter<Jipok> I bought headphones for $ 10 at the station. Surprisingly excellent work for 1.5 years.
21:46:40FromGitter<Varriount> dom96: If they are in-ear headphones, you could try using a smaller earbud size.
21:46:50dom96They're not.
21:47:07dom96But they are pretty crappy and cheap.
21:47:55dom96I've had another pair before which was Sennheiser and my hair kept tangling into the place where the headphones can be extended.
21:47:58*Sentreen joined #nim
21:49:50FromGitter<Varriount> Ouch
21:50:09ipjkI recommend audio-technicas headphones
21:53:14*solitudesf quit (Ping timeout: 240 seconds)
22:00:14*dataPulverizer quit (Ping timeout: 260 seconds)
22:04:49*endragor_ quit (Remote host closed the connection)
22:05:25*endragor joined #nim
22:06:53*libman quit (Quit: Connection closed for inactivity)
22:09:48*endragor quit (Ping timeout: 240 seconds)
22:12:02*voiceftp left #nim ("Leaving")
22:12:27*voiceftp joined #nim
22:15:10*claudiuinberlin quit (Quit: Textual IRC Client: www.textualapp.com)
22:17:36*yglukhov quit (Remote host closed the connection)
22:18:02subsetparkV-modas have done me quite well for about three years
22:18:42*libman joined #nim
22:20:06FromGitter<krux02> https://media.githubusercontent.com/media/krux02/opengl-sandbox/master/examples/screenshots/octree_anim.gif
22:21:37Yardanico_woah
22:22:11dom96#woahdude
22:22:12FromGitter<krux02> it looks so much nicer, when it is animated
22:22:42FromGitter<krux02> it is perfectly looping :P
22:23:15FromGitter<krux02> it's an octree that is rebuilt per frame
22:24:19FromGitter<krux02> the yellow lines are the visualized resuld of a neighborhood query
22:25:49*relax joined #nim
22:27:47FromGitter<zacharycarter> trippy
22:33:53FromGitter<krux02> yea visualizing data can be pretty trippy, but I think most engines have something like this implemented and hidden
22:34:26FromGitter<krux02> so nothing special here, but still it's nice to see something to work
22:37:49*nsf quit (Quit: WeeChat 1.9)
22:39:08FromGitter<zacharycarter> grrr can't get my animations working in webgl
22:41:56adeohluwaYardanico: I use sublime text 3
22:42:12adeohluwawhat I do is I set it to save on focus change
22:42:56*Yardanico_ quit (Remote host closed the connection)
22:42:59adeohluwathe autosave asap plugin misbehaves so it doesn't work on just current file it works on all open files
22:46:42FromGitter<mratsim> I suddenly get “over or underflow” on devel: on “*=“ operation: https://travis-ci.org/mratsim/Arraymancer/jobs/279320401
22:47:05FromGitter<mratsim> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=59c835e9bac826f054f50cca]
22:47:38*Yardanico joined #nim
22:47:55FromGitter<mratsim> The same build on stable has no issue.
22:49:25*def-pri-pub joined #nim
22:49:45*enthus1ast- joined #nim
22:51:00FromGitter<mratsim> I checked previous commits, it started to fail on devel less than 2 hours ago
22:52:00*Yardanico quit (Remote host closed the connection)
22:52:55FromGitter<mratsim> and now last commit is working fine on both stable and level, what the hell >_>
23:03:28*Nobabs27 joined #nim
23:11:17FromGitter<Varriount> @mratsim Undefined behavior maybe? What changed in the breaking and fixing commits?
23:20:00Calinoudom96: I have the Sennheiser Game Zero
23:20:15Calinounot cheap, it's a mostly-closed headset (analog). It's targeted at gaming but is pretty good for most things
23:20:25Calinou(you want to use an equalizer to increase the amount of basses, though. Else, it's quite bad)
23:20:34Calinou(on Windows, Equalizer APO does this well, on Linux, use PulseAudio with a LADSPA plugin)
23:20:57Calinouthe microphone works well for me on Linux, but on Windows it's impossible to use because it's always too quiet (I don't know why)
23:21:05Calinou(maybe it's an issue on my side)
23:21:21Calinouit's pretty comfortable to wear, unlike the previous one I had (Steelseries Siberia V2)
23:27:05*def-pri-pub quit (Quit: Leaving.)
23:29:10FromGitter<mratsim> @Varriount, nothing, there was no commit on nim devel for the past 8 hours
23:31:39FromGitter<mratsim> ah, I have an idea. it’s the newSeqOfCap that don’t do initialisation on devel
23:31:47FromGitter<mratsim> I use them since 3 hours ago
23:35:35*arnetheduck quit (Ping timeout: 240 seconds)
23:36:19*sleepyqt quit (Quit: WeeChat 1.9)
23:46:01*Ven`` quit (Ping timeout: 240 seconds)
23:53:35FromGitter<ephja> almost done with the lzma bindings
23:53:40*enthus1ast- quit (Read error: No route to host)
23:54:44FromGitter<ephja> if only c2nim had considered the comment below a symbol to belong to it though :p
23:56:22FromGitter<ephja> that should be fixed eventually, and then all we need is a doxygen syntax parser
23:59:38*arnetheduck joined #nim