<< 17-02-2018 >>

00:12:17radagast_04Silly question, but how can I enque a string to a stringstream? For example var ss = newStringStream("abc"); ss.write(" def") etc
00:24:01*gokr quit (Ping timeout: 248 seconds)
00:29:19*d10n-work quit (Quit: Connection closed for inactivity)
00:33:20*enthus1ast joined #nim
00:35:10*enthus1a1t quit (Ping timeout: 240 seconds)
00:45:19FromGitter<Quelklef> https://nim-lang.org/docs/streams.html#write,Stream,T ?
00:49:59*SenasOzys_ joined #nim
00:52:27*SenasOzys quit (Ping timeout: 240 seconds)
00:53:43FromGitter<zacharycarter> o/
00:56:17*qwertfisch is now known as qwertfisch-san
01:03:52FromGitter<zacharycarter> @mratsim I participated in my company's hackathon yesterday / today and did a ML project - didn't win any awards though :/ I swear the most autistic individual that presented today won the largest prize, and then another team that decided to do a ML project after I posted mine, won the award for the category I participated in. Yes I'm bitter. Stayed up until ~2:30AM last night working on the stupid thing.
01:04:30FromGitter<zacharycarter> They also didn't use any real company data, and re-trained an already trained model :/
01:05:24FromGitter<Quelklef> "most autistic" let's not
01:06:26FromGitter<zacharycarter> well my statement infers others participating were also autistic, so it's more of a measure than an insult ;)
01:06:42FromGitter<Quelklef> mm
01:08:01FromGitter<zacharycarter> also I don't really correlate autism with negativity, it's a fact of life some people have to deal with - but it does correspond to certain social traits, so I think it's an apt descriptor based on the presenter that I was describing
01:09:44FromGitter<zacharycarter> he spent four plus minutes describing how his project related to mario kart, and somehow still won the contest
01:09:49FromGitter<zacharycarter> props to him I guess
01:11:18FromGitter<Quelklef> Obviously, I don't know if you meant autistic as an insult or not. But the fact that you're salty that "the most autistic" individual one speaks enough, regardless of which way you meant it
01:14:29FromGitter<zacharycarter> I'm not salty they won - as I just said, his ability to talk about mario kart for most of his presentation and win, deserves credit. I'm salty I didn't win, and I stayed up late working on it. The autistic comment was meant to reinforce the idea that someone who totally lacks social skills won the award - that's all.
01:15:28FromGitter<zacharycarter> I'm sorry if I offended you or anyone else with the autistic comment - I didn't mean it to come across that way.
01:19:48FromGitter<Quelklef> It's okay. Re-reading your first statement, I had just assumed it was an insult because it's used that way so much now. Thanks for clarifyin
01:20:02FromGitter<zetashift> Not use your company data and just retrain a model? How could they still win
01:22:19FromGitter<zacharycarter> good question
01:22:37FromGitter<zacharycarter> I took five million interaction records between customers and item listings and trained a deep neural network to make item recommendations
01:23:10FromGitter<zacharycarter> they took a pre-trained google convolution neural network and re-trained it to assign one of two tags to an image
01:23:27FromGitter<zacharycarter> but I guess because they used pictures, people liked their idea better? I don't know
01:25:46FromGitter<zetashift> So it was more of a presentation challenge than a hackathon
01:27:21FromGitter<zacharycarter> it seemed like it
01:30:10FromGitter<zacharycarter> I had a jupyter notebook and a docker image / docker-compose file for running the project published to our VCS. I was compiling code and presenting results during the presentation and was enriching my results with data from our internal APIs (showing pictures of cars, presenting their year / make / model / predicted price, etc...) ⏎ ⏎ They had a powerpoint that had a bunch of webster definitions about neural
01:30:10FromGitter... networks and machine learning, and then they pulled up pictures on their desktop, and then ran a shell script that spit out two percentages.
01:30:40FromGitter<zetashift> corporationlyfe
01:30:42FromGitter<zacharycarter> Of course anyone can just log in and vote, without any kind of technical / business merit, so I guess it equates to a popularity contest or something. I don't know.
01:30:44FromGitter<zacharycarter> forreal
01:32:18*SenasOzys_ quit (Ping timeout: 256 seconds)
01:33:41*SenasOzys_ joined #nim
01:36:47*j_rod_s quit (Ping timeout: 260 seconds)
01:39:20FromGitter<zacharycarter> I get stuck in this rut between caring way too much and caring way too little about my job. I'm starting to lean towards the latter these days, and for the past few months I've been entrenched in the former. I get relied on way too much these days for everything, and it's so hard to care about enterprise IT work.
01:40:08FromGitter<zacharycarter> I need to spend more time writing Nim :)
01:55:49*icebattle quit (Quit: leaving)
02:23:09*j_rod_s joined #nim
02:28:57*rinzai quit (Ping timeout: 240 seconds)
02:31:02*chemist69 quit (Ping timeout: 260 seconds)
02:35:23FromGitter<honewatson> Popularity of software and quality of software are often unrelated.
02:45:18*chemist69 joined #nim
03:07:20*rinzai joined #nim
03:12:20*rinzai quit (Ping timeout: 276 seconds)
03:16:01*vivus quit (Quit: Leaving)
03:18:23*rinzai joined #nim
03:23:08*rinzai quit (Ping timeout: 268 seconds)
03:26:53*SenasOzys_ quit (Ping timeout: 256 seconds)
04:02:14*rinzai joined #nim
04:06:35*rinzai quit (Ping timeout: 240 seconds)
04:07:46*j_rod_s quit (Read error: Connection reset by peer)
04:16:39*endragor joined #nim
04:36:29*arecaceae quit (Remote host closed the connection)
04:36:56*arecaceae joined #nim
04:42:19*ftsf joined #nim
04:55:56*rinzai joined #nim
05:00:16*rinzai quit (Ping timeout: 256 seconds)
05:05:29*vlad1777d quit (Ping timeout: 256 seconds)
05:06:57*dddddd quit (Remote host closed the connection)
05:29:24*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
05:45:38*radagast_04 quit (Ping timeout: 252 seconds)
05:54:03*endragor quit (Remote host closed the connection)
05:54:16*endragor joined #nim
06:19:17*rinzai joined #nim
06:23:27*rinzai quit (Ping timeout: 240 seconds)
06:30:18*r3d9u11 joined #nim
06:46:17*miran joined #nim
07:03:17*solitudesf joined #nim
07:11:12*nsf joined #nim
07:24:14*skrylar_ quit (Remote host closed the connection)
07:43:21*xkapastel quit (Quit: Connection closed for inactivity)
07:51:24FromGitter<Varriount> @zacharycarter :(
08:06:42*rinzai joined #nim
08:11:44*rinzai quit (Ping timeout: 268 seconds)
08:40:38*rokups joined #nim
08:57:40FromGitter<mratsim> @zacharycarter Did you use Nim?
09:00:29*rinzai joined #nim
09:02:44*SenasOzys joined #nim
09:05:17*rinzai quit (Ping timeout: 276 seconds)
09:12:15*Yardanico_ joined #nim
09:28:20*Yardanico_ quit (Remote host closed the connection)
09:28:43*Yardanico_ joined #nim
09:37:52*Trustable joined #nim
09:43:40miran@mratsim - is there (an easy) way to train NN in nim?
09:44:41FromGitter<mratsim> Arraymancer is not there yet, I couldn’t work on it for the last 2 months, but you can train CNN on CPU: https://github.com/mratsim/Arraymancer/blob/master/examples/ex02_handwritten_digits_recognition.nim
09:45:33FromGitter<mratsim> The low-level tools for CNN on Cuda/CuDNN also exist but there is no high level wrapper: https://github.com/mratsim/Arraymancer/blob/master/src/nn_primitives/nnp_conv2d_cudnn.nim
09:45:34miranspeaking of arraymancer - on your github.io page, under installation - you have one ` too much when trying to link choosenim
09:46:16FromGitter<mratsim> I think someone did a PR already but I didn’t regen :P
09:47:47*r3d9u11 quit (Remote host closed the connection)
09:48:55FromGitter<mratsim> I didn’t start on RNN at all, coding those on CPU is painful and Cudnn low-level API is sometimes an exercise in insanity. ⏎ Just look into those function parameters, most of them opaque types: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5a87fa872dfcfffd2b2a76cb]
09:54:16*rinzai joined #nim
09:58:27*rinzai quit (Ping timeout: 240 seconds)
10:02:14*solitudesf quit (Quit: solitudesf)
10:22:29*radagast_04 joined #nim
10:29:57*radagast_04 quit (Ping timeout: 240 seconds)
10:30:42*radagast_04 joined #nim
10:39:57FromGitter<alehander42> any is not a keyword or anything, right?
10:40:04FromGitter<alehander42> also, how mature is opt support?
10:40:54FromGitter<alehander42> I want to rewrite some stuff using in a bit more typesafe way than if not x.isNil
10:41:39FromGitter<alehander42> I can't find docs for it tho, I remember Araq did something with it
10:48:02*rinzai joined #nim
10:48:43*vlad1777d joined #nim
10:52:17*rinzai quit (Ping timeout: 256 seconds)
11:15:09*Yardanico__ joined #nim
11:16:22*Yardanico_ quit (Read error: Connection reset by peer)
11:34:27*SenasOzys quit (Ping timeout: 240 seconds)
11:40:46*BlaXpirit joined #nim
11:41:17*vqrs quit (Ping timeout: 256 seconds)
11:41:17*oprypin quit (Remote host closed the connection)
11:41:17*Calinou quit (Remote host closed the connection)
11:41:19*BlaXpirit is now known as oprypin
11:41:36*Calinou joined #nim
11:41:41*rinzai joined #nim
11:41:52*vqrs joined #nim
11:42:33*SenasOzys joined #nim
11:42:38miranis there some explanation when one should (not) use methods instead of procs?
11:42:57mirani.e. what are the main differences between them?
11:45:54federico3miran: inheritance
11:46:05*rinzai quit (Ping timeout: 240 seconds)
11:49:59miranfederico3: so methods are something like base methods which can/should be overridden?
11:51:02federico3miran: see https://nim-lang.org/docs/manual.html#multi-methods
11:51:19miran...and used when you have types where "A = ref object of B"?
11:52:47mirani don't understand what this means: "Procedures always use static dispatch. Multi-methods use dynamic dispatch."
11:55:46*arecacea1 joined #nim
11:56:24federico3miran: look at the "collide" example. With procs, you cannot override the first collide(..)
11:58:37*allan0_ joined #nim
11:58:52*Lord_Nightmare2 joined #nim
11:59:24*Cthalupa- joined #nim
12:00:07*arecaceae quit (*.net *.split)
12:00:07*Cthalupa quit (*.net *.split)
12:00:07*arnetheduck quit (*.net *.split)
12:00:07*Lord_Nightmare quit (*.net *.split)
12:00:08*Tanger quit (*.net *.split)
12:00:08*mrshu quit (*.net *.split)
12:00:08*FromGitter quit (*.net *.split)
12:00:08*allan0 quit (*.net *.split)
12:00:08*joshbaptiste quit (*.net *.split)
12:00:10*Lord_Nightmare2 is now known as Lord_Nightmare
12:00:45*FromGitter joined #nim
12:02:50*gmpreussner quit (Ping timeout: 260 seconds)
12:03:25*beatmox quit (Ping timeout: 260 seconds)
12:03:44*beatmox joined #nim
12:04:34*zama quit (Ping timeout: 260 seconds)
12:05:34*gmpreussner joined #nim
12:06:33*Tanger joined #nim
12:06:36*zama joined #nim
12:06:43*joshbaptiste joined #nim
12:06:48*mrshu joined #nim
12:07:19*arnetheduck joined #nim
12:09:19*Vladar joined #nim
12:11:21miranoh! makes sense, thanks!
12:15:02*dddddd joined #nim
12:17:46*yglukhov joined #nim
12:19:56*rinzai joined #nim
12:20:09*yglukhov quit (Remote host closed the connection)
12:21:42*yglukhov joined #nim
12:32:11*r3d9u11 joined #nim
12:40:10*rinzai quit (Ping timeout: 240 seconds)
12:47:18*PMunch joined #nim
12:51:15radagast_04slicing strings returns a unique copy!
12:53:08*rinzai joined #nim
12:58:58*rinzai quit (Ping timeout: 265 seconds)
13:02:30*rinzai joined #nim
13:06:44*rinzai quit (Ping timeout: 252 seconds)
13:10:09*rinzai joined #nim
13:14:53*rinzai quit (Ping timeout: 276 seconds)
13:25:57*qwertfisch-san is now known as qwertfisch
13:28:49*xkapastel joined #nim
13:34:00FromGitter<mratsim> @alehander42 opt is not in 17.2
13:34:23FromGitter<mratsim> Any is like auto
13:48:33*rinzai joined #nim
13:50:09FromGitter<mratsim> But I don't think it's a keyword though I would avoid it
13:52:29*yglukhov quit (Remote host closed the connection)
13:53:22*rinzai quit (Ping timeout: 268 seconds)
13:58:00FromGitter<alehander42> ok, so are there plans to eventually include opt ?
13:58:44FromGitter<alehander42> btw why is casting to proc forbidden most of the time? I know it doesn't make a lot of sense for the C backend, but it's sometimes useful in the JS backend
13:59:14*couven92 joined #nim
14:03:08FromGitter<mratsim> I would also love to have opt but I think it's part of the --newruntime with the destructors (i.e. for Nim v2)
14:07:04*r3d9u11 quit (Remote host closed the connection)
14:07:23*yglukhov joined #nim
14:13:48FromGitter<alehander42> I suspect if there was a nil type, even `Opt*[T] = T | Nil` would be useful
14:19:02FromGitter<alehander42> hm, not really
14:19:12FromGitter<alehander42> anyway, I'll try to see how far can I go with not nil
14:19:15FromGitter<alehander42> annotation
14:42:17*rinzai joined #nim
14:47:01*rinzai quit (Ping timeout: 268 seconds)
14:58:10*couven92 quit (Ping timeout: 240 seconds)
15:20:26*couven92 joined #nim
15:27:09mirantuple unpacking.... you cannot unpack tuple which is inside a tuple? (e.g. let ((a, b), c) = someTuple)
15:27:52miranAraq: ^
15:37:53*Jesin joined #nim
15:58:56*natrys joined #nim
16:06:19federico3a little community map if people are interested https://github.com/nim-lang/website/pull/69
16:13:42*rokups quit (Quit: Connection closed for inactivity)
16:13:46PMunchInteresting
16:13:58PMunchBut I get a 404 when I try to access the json..
16:18:07miran404 here too
16:19:13*enthus1a1t joined #nim
16:21:14*enthus1ast quit (Ping timeout: 260 seconds)
16:29:48*rinzai joined #nim
16:31:11*yglukhov quit (Read error: Connection reset by peer)
16:31:48*yglukhov joined #nim
16:33:22federico3yep, it's not there
16:34:00federico3someone with commit right should create it - hence the screenshot
16:34:33federico3a working demo is at https://jsfiddle.net/kj6wydz7/17/ tho
16:34:33*rinzai quit (Ping timeout: 256 seconds)
16:34:38*TakeYourFreedom joined #nim
16:39:32*rinzai joined #nim
16:43:45*rinzai quit (Ping timeout: 248 seconds)
16:45:30*PMunch quit (Quit: leaving)
16:46:47*solitudesf joined #nim
16:47:00*Jesin quit (Quit: Leaving)
17:02:10*rokups joined #nim
17:07:27*miran quit (Ping timeout: 240 seconds)
17:09:05*zahary_ quit (Quit: Connection closed for inactivity)
17:14:42*endragor quit (Remote host closed the connection)
17:17:07*endragor joined #nim
17:21:35*endragor quit (Ping timeout: 240 seconds)
17:24:32*rinzai joined #nim
17:29:09*rinzai quit (Ping timeout: 264 seconds)
17:29:19*endragor joined #nim
17:32:20*Yardanico__ quit (Remote host closed the connection)
17:32:49*Yardanico__ joined #nim
17:33:57*endragor quit (Ping timeout: 263 seconds)
17:37:41*TakeYourFreedom quit (Quit: Leaving)
17:41:43*endragor joined #nim
17:46:04*rinzai joined #nim
17:47:04*endragor_ joined #nim
17:50:09*endragor quit (Ping timeout: 264 seconds)
17:50:29*rinzai quit (Ping timeout: 256 seconds)
18:06:28*gokr joined #nim
18:08:24*yglukhov quit (Read error: Connection reset by peer)
18:09:06*yglukhov joined #nim
18:11:19*r3d9u11 joined #nim
18:13:34*rinzai joined #nim
18:18:17*r3d9u11 quit (Remote host closed the connection)
18:21:35*nsf quit (Quit: WeeChat 2.0.1)
18:32:43*SenasOzys quit (Ping timeout: 268 seconds)
18:50:17*SenasOzys joined #nim
19:13:13*joeyparsons_ joined #nim
19:18:08dom96What are everyone's thoughts about osproc?
19:18:27dom96any particular tasks that you've found difficult to achieve using it?
19:45:41*endragor_ quit (Remote host closed the connection)
19:46:16*endragor joined #nim
19:46:39*gokr quit (Ping timeout: 256 seconds)
19:47:35*thomasross joined #nim
19:49:28*thomasross quit (Max SendQ exceeded)
19:49:55*thomasross joined #nim
19:50:48*endragor quit (Ping timeout: 252 seconds)
20:01:12*Yardanico__ quit (Read error: Connection reset by peer)
20:03:52shashlickdom96: one thing - execProcess doesn't return the exit code so had to make my own version that did the same thing but gave the code too
20:04:16shashlicklooks like execCmdEx does that
20:07:15*yglukhov quit (Remote host closed the connection)
20:07:23dom96hrm, did you just miss execCmdEx or was there a reason you couldn't use it?
20:10:33shashlicki need to check
20:12:03*Vladar quit (Quit: Leaving)
20:12:06shashlickI guess I could have used execCmdEx but that doesn't allow specifying args as an array or an env
20:13:42*rokups quit (Quit: Connection closed for inactivity)
20:15:41shashlickthe async version of execProcess does return both output and return code
20:15:54shashlickhttps://github.com/cheatfate/asynctools/blob/master/asynctools/asyncproc.nim#L122
20:17:16shashlickis it possible to have two versions of execProcess, one that works as is and another that returns a tuple? or is that not possible since nim won't know which one to use?
20:17:29dom96it's not possible
20:17:44dom96But this might be worth a breaking change
20:26:54dom96Araq: How come default(B) doesn't work, when 'B' is a generic type?
20:34:37*bozaloshtsh_ quit (Quit: ok)
20:38:05*yglukhov joined #nim
20:41:35*PMunch joined #nim
20:42:45*yglukhov quit (Ping timeout: 256 seconds)
20:54:45*nsf joined #nim
20:55:17*vivus joined #nim
20:58:48FromGitter<mratsim> @dom96 theree is a phantom reply here: https://forum.nim-lang.org/t/2202
21:00:53*miran joined #nim
21:01:30dom96hrm, not sure what you mean
21:03:04FromGitter<mratsim> a reply I can’t see, so probably either spa or a new user (or something already deleted?)
21:03:26FromGitter<mratsim> ah
21:03:32FromGitter<mratsim> it’s deleted spam I think
21:04:11FromGitter<mratsim> (https://files.gitter.im/nim-lang/Nim/Gd2t/2018-02-17_22-03-55.png)
21:04:54dom96yep
21:05:09dom96Interestingly it's not showing up for me on the front page
21:15:30FromGitter<mratsim> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5a889b7226a769820b29bf06]
21:16:21FromGitter<mratsim> @miran, I just came upon this Neural net in Nim repo which introduces a nice DSL: https://github.com/t8m8/Neural-Network-in-Nim/blob/master/examples/mnist.nim
21:16:44miran@mratsim: thanks, will take a look
21:22:06*joeyparsons_ quit (Quit: Connection closed for inactivity)
21:23:05*vlad1777d quit (Remote host closed the connection)
21:23:43*vlad1777d joined #nim
21:27:07*gokr joined #nim
21:27:56*natrys quit (Quit: natrys)
21:43:18*yglukhov joined #nim
21:47:40*yglukhov quit (Ping timeout: 240 seconds)
22:01:16*endragor joined #nim
22:05:27*miran quit (Quit: Konversation terminated!)
22:06:06*endragor quit (Ping timeout: 265 seconds)
22:20:07FromGitter<singularperturbation> I think https://nimble.directory/ needs its certificate renewed
22:20:33FromGitter<singularperturbation> expired on the 9th of this month
22:25:41Araqwould love to see some real study about costs vs benefits of comp-sci security or what they name "security"
22:27:54Araqit is an utter disaster -- costing billions of software development time and not helping much, like parachutes for cars
22:28:07dom96SSL actually helps a lot
22:28:34Araqthe crypto aspect yes, not sure about the certificates
22:28:35dom96It's sort of like vaccinations, it provides herd immunity. The more websites use SSL the less your ISP knows about your browsing habits.
22:29:02*Trustable quit (Remote host closed the connection)
22:29:21*solitudesf quit (Ping timeout: 248 seconds)
22:29:38FromGitter<mratsim> I think the main benefit is for people in a co-working space :P, stealing Facebook cookies was a thing
22:30:00*Trustable joined #nim
22:30:24PMunchOr if you're using a public WiFi at say an airport or coffee shop
22:31:47Araqgood thing we don't have studies so everybody can believe what he wants
22:33:25Araqspeaking of which ... I sell these nice parachutes for cars, are you interested? your safety shouldn't be a subject of a cold cost-benefit analysis
22:33:48*Trustable quit (Remote host closed the connection)
22:34:25Araqhelps when you fall off a cliff with your car.
22:34:28dom96https://github.com/nim-lang/Nim/issues/5588
22:34:30dom96Opinions on this?
22:35:15dom96open(filename) actually raises an exception
22:37:40Araqhttps://www.youtube.com/watch?v=wnBMwPcRbVE
22:39:00dom96...?
22:39:29*gokr quit (Ping timeout: 248 seconds)
22:39:33dom96also, are we going to get this in before v1? https://github.com/nim-lang/Nim/pull/6206
22:40:59PMunchAnd what about func?
22:41:19Araqdom96: #5588 too would be too costly to change IMO
22:41:53dom96PMunch: ``func`` keyword? That's not a breaking change.
22:42:10PMunchNo I was wondering if we were getting it before 1.0 :)
22:42:12Araq#6206 was done and caused bizarre crashes in the GC/compiler :-(
22:45:01dom96PMunch: Implement it, should be easy (I think) :)
22:45:37PMunchLast time I asked about it Araq seemed to have some idea that it would do more than {.noSideEffects.} though
22:47:56Araq'func' is implemented
22:48:08Araqbut it's currently a dumb alias for 'proc'
22:50:22dom96yeah, so it's an easy change
22:50:36AraqI should probably just finish my write tracking for 'func'
22:50:52Araqso that people can play with the feature in 0.18
22:54:10*yglukhov joined #nim
22:58:35*yglukhov quit (Ping timeout: 240 seconds)
23:07:12PMunchThat would be great!
23:07:58*rockcavera quit (Remote host closed the connection)
23:26:31*yglukhov joined #nim
23:30:35*yglukhov quit (Ping timeout: 240 seconds)
23:35:06*nsf quit (Quit: WeeChat 2.0.1)
23:42:08*xet7 quit (Quit: Leaving)
23:49:34*xet7 joined #nim