<< 11-01-2017 >>

00:00:02*Kingsqueee joined #nim
00:01:20*ftsf joined #nim
00:01:53*Kingsquee quit (Ping timeout: 245 seconds)
00:09:02*pregress_ joined #nim
00:09:02*pregressive quit (Read error: Connection reset by peer)
00:12:01*hendi quit (Read error: Connection reset by peer)
00:12:10*euantor quit (Read error: Connection reset by peer)
00:12:22*mjanssen quit (Ping timeout: 256 seconds)
00:12:46*euantor joined #nim
00:13:12*Amun_Ra quit (Ping timeout: 240 seconds)
00:13:48*hendi joined #nim
00:14:19*mjanssen joined #nim
00:19:33*Amun_Ra joined #nim
00:29:02*arnetheduck joined #nim
00:32:16*pregress_ quit (Remote host closed the connection)
00:32:49*pregressive joined #nim
00:33:07*couven92 quit (Quit: Client disconnecting)
00:35:01*devted quit (Quit: Sleeping.)
00:37:06*pregressive quit (Ping timeout: 240 seconds)
00:37:24*gangstacat quit (Read error: Connection reset by peer)
00:41:01*gangstacat joined #nim
01:01:00*kulelu88 quit (Quit: Leaving)
01:05:28*dddddd quit (Quit: Hasta otra..)
01:17:31*kunev quit (Ping timeout: 255 seconds)
01:19:27*kunev joined #nim
01:21:11*yglukhov quit (Remote host closed the connection)
01:21:32*shodan45 quit (Ping timeout: 240 seconds)
01:51:49*PMunch quit (Quit: leaving)
02:22:03*yglukhov joined #nim
02:27:18*yglukhov quit (Ping timeout: 245 seconds)
02:34:46*chemist69 quit (Disconnected by services)
02:34:51*chemist69_ joined #nim
02:39:43*vlad1777d quit (Remote host closed the connection)
02:54:05*chemist69_ quit (Ping timeout: 256 seconds)
03:15:34*chemist69 joined #nim
03:16:57*space-wizard quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:28:03*space-wizard joined #nim
03:29:38def-pri-pubI'm having an issue with trying to create a new Table for a custom `object` I've defined.
03:30:46def-pri-pubI've git this object here: https://github.com/define-private-public/toybox/blob/master/nim_js/3d_canvas_cube/cube.nim#L14
03:31:06def-pri-pubBut when I try to run this line:
03:31:08def-pri-pubhttps://github.com/define-private-public/toybox/blob/master/nim_js/3d_canvas_cube/cube.nim#L117
03:31:13def-pri-pubI get an error from the compiler:
03:31:24def-pri-pubcube.nim(117, 53) template/generic instantiation from here
03:31:24def-pri-publib/pure/collections/tables.nim(427, 16) Error: cannot instantiate: 'A'
03:31:28def-pri-pub(pls halp)
03:45:43*Kingsqueee quit (Excess Flood)
03:46:06*Kingsqueee joined #nim
03:51:05Araqdef-pri-pub: newTable() is too stupid to do type inference, write newTable[float, seq[Line]]()
03:57:52*brson quit (Quit: leaving)
04:00:48def-pri-pub*sadface*
04:00:55def-pri-pubgotcha
04:15:39Araqbut hey, you can leave out the ': TableRef[...]' declaration
05:01:06*chemist69 quit (Ping timeout: 252 seconds)
05:01:25Araqhttp://stackoverflow.com/questions/27904532/how-do-i-make-a-self-extract-and-running-installer
05:01:45Araqidea: produce a self-extracting 7z file and make it run 'finish.exe' after unzipping; patch 'finish.exe' to download optional GCC/Aporia packages
05:03:25*chemist69 joined #nim
05:08:26*sarlalian joined #nim
05:24:55*yglukhov joined #nim
05:28:46subsetpark> cube.nim(117, 53) template/generic instantiation from here
05:28:46subsetparkIn general, what does this error message mean? I seem to only see it when there's some other, more concrete message about something obviously wrong
05:29:23*yglukhov quit (Ping timeout: 245 seconds)
05:35:19ftsfsubsetpark, it means problem happened in template generated code, and the thing that generated it was on that line.
05:37:34subsetparkAh... I see. So, not that 'template/generic instantiation' itself is bad, but just 'if you're looking for the template/generic that let to <problem>, look here'
05:37:51subsetparkSo does that mean we can always expect *some* other more specific error message?
05:39:34ftsfyep i think so
05:39:57ftsfit's not an error message, but it tells you where the related error message happened
05:42:58subsetparkthat makes a lot of sense
05:43:24subsetparkthe wording is not very clear, but now i understand
05:45:19subsetparknext question... what's the difference between nake and the task functionality in nimble? they seem to overlap a lot.
05:47:15Araqnake works by compiling a builder app, nimble runs the tasks via an interpreter.
05:47:32Araqboth approaches have their cons and pros.
05:47:58Araqnake supports Android builds out of the box afaik, Nimble doesn't
05:48:53Araqthe Nimble task API was inspired by nake ;-)
05:49:09subsetparkah, very interesting
05:49:20def-pri-pubAlright, the `html5_canvas` package is ready for the prime time: https://gitlab.com/define-private-public/HTML5-Canvas-Nim
05:49:24subsetparkI never thought about compiling builder apps
05:49:31def-pri-pubI'll make a post about it on my blog tomorrow. Night guys.
05:51:37*def-pri-pub quit (Quit: leaving)
05:55:12*nsf joined #nim
06:01:09*bjz joined #nim
06:01:56*Kingsquee joined #nim
06:02:51*Kingsqueee quit (Read error: Connection reset by peer)
06:10:58*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
06:18:07*ftsf quit (Ping timeout: 255 seconds)
06:21:21*ftsf joined #nim
07:08:09*ftsf quit (Quit: :q!)
07:21:22dom96Araq: https://www.reddit.com/r/nim/comments/5mx31i/version_0160_released/dc9st51/?context=3
07:26:51*yglukhov joined #nim
07:31:29*yglukhov quit (Ping timeout: 248 seconds)
08:11:20*rokups joined #nim
08:22:37*yglukhov joined #nim
08:25:44*pie_ quit (Quit: Leaving)
08:26:41*yglukhov quit (Ping timeout: 240 seconds)
08:27:53*yglukhov joined #nim
08:28:03*yglukhov quit (Remote host closed the connection)
08:28:11*pie_ joined #nim
08:28:18*yglukhov joined #nim
08:38:04*yglukhov quit (Remote host closed the connection)
08:42:41FromGitter<dom96> From http://www.tiobe.com/tiobe-index/
08:42:46FromGitter<dom96> > Q: How may I nominate a new language to be added to the TIOBE index?
08:42:57FromGitter<dom96> > it is sufficiently popular (more than 5,000 hits for +"<language> programming" for Google),
08:43:21FromGitter<dom96> Nim currently gets ~4100, we're not too far off.
08:56:15*yglukhov joined #nim
08:59:39*yglukhov quit (Remote host closed the connection)
09:02:43*chemist69 quit (Ping timeout: 245 seconds)
09:03:02*yglukhov joined #nim
09:05:05*chemist69 joined #nim
09:12:08*Vladar joined #nim
09:15:31*space-wizard quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
09:17:25*Andris_zbx joined #nim
09:17:52*yglukhov quit (Remote host closed the connection)
09:18:35*yglukhov joined #nim
09:25:53*yglukhov quit (Remote host closed the connection)
09:26:08*yglukhov joined #nim
09:38:58*yglukhov quit (Remote host closed the connection)
09:42:26FromGitter<andreaferretti> @Araq great, the regression with static types I mentioned yesterday is already fixed! :-)
09:47:33*bjz joined #nim
09:49:32AraqI know. you're welcome.
09:51:03*yglukhov joined #nim
09:55:22*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
09:55:29*yglukhov quit (Ping timeout: 248 seconds)
09:55:50*GustavoLapasta joined #nim
09:58:22GustavoLapastahttps://github.com/nim-lang/Nim/blob/master/lib/windows/winlean.nim#L441 -> field sa_data is private
09:58:32GustavoLapastahttps://github.com/nim-lang/Nim/blob/master/lib/posix/posix.nim#L466 -> field sa_data is public
09:58:40GustavoLapastais it on purpose?
09:58:55GustavoLapastaI was trying to access that field on a windows machine.
09:59:00*yglukhov joined #nim
10:00:58FromGitter<andreaferretti> I have a couple of questions on the new foreignDep feature of nimble
10:01:15FromGitter<andreaferretti> Does it support alternatives? (install this *or* that)
10:02:17FromGitter<andreaferretti> Does it work with transitive dependencies? (package A needs a foreignDep; do I get a suggestion when installing package B that depends on A)?
10:03:10AraqGustavoLapasta: unlikely, but what does this field do
10:03:32Araqandrea: transitivity should work out of the box.
10:04:09Araqno support for alternatives, I'm afraid. you can have an 'if' in your nimscript and try to make the choice for the user
10:05:10FromGitter<andreaferretti> ok, thank you
10:05:24FromGitter<andreaferretti> I'll put both :-)
10:05:48GustavoLapastaAraq it's part of a struct returned by getAddrInfo(), it contains the socket address in network format
10:09:38*fifr quit (Quit: WeeChat 1.1.1)
10:10:02*fifr joined #nim
10:10:17*fifr quit (Client Quit)
10:10:54*fifr joined #nim
10:11:18cheatfateGustavoLapasta, push PR with patch please
10:11:26*fifr quit (Client Quit)
10:12:13*byte512 joined #nim
10:12:15cheatfateGustavoLapasta, but please do not use this field, because it very platform dependent, even bsd/macos has different format from other unixes
10:16:01GustavoLapastaYes, actually I've been struggling a few hours now to get the uin32 network address passing an address string like "www.google.com" or "127.0.0.1" to nativesockets.getAddrInfo() or nativesockets.getHostByName(). Any hint would be highly appreciated.
10:16:15*Kingsquee quit (Ping timeout: 252 seconds)
10:19:23*PMunch joined #nim
10:22:22cheatfateGustavoLapasta, https://github.com/nim-lang/Nim/blob/devel/lib/pure/asyncdispatch.nim#L1124 maybe this code snippet help you
10:25:24cheatfateGustavoLapasta, and you can cast it.ai_addr to cast[ptr Sockaddr_in](it.ai_addr).sin_addr
10:26:43*odc joined #nim
10:26:56GustavoLapastasounds good, i'll give it a try. ty cheatfate
10:28:16*Kingsquee joined #nim
10:29:20*bjz joined #nim
10:29:34Araqcan we please rename the 'dealloc' for this to something sane?
10:29:53Araqevery time I read it it makes me cringe
10:31:10Araqfrom nativesockets import foo, bar, baz # dealloc not imported, watch the code crash and burn
10:31:30Araqit's a horrible design.
10:33:11*fifr joined #nim
10:36:59*yglukhov quit (Remote host closed the connection)
10:37:56*yglukhov joined #nim
10:38:09*pie_ quit (Ping timeout: 248 seconds)
10:40:49*fifr quit (Quit: WeeChat 1.6)
10:40:56*PMunch quit (Quit: leaving)
10:41:12*fifr joined #nim
10:41:51*irrequietus joined #nim
10:42:05*fifr quit (Client Quit)
10:43:22*fifr joined #nim
10:43:55cheatfateAraq, agree, we can avoid this stupid dealloc...
10:46:59*cheatfate quit (Read error: Connection reset by peer)
10:47:20*cheatfate joined #nim
10:53:04*yglukhov quit (Remote host closed the connection)
10:54:17*yglukhov joined #nim
10:59:03*yglukhov quit (Remote host closed the connection)
11:08:25*PMunch joined #nim
11:08:40*PMunch quit (Client Quit)
11:11:07*LeNsTR quit (Changing host)
11:11:07*LeNsTR joined #nim
11:12:26*PMunch joined #nim
11:13:35GustavoLapasta<cheatfate> GustavoLapasta, and you can cast it.ai_addr to cast[ptr Sockaddr_in](it.ai_addr).sin_addr
11:13:52GustavoLapastait works, that was the right solution, thanks again cheatfate.
11:15:12*yglukhov joined #nim
11:22:00*yglukhov quit (Remote host closed the connection)
11:31:02*yglukhov joined #nim
11:33:48*yglukhov quit (Remote host closed the connection)
11:35:39*couven92 joined #nim
11:38:02*yglukhov joined #nim
11:47:30*bjz_ joined #nim
11:48:54PMunchHmm, dom96 I read more of Nim in Action over Christmas. Even took quite a few notes on my Kindle for things that could be improved. But I haven't found a good way to get the notes off the device in a way that makes sense. I can only get the raw notes but that doesn't show their position in the text...
11:49:45*bjz quit (Ping timeout: 252 seconds)
11:57:53*yglukhov quit (Remote host closed the connection)
11:58:41*yglukhov joined #nim
12:01:06*LeNsTR is now known as lenstr
12:03:33*Snircle joined #nim
12:10:59*GustavoLapasta quit (Quit: Leaving)
12:18:48*couven92 quit (Read error: Connection reset by peer)
12:24:15*couven92 joined #nim
12:38:58*bjz joined #nim
12:39:45*bjz_ quit (Ping timeout: 248 seconds)
12:48:47*Kingsquee quit (Quit: https://i.imgur.com/qicT3GK.gif)
13:11:12*chemist69 quit (Ping timeout: 255 seconds)
13:12:30*vlad1777d joined #nim
13:16:19*chemist69 joined #nim
13:18:54*vlad1777d quit (Remote host closed the connection)
13:21:18*vlad1777d joined #nim
13:27:22*yglukhov quit (Remote host closed the connection)
13:44:14*yglukhov joined #nim
13:45:18*yglukhov_ joined #nim
13:45:18*yglukhov quit (Read error: Connection reset by peer)
13:52:07*vlad1777d quit (Remote host closed the connection)
13:54:31*vlad1777d joined #nim
14:08:15*Matthias247 joined #nim
14:21:11*Sentreen quit (Quit: WeeChat 1.4)
14:23:53*Sentreen joined #nim
14:24:10*yglukhov_ quit (Remote host closed the connection)
14:24:46*yglukhov joined #nim
14:28:22*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
14:29:11*yglukhov quit (Remote host closed the connection)
14:30:34*yglukhov joined #nim
14:39:29*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
14:48:53*yglukhov quit (Remote host closed the connection)
14:50:21*def-pri-pub joined #nim
14:54:23*confundus joined #nim
14:56:31*yglukhov joined #nim
14:59:18yglukhovdom96: ping
14:59:27*dddddd joined #nim
15:11:05def-pri-pubBlog post about compiling Nim to JS (along with HTML5 Canvas bindings) is live: https://16bpp.net/blog/post/html5-canvas-bindings-for-nims-javascript-target
15:13:50*devted joined #nim
15:15:32*Jesin joined #nim
15:19:39*chemist69 quit (Ping timeout: 258 seconds)
15:22:55*yglukhov quit (Remote host closed the connection)
15:23:42*yglukhov joined #nim
15:24:13*chemist69 joined #nim
15:28:28*yglukhov quit (Ping timeout: 260 seconds)
15:44:46*yglukhov joined #nim
15:52:42*byte512 quit (Ping timeout: 256 seconds)
15:54:47*PMunch quit (Quit: leaving)
16:07:02*odc quit ()
16:12:54*shodan45 joined #nim
16:23:32*kulelu88 joined #nim
16:30:35*gokr joined #nim
16:44:19FromGitter<andreaferretti> I know this has been discussed forever, but I just found this on HN http://eta-lang.org/ and I thought it is a really nice example of a clean design for a language website
16:48:10*nsf quit (Quit: WeeChat 1.6)
16:55:45*Andris_zbx quit (Remote host closed the connection)
16:58:20*space-wizard joined #nim
16:58:52dom96andreaferretti: have you seen our new site?
16:59:03*brson joined #nim
17:01:00FromGitter<andreaferretti> uh?
17:01:29FromGitter<andreaferretti> have there been any change lately?
17:01:37FromGitter<andreaferretti> it looks the same to me
17:03:33dom96andreaferretti: no, Calinou has been working on a new one. It's not finished yet https://github.com/nim-lang/website
17:04:11FromGitter<andreaferretti> I did not know about that
17:04:22FromGitter<andreaferretti> I will have a look
17:04:23FromGitter<andreaferretti> :-)
17:04:51Calinoudo check out the jekyll_prototype
17:04:57Calinouit's simple, clean and responsve :)
17:04:58FromGitter<andreaferretti> is it just `jekyll serve`?
17:05:07Calinouyeah, you clone it, cd jekyll_prototype, then "jekyll serve"
17:05:13Calinouand access http://localhost:4000
17:05:58*PMunch joined #nim
17:06:35kulelu88wow functional programming is complicated (eta-lang)
17:06:44*pregressive joined #nim
17:07:30FromGitter<andreaferretti> wow, much better! :-)
17:07:55dom96Calinou: I made some attempts at adding logos of our top sponsors to the front page + an invitation to contribute, but I really suck at it and it so far hasn't materialised into anything visually pleasing :)
17:07:59dom96I will keep trying though.
17:08:15dom96yglukhov: pong
17:08:41FromGitter<andreaferretti> I hope this lands soon! :-)
17:09:25CalinouI'm currently in an internship until January 24, btw
17:09:30Calinoualso, I got a new laptop :)
17:10:54*yglukhov quit (Remote host closed the connection)
17:11:16dom96Calinou: does that mean you have lots of time after the 24th? :)
17:12:46*couven92 quit (Quit: Client disconnecting)
17:12:48kulelu88do you guys read the HN comments after making submissions to HN?
17:13:23Xekulelu88: generally if you ignore the hardcore rust fanbodys you're fine
17:13:49FromGitter<andreaferretti> there's http://hnreplies.com/ if you want to follow replies
17:14:58*yglukhov joined #nim
17:15:39dom96kulelu88: I do
17:15:42Calinoudom96: I have about a week without classes between January 24th and February 1st
17:15:49Calinou(normally)
17:16:02dom96oh D:
17:16:43*Calinou clones nim-website on new laptop, to see the site on a 4K display
17:16:46FromGitter<martinium> I have a stupid question. Does Nim have good parallelization support or does it only support concurrency?
17:18:03kulelu881 comment stood out from the recent submission: "A casual skim through the top of the commit history indicates that Araq (Andreas Rumpf) is still doing almost all of the development. That's a red flag — being responsible for a complex language, compiler, standard library and documentation is a lot of work. (And it's of course a dangerous bus factor.)"
17:18:35dom96martinium: it supports parallelization fairly well
17:18:53dom96Calinou: Think you'll be able to use some of that time to work on the site?
17:19:02dom96also, what laptop did you get?
17:19:03CalinouI'll try
17:19:06*yglukhov quit (Ping timeout: 240 seconds)
17:19:21CalinouLenovo Yoga 910, with 16 GB RAM, i7-7500U, 512 GB SSD, 4K display, in black :P
17:19:23FromGitter<martinium> @dom96 does the Nim site use Jester?
17:19:28Calinoupretty good machine, it's a 13.9" convertible
17:19:29dom96martinium: the forum does
17:19:50dom96Calinou: nice
17:19:52FromGitter<martinium> @calinou that laptops specs are sex
17:19:56def-pri-pubIs there a tool out there were I can input Nim code, and have Syntax hilighted JS code spat out at me?
17:20:16FromGitter<xxlabaza> VS Code
17:20:26CalinouI considered many other machines (ThinkPads, MacBook Pros) but the performance/price wasn't as good, this one is quite expensive already
17:20:41Calinoualso the finish on this machine is really good almost MacBook-level I'd say
17:21:11FromGitter<martinium> Macs are overrated
17:21:18cheatfatemartinum: please explaing `parallelization`, because so many people uses this word wrongly
17:21:20FromGitter<martinium> They are good machines their laptops
17:21:25*yglukhov joined #nim
17:21:37Calinouyeah, also I have a slight preference for Windows 10 over macOS
17:21:48Calinoumany MS tools are very good now, even Microsoft Edge is overall not bad
17:21:49kulelu88eeuuww Windows
17:21:56Calinouunfortunately I can't use Linux for studies, kulelu88 :(
17:22:01FromGitter<martinium> @cheatfate parallelization means taking advantage of all the cpu cores in a machine.
17:22:09Calinouthe university doesn't forbid it but we need Adobe/Office
17:22:09def-pri-pubCalinou: have you you heard about the good news of our lord and saviour Richard Stallman?
17:22:12FromGitter<martinium> Thats my definition
17:22:20def-pri-pubAnd is son Linus Tvorlds
17:22:20kulelu88I'm kidding Calinou :)
17:22:34Calinoudef-pri-pub: "old man yells at cloud" ;)
17:22:40FromGitter<martinium> Linux > Windows > macOS
17:22:51FromGitter<martinium> For development and running mission critical software
17:23:03def-pri-pubCalinou: I actually got to meet him once at SeaGL and ask him a few questions
17:23:14FromGitter<martinium> End user experience on windows is still the best when it comes to media consumption
17:23:31def-pri-pubI asked what he thought was the biggest threat to free software in the near future, and he responded with SaaS platforms.
17:23:52def-pri-pub/r/stallmanwasright
17:24:03Calinouapparently, Linux is still pretty bad with hiDPI displays :(
17:24:16Calinouwhile the latest Windows 10 builds are good for the most part with it
17:24:38Calinouon a clean install, nearly everything worked out of the box, including automatic display rotatio, touch screen, keyboard disabling in tablet mode...
17:25:14FromGitter<martinium> @calinou recent linux builds have excellent hidpi support
17:25:19FromGitter<martinium> At least ubuntu and arch
17:25:32Calinouwell, the core OS might (with KDE or Unity) but the applications will hate it
17:25:37*yglukhov quit (Ping timeout: 248 seconds)
17:25:41cheatfatemartinium: we have some problems with `parallelization` in macos currently :)
17:26:00FromGitter<martinium> I run a 4k display and a second 1920x1200 display and they perfectly
17:26:05FromGitter<martinium> Linux rocks
17:26:24FromGitter<martinium> @cheatfate what about on linux?
17:26:54kulelu88people run servers on MacOS? wut?
17:27:13def-pri-pubCalinou: when Linux comes anything that visually related it always seems to be a shitshow for the end users. The only place where I've seen Linux excel in graphics is Ray Tracers (or at least running tem)
17:27:17def-pri-pubthem*
17:27:18FromGitter<martinium> Back in the day
17:27:27FromGitter<martinium> Some people did @kulelu88
17:27:36FromGitter<martinium> Back in the xserve days
17:27:44FromGitter<martinium> But i think for basic sites and file servers
17:27:50def-pri-pubI still get a crap ton of screen tearing when writing OpenGL apps or watching YouTube videos.
17:27:59cheatfatemartinium: linux/windows supported by threads.nim, there only problem with macos, because it don't support to set thread affinity to cpu.
17:28:04FromGitter<martinium> MacOS is not a good os for performance. Linux and windows obliterate it
17:28:37FromGitter<martinium> All HPC set ups use either linux or windows
17:28:40FromGitter<martinium> 99% use linux
17:29:42FromGitter<martinium> @cheatfate so threads.nim is for both multithreading/concurrency and for parallelism?
17:31:06def-pri-pubmartinium: I'm not sure what's really happended with OS X as of late in the terms of performance :/
17:31:07cheatfatemartinum: threads.nim is a tool using which you can implemenent parallelization and concurrency
17:31:16*PMunch quit (Quit: leaving)
17:31:36def-pri-pubI had a late 2014 Mac Mini that I updated to Sierra in Mid 2015 and it completely drained all of the speed from the system.
17:32:03cheatfatemartinum: BSD is faster then linux by design, and macos is using bsd's kqueue, but you are right nobody wants to use macos (maybe because it expensive?)
17:32:03def-pri-pubWhat also sucks too is that I can't put any more RAM into the thing. It's soldered onto the mainboard (unlike previous models).
17:32:37FromGitter<martinium> @def-pri-pub it is bloated. Apple cares about normal non-geeks and having a pretty UI with usability over performance
17:33:41FromGitter<martinium> MacOS even hides the real unix file system from users by default
17:33:52FromGitter<martinium> Something devs need to see and use
17:33:53def-pri-pubmarinium: I've also heard from a few of my Art friends that they're starting to jump ship back to Windows because they haven't like Apple as of the past few years.
17:34:17Calinouthese days, Microsoft is becoming a much stronger player vs macOS
17:34:17FromGitter<martinium> Yeah, that myth has taken a long time to dispel
17:34:34Calinouthey make nice hardware (Surface Pro, Surface Book), and they show what they're capableof
17:34:36def-pri-pubwhat myth?
17:34:39FromGitter<martinium> Windows is much better for artists of all genres be it music movies artwork
17:34:48kulelu88much stronger player ? they own 80+% of the desktop market
17:34:48CalinouVisual Studio Code is also a pretty nice editor (with good Nim support by the way)
17:34:49FromGitter<martinium> The myth that macs are better for graphics work
17:35:00Calinoukulelu88: I mean, innovation and coolness-wise
17:35:04def-pri-pubCalinou: Microsoft has really stepped up their game since they got rid of Balmer
17:35:06FromGitter<martinium> Windows outperforms them in all art software
17:35:07CalinouMicrosoft used to be "lol, boring, crashes all the time"
17:35:15Calinounow it's closer to being the trendy thing
17:35:26def-pri-pubWindows is going to be the new Hipster OS
17:35:29Xemartinium: OSX used to be the top of the kek
17:35:30FromGitter<martinium> Windows 7 ushered the era of rock solid stability
17:35:51FromGitter<martinium> Used to be a long time ago since they were the first to work with color graphics
17:35:51cheatfatemartinum: try to use wacom tablet with windows (restart services and drivers all the time)
17:36:05FromGitter<martinium> I have one and it works well
17:36:10FromGitter<martinium> Using win 10
17:36:35cheatfatemartinum: mine is always not working after sleep
17:36:51FromGitter<martinium> I uninstalled windows completely for ubuntu since rarely game anymore but win 10 is rock solid
17:37:23FromGitter<martinium> Lots of backdoors and spying but still better than mac and more performant lol
17:38:06FromGitter<martinium> If linux had more professional grade software available it would take over
17:38:14cheatfatemore performant where? network? graphics? storage?
17:38:43FromGitter<martinium> As compared to mac
17:38:52FromGitter<martinium> More performant in cpu speed
17:38:57def-pri-pubI really just want the graphics stack to get better. The only way I feel that's going to happen is when it has more Market Share.
17:39:02FromGitter<martinium> Ui also more responsive
17:40:01FromGitter<martinium> Windows and mac are responsible for entire generation of people being computer illiterate
17:40:09FromGitter<martinium> Dumbing down tasks and interfaces
17:40:18FromGitter<martinium> Linux didnt coddle anyone
17:40:52FromGitter<martinium> Most people can only open a browser and go on web in addition to maybe using an office suite
17:41:09FromGitter<martinium> Thankfully most colleges use linux in their cs programs
17:41:34FromGitter<martinium> Windows 8 was a big loss for MS
17:41:35def-pri-pubmartinium: I beg to differ on the "computer illterate part," It's moreso that most of the application that people now run are in a browser, and they are mainly sites like "Facebook," "YouTbue," "Twitter," etc.
17:41:51FromGitter<martinium> Thats just web though
17:42:03def-pri-pubIt's the web & smartphones that have made people dumber
17:42:04FromGitter<martinium> They dont know how to move through their filesystem
17:42:16FromGitter<martinium> Dunno what anything means
17:42:42FromGitter<martinium> Web more information than ever yet people have gotten dumber because they seek pleasure and fun over knowledge
17:43:19FromGitter<martinium> Thats why languages like Nim with approachable syntax and speed can bring more back over into the knowledge realm
17:43:42FromGitter<martinium> New gen of school kids see C code and think its esoteric
17:44:04FromGitter<martinium> Due to the shift towards dumber easier interfaces etc
17:45:50FromGitter<martinium> Seems like that is changing though hopefully continues and more and more people are adopting nix thanks to web dev roles and scientific computing all being done on linux/unic
17:45:53FromGitter<martinium> Unix*
17:46:12def-pri-pubmartinium: yeah, I'm a little saddened by that. I used to be a tutor (for CS) at my University.
17:46:55def-pri-pubThey would start all of the kids out on Python. It's not a bad langauge, except for the fact that it doesn't enforce type. I swear to god half of the issues I had to solves for students in the first weeks related to type issues.
17:46:57FromGitter<martinium> Call me crazy but C made a lot of sense to me even though I only did the basics in it
17:47:34FromGitter<martinium> Python hides too much. Abstracts how things work that programmers should know about
17:47:38def-pri-pubI did a BASIC syntax first, then another BASIC variant (which compiled to C++). They both enforced Type strictly. Then I moved onto C++.
17:47:45FromGitter<martinium> Breeding an entire gen of mediocre programmers
17:48:38FromGitter<martinium> I am still learning and have dabbled in the low level langs but since I have a day job I wanted modern syntax and speed in a compiled lang. Nim is perfect for it
17:48:39def-pri-pubMy department was more concerned with first teaching them the concepts of CS first (e.g. linked lists and algorithms) and then the hardware implementation next(Assembly and CPU architecture)
17:48:52FromGitter<martinium> Nice
17:49:03FromGitter<martinium> I def need to learn assembly
17:49:09FromGitter<martinium> Sometime in future
17:49:20def-pri-pubEh, I wished they force everyone to take a "Learn Programming" class first before making them take the Intro to CS course.
17:49:51def-pri-pubTry MIPS first. It's kind of the de-facto learning language. It's also fun too.
17:50:18FromGitter<martinium> I'll look into that
17:50:37FromGitter<martinium> Nim lets you embed raw assembly in the code I think as well
17:50:48def-pri-pubhttps://www.amazon.com/Computer-Organization-Design-Fifth-Architecture/dp/0124077269/ref=sr_1_1?ie=UTF8&qid=1484157033&sr=8-1&keywords=computer+architecture+and+organization+hennessy+and+patterson
17:50:53def-pri-pub^^^
17:51:13def-pri-pubThat book. Teaches you MIPs and how the CPU works.
17:51:47def-pri-pubThere' also a follow up book too that goes more into the CPU:
17:51:48def-pri-pubhttps://www.amazon.com/Computer-Architecture-Fifth-Quantitative-Approach/dp/012383872X/ref=sr_1_3?s=books&ie=UTF8&qid=1484157084&sr=1-3
17:52:25def-pri-pubThe two most impactful CS courses I think I ever took back at Uni where Computer Organization & Computer Architecture.
17:53:04FromGitter<martinium> Nice
17:53:15*shodan45 quit (Quit: Konversation terminated!)
17:53:17FromGitter<martinium> I remember when I was curious about how circuits work
17:53:42FromGitter<martinium> Then realized that the circuit instructions are now atomically small
17:53:45FromGitter<martinium> Mind blown
17:53:54FromGitter<martinium> Cpu's seem like magic
17:54:17FromGitter<martinium> When you learn how they really work
17:54:38def-pri-pubGet that first book then. It's a pretty heafty read but really insightful. It's on my TODO list to re-read it.
17:56:24*rupil joined #nim
17:56:27FromGitter<martinium> I will def do that
17:56:40FromGitter<martinium> Will take some time to get through that beast though
17:56:57FromGitter<martinium> Thats as low level as one go before machine code
17:57:16Calinouhere, students are taught PHP as first language, JavaScript as second
17:57:19Calinoubut this is not CS, it's a multimedia course
17:57:50def-pri-pubwhat-chu-talkin' bout martinium. Machine code has a 1-to-1 correspondance with Assembly (unless you're using pseudo instructions)
17:58:33FromGitter<martinium> Oh ok thats good then 
17:58:51FromGitter<martinium> Php for multimedia course makes sense if they are doing web tasks
17:58:58FromGitter<martinium> Php7 is fast
17:59:14FromGitter<martinium> Important thing is being able to study quality code
17:59:28FromGitter<martinium> I hear php suffers from lots of spaghetti code
17:59:35euantorMy first language was Visual Basic .NET, taught in high school. At least it kind of enforces types, more than Python anyway
17:59:41CalinouPHP 8 will be even faster, it'll have a JIT!
17:59:57Calinouyes, tons of PHP code is crap; it doesn't mean you can't write good PHP code
17:59:58FromGitter<martinium> I love this focus on performance
18:00:09FromGitter<martinium> Its all due to mobile/portable smart devices
18:00:23FromGitter<martinium> Gotta get the most performance to save battery
18:00:25Calinouif you use a well-established framework and modern (5.6+, 7.0+) practices, you can end up having quite clean code
18:00:38Calinouwell, PHP runs on the back-end, there's no battery life there
18:00:51Calinouit's just that PHP used to be slow as molasses
18:02:22*yglukhov joined #nim
18:02:46def-pri-pubI feel like people who write PHP should be switching to Hack and HHVM instead.
18:02:51FromGitter<martinium> It was slower than python
18:03:01FromGitter<martinium> But now its much faster
18:03:15FromGitter<martinium> Php 7 faster than hhvm
18:03:26FromGitter<martinium> Its actually pretty good
18:03:41def-pri-pubReally?
18:03:41FromGitter<martinium> As far as dynamic web languages go
18:03:46FromGitter<martinium> Yeah it is
18:04:06FromGitter<martinium> I looked at benchmarks when php7 was released
18:04:10FromGitter<martinium> Its really fast
18:04:11def-pri-pubI remember when Facebook first made HipHop to transpile their PHP codebase over to C and they crazy performance boosts.
18:04:37FromGitter<martinium> Yeah php7 now negates that
18:04:38FromGitter<martinium> Hehe
18:04:48def-pri-pubhttps://developers.slashdot.org/story/09/12/20/1433257/The-Environmental-Impact-of-PHP-Compared-To-C-On-Facebook?art_pos=12
18:04:52def-pri-pubcorrect: it was C++
18:05:05def-pri-pubcorrection*
18:05:39CalinouHHVM is a RAM hog compared to PHP 7, too
18:05:46Calinouit's also considerably hard to build
18:06:04def-pri-pubSoon enough, the only way to write highly scalable web apps is going to be in Assembly :P
18:06:06Calinouso, for 99% of users on small VPSes, you want PHP 7, not HHVM
18:06:20Calinoudef-pri-pub: CPUs keep getting more powerful :P
18:06:28def-pri-pubThen after that ASICs
18:06:30*yglukhov quit (Ping timeout: 252 seconds)
18:06:32CalinouGo can be used to make web apps that scale, too
18:06:38Calinouor Rust, or a JVM language like Scala
18:06:41cheatfateguys this is #nim channel
18:06:44FromGitter<martinium> But people should make efficient use of all that power
18:06:53cheatfatethis is not channel about php
18:06:58cheatfateor any other languages
18:07:00FromGitter<martinium> Otherwise its wasted potential
18:07:12def-pri-pubCalinou: other issues are going to be with memory fetch speed too.
18:07:12FromGitter<martinium> I think Nim can be great for webapps
18:07:32FromGitter<martinium> C is still considered the fastest lang behind asm
18:07:48FromGitter<martinium> So Nim with a few killer apps can make huge inroads
18:08:06dom96cheatfate: true, but I think it's okay to let a little bit of offtopic chatter from time to time
18:08:12dom96Especially when nobody else is chatting about Nim
18:08:20FromGitter<martinium> Development time would be greatly decreased while still being superfast
18:08:33def-pri-pubI was talking about writing an ORM library for Nim yesterday. I think that needs to happen first before Nim will be considered for Web Apps.
18:09:04FromGitter<martinium> @dom96 you actively working on jester?
18:09:19FromGitter<martinium> You have competition with crystal/kemal
18:09:34dom96martinium: not actively
18:09:47dom96I spent my last holidays working on Nimble
18:10:13FromGitter<martinium> I remember
18:10:55FromGitter<martinium> Hopefully I can learn enough to start feeling more comfortable. I am making many small apps a bit at a time
18:11:08FromGitter<martinium> Trying out stdlib features
18:11:13FromGitter<martinium> So I know what they do
18:11:27FromGitter<martinium> To learn how to use them etc
18:11:40FromGitter<martinium> A lot to learn but the syntax is very approachable
18:12:02FromGitter<martinium> Good for people like me who can only code after work
18:14:23FromGitter<martinium> @cheatfate are you a core contributor to Nim? Your name looks familiar
18:15:03cheatfatemartinum: what does it mean `core contributor`?
18:17:37*brson quit (Read error: Connection reset by peer)
18:18:21dom96I think he's wondering whether you have contributed code to the Nim compiler and/or stdlib
18:18:30dom96The answer is: yes, cheatfate did :)
18:18:44dom96and I would say a significant amount
18:20:09kulelu88I remember someone else here saying they would work on a better HTTP std lib for Nim. Was it you? Xe
18:20:11*brson joined #nim
18:21:14cheatfatedom96, not so significant as you
18:21:33FromGitter<martinium> Like do you work on the lang itself
18:21:38FromGitter<martinium> Is what I meant
18:21:56dom96kulelu88: what's wrong with the current one? :)
18:22:16kulelu88ehh nothing dom96 . It was just 1 of those "we can do it someday" type of discussions
18:22:36FromGitter<martinium> Do we mnow which libs need to be optimized further?
18:22:46FromGitter<martinium> Know*
18:22:55dom96kulelu88: I see.
18:23:07FromGitter<martinium> A lot of stuff needs to be tracked and probably already is
18:23:33FromGitter<martinium> I think Araq needs more contributions from fellow skilled programmers like many in this room.
18:24:01FromGitter<martinium> Would help get Nim to a stable 1.0 version sooner rather than later.
18:24:30Xekulelu88: i was, then depression hit me in the kneww
18:24:50kulelu88Xe: no worries about it. I hope you get better :)
18:32:17*yglukhov joined #nim
18:33:43kulelu88dom96: is the Nim syntax similar to Cython in some ways?
18:36:46dom96don't know enough about Cython to give an answer
18:38:21*chemist69 quit (Ping timeout: 255 seconds)
18:38:28*Jesin quit (Quit: Leaving)
18:38:44*chemist69 joined #nim
18:40:50*Trustable joined #nim
18:43:29CalinouI never got Cython to work, but I got Nim to work
18:43:33Calinouthat's a difference I guess :P
18:45:10*GustavoLapasta joined #nim
18:46:01AraqNim has a type system. Cython thinks optimization means to annotate trivial locals with "int" and "float".
18:49:08*Jesin joined #nim
18:50:00dom96he's asking about the syntax
18:50:58Araqdom96: ok, fair enough. Often "syntax" doesn't mean anything though and the question could have been "compare Cython to Nim for me"
18:51:07kulelu88yeah no doubt that Nim probably runs circles around Cython
18:51:48*confundus quit (Quit: confundus)
18:56:06euantorThe one thing that we're missing from the HTTP libraries (in terms of marketing anyway) is HTTP2 support. That seems to be how you sell HTTP libraries these days
18:58:01GustavoLapastaPorting c code to nim. In my machine size_t is defined as "unsigned int" so I would translate it to Nim's "uint", but c2nim translates it to a plain "int". Why isn't "uint" correct?
18:58:43AraqGustavoLapasta: it's correct, but more cumbersome to use :-)
18:59:04Araqplus unsigned is viral and suddenly you end up with strange modulo arithmetic everywhere
18:59:36Araqand suddenly you cannot convert your numbers to float reliably anymore ;-)
19:00:02GustavoLapastaah, I see. ty Araq
19:02:21*shodan45 joined #nim
19:03:13*nsf joined #nim
19:06:32*dmi0 quit (Ping timeout: 240 seconds)
19:12:47*zama quit (Remote host closed the connection)
19:32:02*rokups quit (Quit: Connection closed for inactivity)
19:35:51subsetparkI think you can reliably substitute 'Python' for 'Cython' in that syntax question
19:37:38dom96In case anybody is interested, current numbers for tokio-minihttp vs. asynchttpserver https://gist.github.com/dom96/b3b6f45a5aba63077c090dd0ff9016e9
19:47:21dom96Latency is definitely much better when realtime GC is used (updated).
19:49:57dom96https://news.ycombinator.com/item?id=13376485 That's a good list of misconceptions about Rust, I myself thought that it did prevent race conditions.
19:51:11*yglukhov quit (Remote host closed the connection)
19:51:36Araqno it prevents data races.
19:54:07dom96then how come steven says otherwise?
19:58:14Araqbecause not everybody uses the same definitions.
20:08:39*yglukhov joined #nim
20:10:43Trustableguys, what prefix do you recommend for object member variables to distinguish it from get/set method?
20:11:13dom96give the method a prefix
20:11:19AraqTrustable: you can usually get away with the same name if the member is private
20:11:20dom96getField()
20:13:44TrustableI don't, that different names are not required, but makes life easier I think. W
20:14:00TrustableI know, that different names are not required, but makes life easier I think.
20:14:47Araquse an 'f' suffix then, prefixes are harder to read than suffixes.
20:16:38Trustableso far I use 'f' as prefix. why is a suffic better to read? examples: obj.fTitle, obj.titlef, obj.titleF
20:16:46dom96bleh
20:16:48dom96please don't
20:17:40dom96what's wrong with getField()?
20:18:34TrustableI prefer to avoid the 'set' and 'get' prefix, just write for example 'obj.title = "a"'
20:19:57*yglukhov quit ()
20:21:01*yglukhov joined #nim
20:21:56dom96hrm, fair enough
20:23:15*brson quit (Quit: leaving)
20:24:18*bjz joined #nim
20:24:46Trustableso how would you name a member variable 'title'? I noticed, that '_title' is not allowed.
20:25:42AraqfTitle is fine, mTitle is fine, titleF is fine but uncommon
20:26:45Trustableok, ty
20:38:16*dmi0 joined #nim
20:38:58*Jesin quit (Quit: Leaving)
20:43:31*fvs joined #nim
20:45:36*brson joined #nim
20:47:24*pregress_ joined #nim
20:47:35*pregressive quit (Read error: Connection reset by peer)
20:59:44*yglukhov quit (Remote host closed the connection)
21:03:11*pregress_ quit (Remote host closed the connection)
21:03:47*pregressive joined #nim
21:04:46*shodan45 quit (Quit: Konversation terminated!)
21:08:27*pregressive quit (Ping timeout: 258 seconds)
21:12:47*yglukhov joined #nim
21:19:37*space-wi_ joined #nim
21:19:53*chemist69 quit (Ping timeout: 255 seconds)
21:20:38*space-wizard quit (Ping timeout: 245 seconds)
21:22:23*pregressive joined #nim
21:24:23*brson quit (Ping timeout: 255 seconds)
21:25:20*chemist69 joined #nim
21:25:25*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
21:29:14*Vladar quit (Quit: Leaving)
21:31:28*brson joined #nim
21:34:56*space-wizard joined #nim
21:35:16*pregressive quit (Read error: Connection reset by peer)
21:35:29*pregressive joined #nim
21:36:03*space-wi_ quit (Ping timeout: 252 seconds)
21:36:06*yglukhov quit (Remote host closed the connection)
21:36:13*bubbles joined #nim
21:36:33*bubbles left #nim (#nim)
21:39:13*Trustable quit (Quit: Leaving)
22:03:56*bjz joined #nim
22:09:31*fvs left #nim ("leaving")
22:09:53*rupil quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
22:11:22*bjz quit (Read error: Connection reset by peer)
22:12:57*bjz joined #nim
22:16:46*bjz quit (Client Quit)
22:20:23*yglukhov joined #nim
22:29:12*GustavoLapasta quit (Quit: Leaving)
22:29:26*vlad1777d quit (Quit: Leaving)
22:33:56*vlad1777d joined #nim
22:43:02*brson quit (Ping timeout: 260 seconds)
22:51:46*brson joined #nim
23:07:36*pregressive quit (Remote host closed the connection)
23:08:10*pregressive joined #nim
23:10:51kulelu88is this the install documentation: http://nim-lang.org/download.html
23:12:51*pregressive quit (Ping timeout: 252 seconds)
23:22:09*Snircle joined #nim
23:35:07*devted quit (Quit: Sleeping.)
23:35:31*nsf quit (Quit: WeeChat 1.6)
23:37:18*irrequietus quit ()
23:42:09*brson quit (Ping timeout: 248 seconds)
23:52:25*Matthias247 quit (Read error: Connection reset by peer)
23:55:35*chemist69 quit (Ping timeout: 258 seconds)
23:58:14*chemist69 joined #nim