<< 12-06-2016 >>

00:02:31*GangstaCat quit (Quit: Leaving)
00:09:06*abruanese joined #nim
00:15:50*yglukhov quit (Remote host closed the connection)
00:16:20*der-landgraf quit (Quit: WeeChat 1.5)
00:18:33*PMunch quit (Quit: leaving)
00:20:08*der-landgraf joined #nim
00:29:26*heretobang quit (Ping timeout: 250 seconds)
00:30:13*brson joined #nim
00:37:59*trusion joined #nim
00:38:22*yglukhov joined #nim
00:39:44dom96def-: cool to see your blog on HN's front page, very interesting article too :)
00:40:12Araqone day I will find the time and read it
00:40:58Araqbut today is already tomorrow
00:41:05Araqso good night.
00:41:23dom96def-: I do wonder why people DDoS such services, could it be just script kiddies trying to act cool?
00:42:52*yglukhov quit (Ping timeout: 258 seconds)
00:46:45def-dom96: thanks. HN moderators are nice people, they manually put it on front page because it got ignored in new list
00:47:00dom96def-: wow, that's awesome
00:47:34dom96Certainly well deserved, it's a very interesting blog post.
00:48:43def-dom96: Sure, lots of script kiddies, it's much easier to attack than defend with DDoS attacks. Then some people really seem to hate our servers and at times we had attacks with over 100 GBit/s
00:53:09dom96def-: Damn. They must just pick the easiest targets. Btw, have you got a twitter account where you tweet about your blog posts? I noticed that I am missing a lot of cool stuff from your blog.
00:55:07def-dom96: i don't use social networks, only have a feed: https://hookrace.net/blog/feed/
00:57:10dom96Pity. I gave up on RSS feeds after Google decided to kill Reader.
00:57:45*pregressive quit (Remote host closed the connection)
01:08:13dom96def-: if you need someone that hasn't played teeworlds/ddnet before to test the tutorial once it's finished then let me know. It sounds like a game I might enjoy but likely won't have time to actually try it for a while anyway.
01:13:43def-dom96: will do, thanks :)
01:27:10*Jesin quit (Quit: Leaving)
01:42:55*abruanese quit (Max SendQ exceeded)
01:53:29*girvo joined #nim
01:53:30*girvo_ joined #nim
01:56:34*chemist69_ joined #nim
01:58:19*girvo_ quit (Ping timeout: 252 seconds)
01:58:19*girvo quit (Ping timeout: 252 seconds)
01:59:52*chemist69 quit (Ping timeout: 264 seconds)
02:10:40*arnetheduck joined #nim
02:23:33*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
02:28:14*heretobang joined #nim
02:33:45*akaisora quit (Ping timeout: 260 seconds)
02:46:48*heretobang quit (Ping timeout: 250 seconds)
03:01:02*heretobang joined #nim
03:02:35*brson quit (Quit: leaving)
03:03:26*bjz joined #nim
03:07:11*yglukhov joined #nim
03:11:40*yglukhov quit (Ping timeout: 260 seconds)
03:13:42*saml_ quit (Quit: Leaving)
03:19:55*fredrik92 quit (Read error: Connection reset by peer)
03:22:59*nsf quit (Quit: WeeChat 1.4)
03:27:16*fgimian joined #nim
03:39:27*girvo joined #nim
03:39:28*girvo_ joined #nim
03:41:50*zacts quit (Ping timeout: 250 seconds)
03:43:03*yglukhov joined #nim
03:44:20*girvo_ quit (Ping timeout: 272 seconds)
03:44:20*girvo quit (Ping timeout: 272 seconds)
03:47:30*yglukhov quit (Ping timeout: 272 seconds)
03:56:48*zacts joined #nim
04:10:00*heretobang quit (Ping timeout: 250 seconds)
04:29:57*fgimian quit (Quit: Textual IRC Client: www.textualapp.com)
05:01:00*heretobang joined #nim
05:40:14*girvo joined #nim
05:40:15*girvo_ joined #nim
05:45:03*girvo_ quit (Ping timeout: 276 seconds)
05:45:03*girvo quit (Ping timeout: 276 seconds)
05:48:25*deavmi_mobile joined #nim
05:54:34*deavmi_mobile2 joined #nim
05:56:36*deavmi_mobile quit (Ping timeout: 244 seconds)
05:58:51*deavmi_mobile2 quit (Ping timeout: 246 seconds)
06:04:54*yglukhov joined #nim
06:08:01*nsf joined #nim
06:09:01*yglukhov quit (Ping timeout: 240 seconds)
06:09:45*Kingsquee joined #nim
06:40:46*yglukhov joined #nim
06:45:30*yglukhov quit (Ping timeout: 276 seconds)
07:41:08*girvo joined #nim
07:41:08*girvo_ joined #nim
07:45:25*girvo quit (Ping timeout: 250 seconds)
07:45:51*girvo_ quit (Ping timeout: 250 seconds)
07:58:11*zodiak_ joined #nim
08:00:33*zodiak quit (Ping timeout: 240 seconds)
08:15:21*Salewski joined #nim
08:17:38SalewskiDom, I just took a very short look at the beginning of chapter 7. For the facts you told us about twitter and youtube you should add some references, at least a wikipedia link.
08:20:27SalewskiAnd figure 7.1 is wrong, "View sees User" is nonsense. You may replace "sees" by "show" for a quick but not really nice fix. Or invert the arrow, from user to view maybe. Bye.
08:20:31*Salewski quit ()
08:30:31*Salewski joined #nim
08:33:09SalewskiOne more remark, "Figure 7.2. The three different MVC components as seen on a calculator’s GUI" The model is not "seen", so you may write: "The three different MVC components of a (webbased) calculator". Have to leave now...
08:33:15*Salewski quit (Client Quit)
09:10:33*yglukhov joined #nim
09:12:51*kingofoz joined #nim
09:27:46*sanika is now known as alberti
09:32:18*nsf quit (Quit: WeeChat 1.4)
09:36:43*heretobang quit (Ping timeout: 250 seconds)
09:41:59*girvo joined #nim
09:42:00*girvo_ joined #nim
09:46:26*girvo quit (Ping timeout: 258 seconds)
09:46:49*girvo_ quit (Ping timeout: 258 seconds)
09:56:27*Kingsquee quit (Read error: Connection reset by peer)
09:57:01*Kingsquee joined #nim
10:02:27*Matthias247 joined #nim
10:22:13*desophos quit (Read error: Connection reset by peer)
10:25:05kingofozHi all
10:25:16kingofozI want to ask a quick question
10:25:20kingofozI am looking at http://nim-lang.org/docs/tut2.html#object-oriented-programming-properties
10:25:49kingofozand I don't understand why we need proc `host=`
10:26:17nivyou need it because host is not flagged as * on the object itself
10:26:28niv* means any module can access it. same goes for the proc, its marked visible/global with a *
10:27:17nivfor the given example you could just as well do: host*: int and achieve the exact same result. the idea behind setter/getters is that you can run custom code, perform validations, etc
10:27:21*aziz joined #nim
10:28:01kingofozum... you mean `host=` and host() are for other modules outside this module?
10:28:16nivyep, because they're marked with *
10:28:24kingofozah! I understand
10:29:46kingofozgetter and setter are prepared for the usage outside the module?
10:30:25nivyep. for example if you want a consumer of your module to only be allowed to read a value, but not write it
10:31:02nivor if you decide in a later version that you dont want to expose write access to a field, but instead want the code to do sth else when the user assigns a value
10:31:09*Kingsquee quit (Quit: https://i.imgur.com/qicT3GK.gif)
10:32:04kingofozunderstood
10:32:12kingofozthank you!
10:32:34nivthe `host=` backtick stuff is needed because host= on its own wouldnt be considered a valid indentifier for a proc
10:32:36nivyw
10:35:18kingofozsure
10:35:43kingofozI am poor on OOP. :-)
10:45:47*elrood joined #nim
10:50:39EastBytehow do I pass a C structure by value to a C function? it looks like nim is automatically passing by pointer
10:58:50*fredrik92 joined #nim
11:00:15def-EastByte: http://nim-lang.org/docs/manual.html#foreign-function-interface-bycopy-pragma
11:00:45def-but even in C it's not recommended to pass structs by value usually
11:05:59EastByteI find it reasonable for tiny structs but gcc might change it on optimization anyway, I guess
11:16:54cheatfateEastByte, you need to understand that passing structures by value is looks like (pass reference, create structure in stack, memcpy to structure using passed reference as source)
11:17:22cheatfateSo it will be always faster and optimized to pass structures by reference
11:19:02cheatfateAnd there is only one way when passing by value have same speed as passing by reference, if your structure fit to `int` size
11:19:22cheatfateso like 8 bytes on 64bit platform and 4bytes on 32bit platform
11:23:09EastByte^ yes, plus the advantage that the data lies on stack directly and doesn't need to be derefenced on every access
11:24:01AraqNim passes structs < wordsize*3 (or 4? don't remember) by copy
11:24:12Araqand other structs by ref
11:25:05Araqif the C code passes by copy whereas Nim decides to pass by ref, it usually implies the C programmer got it wrong :P
11:26:35EastBytewell, good to know
11:42:49*girvo joined #nim
11:42:50*girvo_ joined #nim
11:47:01*girvo_ quit (Ping timeout: 240 seconds)
11:47:01*girvo quit (Ping timeout: 240 seconds)
11:53:51*cheatfate quit (Quit: Leaving)
11:56:27*nsf joined #nim
12:01:42*deavmi_mobile joined #nim
12:02:20*deavmi_mobile quit (Client Quit)
12:02:55*deavmi_mobile joined #nim
12:03:25*deavmi_mobile quit (Client Quit)
12:03:46*deavmi_mobile joined #nim
12:04:27*deavmi_mobile quit (Client Quit)
12:05:13*deavmi_mobile joined #nim
12:05:41*fredrik92 quit (Ping timeout: 240 seconds)
12:11:56*fredrik92 joined #nim
12:24:37*Demon_Fox quit (Quit: Leaving)
12:35:14*akaisora joined #nim
12:37:21*deavmi_mobile quit (Read error: No route to host)
12:43:41*girvo joined #nim
12:43:42*girvo_ joined #nim
12:47:03*aziz quit (Remote host closed the connection)
12:48:51*girvo_ quit (Ping timeout: 276 seconds)
12:48:51*girvo quit (Ping timeout: 276 seconds)
12:54:16*cheatfate joined #nim
13:03:28*kingofoz quit (Ping timeout: 258 seconds)
13:04:17*kingofoz joined #nim
13:10:34*beatmox quit (Ping timeout: 244 seconds)
13:13:54*abruanese joined #nim
13:15:31*beatmox joined #nim
13:24:43*kingofoz quit (Ping timeout: 250 seconds)
13:25:24*fredrik92 quit (Quit: Shutting down...)
13:25:47*kingofoz joined #nim
13:26:44*nsf quit (Quit: WeeChat 1.4)
13:44:39*girvo joined #nim
13:44:39*girvo_ joined #nim
13:46:21*EEE_ joined #nim
13:46:44EEE_Hello, is Mr. Dominik here?
13:47:49Araqhe is dom96 but he is away, I think
13:47:54Araqcan I help you instead?
13:48:06EEE_How can I contact him?
13:48:46def-EEE_: you can write something to him here or /msg him and he'll probably respond when he's back
13:49:03*girvo_ quit (Ping timeout: 240 seconds)
13:49:03*girvo quit (Ping timeout: 240 seconds)
13:51:30*PMunch joined #nim
13:56:04arnetheduck Araq, if "zct dealloc cell" happens twice for the same cell, any ideas what could be the cause?
13:56:28arnetheduckthis is after implementing markers and running tnew
13:56:38arnetheduck(but no markers for globals)
13:57:42arnetheduckmost annoying thing with llvm right now is that they don't seem to expose the debug info generation stuff to c, so can't add debugging easily to nlvm, thus can't use debugger :/
13:58:15EEE_Araq, how can I contact dom96?
13:58:32AraqEEE_: just be patient
13:58:38Araqwhat's the problem?
13:58:59Araqarnetheduck: hmm, well if you produce wrong RC ops this could happen I guess
13:59:43Araqyou know about -d:useSysAssert -d:useGcAssert, right?
14:00:32arnetheduckyeah, doesn't complain
14:00:39arnetheduckok, I
14:00:59arnetheduck'll dig in then
14:01:17cheatfateEEE_, i think you can find more his contacts here: http://picheta.me/aboutme.html
14:01:21arnetheduckwould it happen if global gc roots are added?
14:01:49EEE_cheatfate: thank you.
14:01:55Araqer, you didn't add markers for globals?
14:02:19Araqthen only the RC'ing GC can work somewhat with GC_disableMarkAndSweep
14:02:22arnetheduckno, you mentioned they might be.. redundant
14:02:39Araqno, I said the markers are redundant
14:02:47Araqexcept for the global markers
14:03:48arnetheduckoh. I did it the other way around ;)
14:08:13def-EEE_: the email address listed there doesn't work anymore iirc
14:08:45EEE_what do you mean?
14:08:52arnetheduckhm, tnew.nim doesn't have any global markers though, must be something else
14:09:32*Ven_ joined #nim
14:09:58def-EEE_: dom96's website is a bit out of date I believe
14:10:24EEE_Thanks
14:10:35arnetheduckhm, ah.. I think I know, assignments probably need an inc ref sometimes
14:14:10Araqan assignment is an incRef/decRef pair
14:14:39Araqdon't do the decRef first, that would be wrong for self-assignments
14:40:46*EEE_ quit (Ping timeout: 250 seconds)
14:45:25*girvo joined #nim
14:45:28*girvo_ joined #nim
14:49:37*girvo quit (Ping timeout: 244 seconds)
14:49:42*EEE_ joined #nim
14:50:36*girvo_ quit (Ping timeout: 272 seconds)
15:09:01EEE_Is dom96 here, now?
15:20:03*GangstaCat joined #nim
15:20:49Araqnope
15:21:02Araqcan I help you instead?
15:25:31EEE_I just want to apologize to him, because in Nim forum I offensively replied his comment.
15:26:39EEE_What do you suggest, Araq?
15:27:43Araqconsider it done. he will read this.
15:27:50*zacts quit (Ping timeout: 260 seconds)
15:28:28*Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
15:30:35EEE_dom96: It's BP (from Nim forum), I'm very sorry about offensive replies on Nim forum.
15:30:53*EEE_ quit (Quit: Page closed)
15:32:20Araqdummdidumm, how can I get a gcc cross compiler to hitachi 8300
15:32:44*Ven_ joined #nim
15:32:52AraqGCC 2.95 doesn't build anymore, it doesn't even use C prototypes (wtf?)
15:36:38*michael_campbell joined #nim
15:41:52*zacts joined #nim
15:46:21*girvo joined #nim
15:46:24*girvo_ joined #nim
15:50:33*girvo quit (Ping timeout: 240 seconds)
15:51:27*girvo_ quit (Ping timeout: 264 seconds)
15:58:07*zacts quit (Ping timeout: 250 seconds)
16:01:45*nsf joined #nim
16:02:01*arnetheduck quit (Ping timeout: 252 seconds)
16:03:37elroodAraq, you bite the bullet, let go of the tiny linux distribution limitation, set up debian or fedora, install the appropriate debs or rpms, h8300-hitachi-hms or rcx-egcs or whatever they're called, and be done with it
16:12:06*zacts joined #nim
16:12:17*yglukhov quit (Remote host closed the connection)
16:24:09*yglukhov joined #nim
16:28:22*yglukhov quit (Ping timeout: 250 seconds)
16:34:01Araqelrood: did that, cannot find the deb packages though
16:38:46elroodhttps://packages.debian.org/jessie/gcc-h8300-hms ? although they should be more comfortably available via aptitude or synaptic
16:40:42elroodhope those are the right ones for your purpose, as i have no clue what you're trying to accomplish, let alone any special competence on the matter, just some google-fu
16:46:23*Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:47:13*girvo joined #nim
16:47:14*girvo_ joined #nim
16:51:46*girvo_ quit (Ping timeout: 250 seconds)
16:51:46*girvo quit (Ping timeout: 250 seconds)
16:59:59*yglukhov joined #nim
17:04:03*yglukhov quit (Ping timeout: 240 seconds)
17:08:20*fredrik92 joined #nim
17:11:20*Trustable joined #nim
17:11:39*fredrik92 left #nim (#nim)
17:25:38*CrystalBlu joined #nim
17:29:47*TheLemonMan joined #nim
17:37:00*PMunch quit (Quit: leaving)
17:40:00*akaisora quit (Read error: Connection reset by peer)
17:42:28*sdw joined #nim
17:47:29*desophos joined #nim
17:48:05*girvo joined #nim
17:48:06*girvo_ joined #nim
17:52:18*CrystalBlu quit (Quit: Page closed)
17:52:33*girvo_ quit (Ping timeout: 240 seconds)
17:52:33*girvo quit (Ping timeout: 240 seconds)
18:03:20*alpha joined #nim
18:03:44*alpha is now known as Guest96452
18:05:20*lazypenguin joined #nim
18:21:09*EEE_ joined #nim
18:22:11*Guest96452 quit (Quit: Page closed)
18:22:58EEE_Araq, we can inline assembly in Nim without any problems, right?
18:25:21Araqright.
18:27:38Araqhttp://nim-lang.org/docs/manual.html#statements-and-expressions-assembler-statement
18:28:23Araqelrood: no luck, the assembler code doesn't compile with more recent GCC
18:29:11EEE_Is dom96 here, now?
18:29:27EEE_does he know that I'm sorry
18:30:57Araqhe is still in italics
18:32:01EEE_Araq, I'm truely sorry.
18:32:35Araqget over it please. much worse is that you claimed my compiler is not a real compiler because it generates C
18:33:25Araqgenerating (unoptimized) assembler is *easier* to do :P
18:33:43EEE_but it does generate C code.
18:34:20cheatfateEEE_, you need to know definition of the compiler: "A compiler is a computer program (or a set of programs) that transforms source code written in a programming language (the source language) into another computer language (the target language), with the latter often having a binary form known as object code."
18:34:47cheatfateEEE_, So Nim is a compiler
18:35:02EEE_cheatfate, Nim is a translator
18:35:10EEE_and GCC is a compiler
18:36:06cheatfateEEE_, there even no such term "Translator"...
18:36:10EEE_I have master degree in Computer Systems, and now you are telling what is a compiler.
18:36:26elroodyou seem to be really intent on making matter worse instead of really apologizing to anyone here, are you? ;)
18:36:48EEE_I own Mr. dom96 apologize.
18:36:51cheatfateI have master degree too, and what?
18:37:10TheLemonMannow kiss
18:37:57EEE_Nim compiler translates Nim code (high-level code) to C (high-level code)
18:38:19EEE_So it's very clear that Nim isn't really a compiler
18:38:58cheatfateEEE_, please check wikipedia... for term "compiler"
18:39:11EEE_Do you even how hard it is to create a compiler?
18:39:20renesacif I call nim c hello.nim I get object code out of the nim compiler, I cdon't care what tools it calls inside
18:39:41EEE_It's harder than you ever thought.
18:39:42renesacand if you want to be pedantic you can call it a transpiler to C, but what does it matter anyway?
18:41:33EEE_So you all thinking that Nim compiler and Clang are the same thing?
18:41:52renesacclang translates to llvm intermediate language
18:42:14renesacnim also has a llvm transpiler (expelimental)
18:42:20renesac*experimetnal
18:43:50elroodEEE_, just as a thought experiment, do clang or gcc cease being compilers when they generate some kind of ir and leave the generation of machine code to a latter stage in the toolchain? are javac or vcc compilers if they generate bytecode?
18:44:12elroodor is this perhaps just a separation of front- and backends?
18:44:43elroodand, on a related notice, should someone be able to return his degree if people come to the conclusion that he doesn't deserve it?
18:44:50EEE_The thing is very clear, Nim is NOT a real compiler.
18:44:59EEE_Why don't you get it?
18:45:02EEE_WHY?!
18:45:13Araqit's a real compiler.
18:45:25Araqit does everything a "real" compiler does.
18:45:27elroodthe one thing that's very clear here is that someone in this irc channel is very hardheaded
18:45:31renesacEEE_: answer elrood
18:45:39EEE_Does it generate machine code?
18:45:41Araqincluding generating code that's hard to decipher ;-)
18:45:55EEE_But by external REAL compiler.
18:46:50Araqnow, let's get back to the important topic. Should I give up and buy an NXT?
18:46:58Araqor an EV3?
18:47:36lazypenguinFor what purpose?
18:47:44renesacAraq: : probably easier than using gcc 2.x
18:48:22EEE_Araq, with all due respects, but creating a compiler is one of the HARDEST PROGRAMMING TASK.
18:48:39Araqno, it's not.
18:48:50Araqgenerating *optimized* code is hard.
18:48:51*girvo joined #nim
18:48:52*girvo_ joined #nim
18:49:08Araqgenerating some assembler code that runs is not really hard
18:49:18TheLemonMangenerating *optimized* *working* code is even harder
18:49:29EEE_I'm am not talking about toy compiler like Atari BASIC.
18:49:51lazypenguinEEE_, please kindly share your compiler code
18:49:53cheatfateEEE_, Basic is not a compiler... its an interpreter...
18:50:21cheatfateFirst basic compiler was QBasic
18:50:34EEE_BASIC has both compilers and interpreters.
18:50:52*Jesin joined #nim
18:51:05cheatfateBut you calling Atari BASIC as `toy compiler` but it is not a `compiler`
18:51:22EEE_Whatever.
18:51:43EEE_BASIC is dead, now.
18:51:53EEE_even VB
18:52:52EEE_But understand, a real compiler does not rely on an external compiler.
18:53:03*girvo_ quit (Ping timeout: 240 seconds)
18:53:03*girvo quit (Ping timeout: 240 seconds)
18:53:17renesaca real compiler has a front end and a back end, and maybe some more stages
18:53:18cheatfateEEE_, Java is compiler or not?
18:53:28elroodperhaps dom96 had better been here earlier. tomorrow there might be more people to apologize to
18:53:31lazypenguindef-, saw your comment thread about using re over nre to speed up regex yet documentation states re is deprecated. Is that still the case?
18:53:39renesacwhat does it matter if they are separate processes?
18:54:11EEE_I tought everything about Java before you even born.
18:54:19Araqlazypenguin: I use re for my new code and dom96 shows re in his book. I think we need to de-deprecate it.
18:55:10lazypenguinThanks for the clarification Araq
18:57:27Araq"The RCX is so out of date as to be problematic." pfff
18:57:45Araqso EV3 even runs a Linux :O
18:59:35*EEE_ left #nim (#nim)
19:01:35Araqhmmm "Replace LEGO NXT/EV3 with the Raspberry Pi-BrickPi duo for more functionality." sounds like what I need
19:07:11*EEE_ joined #nim
19:08:27EEE_cheatface, Let me ask one question, if you are saying that Nim is a real compiler and do everything that a real compiler do (like Clang), then why it relies on an external C/C++/Obj-C compiler?
19:09:07renesacclang relies on llvm
19:09:22EEE_Just answer the question
19:09:39renesacwe are not interested in building a optimizer
19:09:59EEE_Can just answer the fucking question, bitch.
19:10:02renesacthe nim compiler use gcc or clang as a backend
19:10:20renesacoptmizer back end
19:10:30Araqthe answer to that question is: "real" compilers are allowed to depend on external tools.
19:10:45AraqGCC calls the GNU assembler, for instance.
19:10:50EEE_Nim can do nothing without an external compiler.
19:11:03AraqGCC can do nothing with GNU asm.
19:11:08Araq*without
19:11:20EEE_For god's sakes, why don't understand? WHY?!
19:11:49renesacEEE_: why it is so important for you?
19:11:53renesaceasy trolling target?
19:11:56AraqI do understand.
19:12:06AraqI simply disagree with you.
19:12:12cheatfateEEE_, Nim is fully satisfies official definition of word "compiler", all other terms like "translator", "toy compiler" or "real compiler" is just words which i think was invented in University, where you get your graduation...
19:12:45EEE_Don't you dare talk about my teachers.
19:12:50Araqkeep it civilized please.
19:12:57EEE_Okay.
19:13:32Araqthe point is: your "definition" seems to include "must produce binaries directly"
19:13:42EEE_Yes!
19:13:46EEE_Finally!
19:13:50Araqbut there is no commonly acknowledged definition which does include this property
19:13:56def-EEE_: The definition of wikipedia disagrees with you
19:14:01def-https://en.wikipedia.org/wiki/Compiler
19:14:31Araqand many compilers don't do this.
19:14:34EEE_The point is that Nim does not produce binaries directly.
19:14:46renesacas I already said, "nim c hello.nim" does produce a binary directly for me, I don't care if it calls GCC, or if GCC calls GNU assembler
19:14:48EEE_It's seeks for help from other compilers
19:14:51renesacprogrammers like to reuse code
19:14:59Araqofc it would be cool to get rid of all these dependencies
19:15:05renesacif we have perfectly good optimizers, why not use them?
19:15:09elroodEEE_, if you want to do yourself a favor, brush up on your definitions of what a compiler is, have a look at the conceptual design and interlocking parts of other compilers, read up on the difference between a specification and an actual implementation and what implementation details are, get some sleep and think things over, and then return
19:15:09cheatfatePython can make binaries with Py2EXE, but Python still interpreter, Java can make binaries but it still interpreter
19:15:14Araqbut it's simply not required in order to have a "real" compiler.
19:15:49EEE_rensac you may not care about GCC, but the fact is that Nim can do nothing with that GCC
19:16:04renesacand gcc can't do anything w/o gnu assembler
19:16:08Araqfyi we can bundle "tiny C" directly with Nim making it a "real" compiler
19:16:28EEE_But the same group who created GCC, created GNU asm
19:16:52renesacso GDC isn''t a real compiler?
19:17:05renesacbecause the D people wrote the front end, and GNU people wrote the back end?
19:17:13renesacor rust isn't a real compiler?
19:17:30renesacbecause the rust people are not the llvm people?
19:17:40EEE_does Rust rely on external compilers?
19:17:50renesacthey only wrote a front-end that translates their language to llvm languagte
19:17:54renesaclike nim have
19:18:47renesacand why do you care if the communication between the front end and backend is via a .c file or via api calls?
19:19:20lazypenguinFurthermore, those "real" compilers compile a language down to machine code...which ultimately is a hardware-dependent programming language...
19:19:21elroodso, the really important and discerning difference here is that gcc isn't available as a library as llvm is, and that Araq is not related to rms, is it? *g
19:19:26renesacyou still haven't answered that
19:19:29EEE_You are saying that GNU GCC relys on GNU ASM, but GNU ASM is assembler not compiler. but if you are saying that Nim is a compiler, then why it relies on another compiler, why it does not do all the fucking by itself.
19:19:32elroodfun *g
19:19:33EEE_end of speech.
19:19:37renesacfinally
19:19:48EEE_elrood, GaFY (Go and Fuck Yourself)
19:20:06lazypenguinEEE_ do you know what assembler is?
19:20:16Araqkeep it civilized!
19:20:22EEE_Okay
19:20:30AraqI never ban anybody here.
19:20:46EEE_Okay
19:20:53Araqand I don't intend to change that.
19:21:02EEE_Another okay.
19:21:27Araqand there is nothing to dicuss anymore anyway. We disagree.
19:21:34Araqbig deal, can happen.
19:21:42elroodyou're basically just making a fool out of yourself here, EEE_. if that's what you were after, well, you succeeded with flying colors, congratulations
19:22:49cheatfateAraq, but he looks like chatbot
19:24:25*benwbooth quit (Ping timeout: 252 seconds)
19:24:36EEE_I wasted a huge time here.
19:24:40*EEE_ quit (Quit: Page closed)
19:25:24vktecYes, yes you did
19:25:26vktec:D
19:25:47renesacfor many people, that is kinda the definition of a troll...
19:25:59vktecYup
19:26:05lazypenguinNah, he believed what he was saying
19:26:10vkteclazypenguin: True
19:26:19cheatfatelazypenguin, bots do the same :)
19:26:32vktecHahahaha!
19:46:36*ekarlso- joined #nim
19:47:29*Demos joined #nim
19:48:06Demoshey. How does the OpenGL loader work. I see a call to nimLoadProcs0 and I'm not sure where that's defined?
19:49:50*girvo joined #nim
19:49:53*girvo_ joined #nim
19:54:03*girvo quit (Ping timeout: 240 seconds)
19:55:15*girvo_ quit (Ping timeout: 276 seconds)
20:00:45*gokr joined #nim
20:08:18*yglukhov joined #nim
20:13:05sdwAraq: real language authors have beards. GET ON IT ;)
20:14:09sdwhttp://www.wired.com/2012/06/beard-gallery/
20:23:37*Kingsquee joined #nim
20:32:24elroodnow imagine g.v.rossum, s.p.jones, r.hickey, w.bright, j.backus or m.odersky with a beard
20:34:08AraqDemos: it ends up calling a compiler generated function
20:34:30Araqsdw: occasionally I have a beard :P
20:34:39Demoshow does said compiler generated function work?
20:35:23Araqfoo = getProcAddr(...) for every 'foo' that you actually used in your program
20:35:44michael_campbellAll, when I paste in the array example from the tutorial.1 docs, I get odd output. Is this an error on my part? It is this line that doesn't behave like I expect (or is documented):
20:35:48michael_campbellecho repr(level) # --> [on, fastBlink, slowBlink, off]
20:35:57michael_campbellWhat I get is:
20:36:07michael_campbell[4295099393 (invalid data!), 16777732 (invalid data!), 11258999068491778 (invalid data!), -19659267904634624 (invalid data!)]
20:36:39michael_campbell0.14.2, ubuntu 14.04, if that matters
20:37:05michael_campbellAnd, the behavior changes if I use -d:release
20:37:08renesachttps://github.com/nim-lang/Nim/blob/devel/contributing.rst <-- here it tells to use imperative form, but don't end the documentation comments with a period
20:37:50renesachttps://github.com/nim-lang/Nim/blob/devel/docstyle.rst <-- here it tells to end in periods but always use the present tense
20:37:58Demosdoes it just do it for all functions or just ones from OpenGL?
20:38:25michael_campbellIf I output the array elements one at a time, all is well but repr(level) gives the invalid data issue.
20:44:15*yglukhov quit (Remote host closed the connection)
20:53:25*chrisheller joined #nim
20:53:50*vendethiel quit (Quit: q+)
20:54:37AraqDemos: just for the ones from OpenGL
20:54:53Araqmichael_campbell: I think it's a regression. 'repr' is notoriously hard to get right
20:55:07AraqI would have removed it from the language long ago if it weren't so popular
20:56:07*yglukhov joined #nim
20:56:38*matkuki joined #nim
20:57:54Araqyglukhov: sorry we kicked your ass :P (2:0)
20:58:35gokrAraq: But... it was very close at times :)
20:58:37*benwbooth joined #nim
21:00:13gokrAraq: Did you figure out that a.nim thing?
21:00:54*yglukhov quit (Ping timeout: 276 seconds)
21:00:57Araqmust be some nice internal corruption
21:01:05Araqmost of the time it works, even on your machine
21:01:23gokrIt does?
21:01:49gokrI felt it was 100% failing.
21:03:42Araqafter 'koch temp' I couldn't reproduce it any longer
21:03:53Araqno matter if a.out exists or not or nimcache
21:04:07gokrYou mean "a" (not "a.out")
21:04:13Araqyes
21:04:25cheatfateAraq, that was predictable :) (2:0)
21:04:26gokrhmm
21:08:01gokrSo... your advice to me is to... use "import modules/a, modules/b etc"?
21:10:02Araq'koch boot' without -d:release and see if it makes a difference
21:10:19gokrOk, will test
21:13:20gokrSlower :) but still fails
21:14:20Araqreally?
21:14:30Araqwell compile with --verbosity:3 then
21:14:37Araqand gist the stack trace
21:15:47gokrhttps://gist.github.com/gokr/8570708b3fc8bb42215497e25c892da1
21:17:10gokrBut if there is a file called "a" when I compile - then it works.
21:18:45*Salewski joined #nim
21:20:43gokrhmmm, I changed to --path:"b" and... then it works.
21:21:19gokrThat feels like full circle - why did I have an issue with that when all this began...
21:23:02SalewskiHave just installed Nim 0.14.2. Nimsuggest install instructions at http://nim-lang.org/docs/nimsuggest.html seems to be still outdated?
21:26:06gokrAraq: Ok, so --path:"b" seems to fly, but not --path:"$projectdir/b"
21:26:37gokrWith the latter - then this oddity with the "a" file being present starts.
21:26:47AraqSalewski: sorry, yes. I need to update them
21:27:09Araqhowever, that's not tied to the release cycle, so it shouldn't be much work
21:28:00Araqgokr: --path:"b" doesn't make much sense though, does it?
21:28:12Araqand as I said, I'm pretty sure it's not deterministic
21:28:19gokrNo? That's the name of the dir?
21:28:26Araqis it?
21:28:32gokryeah.
21:28:33AraqI thought it's "modules"
21:28:46gokrWell, in spry - yes. But in the test.zip it's called "b"
21:28:56Araqhmmm
21:29:47gokrI think my issue with spry is solved by adding a --path:"$projectdir" - since I might actually have misunderstood the original error.
21:29:57gokrBut the test.zip is still confusing to me.
21:31:51*Salewski quit ()
21:32:01*yglukhov joined #nim
21:36:25*yglukhov quit (Ping timeout: 252 seconds)
21:43:05*matkuki quit (Quit: ChatZilla 0.9.92 [Firefox 47.0/20160604131506])
21:47:15gokrAraq: My conclusion is that... --path:"$projectdir/blabla" - creates the issue. But --path:"blabla" seems to work fine.
21:47:16*TheLemonMan quit (Remote host closed the connection)
21:50:43*girvo joined #nim
21:50:46*girvo_ joined #nim
21:54:18Araqgokr: ok, that's good enough for now
21:54:27Araqbut I will look at i again soon
21:55:03*girvo quit (Ping timeout: 246 seconds)
21:55:10*girvo_ quit (Ping timeout: 250 seconds)
21:57:15*trusion quit (Quit: Leaving)
21:59:04vktecHas anyone ever tried to write a terminal in Nim?
22:00:40Araqvktec: *cough* my NimEdit includes a terminal
22:01:04Araqbut it's not open source and I dunno if you're interested in an SDL2 based implementation
22:02:43vktecI was wondering if there was a starting point I could work from, as I'm having a hard time finding a decent terminal...
22:06:18*Nimian joined #nim
22:06:43*PMunch joined #nim
22:07:00Araqhi Nimian welcome
22:07:14Araqvktec: hmm, it surely is a starting point
22:07:27NimianIs Nim truly the world's best system programming language (for OS, Kernel...)?
22:08:10NimianBy the way, nice name,huh? I chose Nimian, like Asian, Brazilian...
22:08:34Araqyou can write OSes in it, but I cannot tell if it's the *best* language for that
22:08:42gokrEntering this channel with such a question smells trolling all over it.
22:09:02*Demon_Fox joined #nim
22:09:41NimianAraq, you are the most active programmer I've ever met.
22:10:28Araqnah, most of the time I am quite unproductive
22:11:27NimianYour languages is like PL/1 (ALGOL + COBOL + FORTRAN), but (C + Python + LISP)
22:12:46vktecAraq: Would you be willing to share some of the code?
22:14:30Araqvktec: get a bitbucket account and I'll give you access
22:14:59NimianIsn't it GitHub?
22:16:08AraqNimian: NimEdit is on bitbucket, my only non-open-source project
22:16:14vktecAraq: Thanks, 1 sec
22:16:46NimianI saw NimEdit in your video on YouTube,
22:17:08NimianBut I think Aporia IDE is much better?
22:18:33Araqpfff
22:18:45NimianWhat?
22:19:39NimianAraq: I love Nim, and want to translate Nim's tools to Arabic and Kurdish, but how can I do that?
22:19:49NimianLike Aporia IDE.
22:20:28Araqgood question.
22:20:46AraqGTK based apps have some means to do that
22:21:05Araqbut I don't know how it works and whether Aporia needs to be patched for this (I think it does)
22:22:17NimianWhat about if I write meanings of all words and sentences and I send it to Mr. dom96?
22:22:55vktecAraq: Okay, I had to reset my password, not used BitBucket in ages :)
22:23:10vktecMy username is samadivk
22:25:18NimianAraq: Is there anyway for me to translate Aporia IDE to Arabic and Kurdish?
22:25:36NimianAraq: I really want to help Nim in any way.
22:25:40*gokr quit (Ping timeout: 264 seconds)
22:27:00AraqNimian: can't hurt but wait what dom96 says about it
22:28:30PMunchNim 0.14.0 just dropped in the Manjaro repositories :)
22:29:08cheatfatedom96 is really wanted today :)
22:30:02Demosugh I hate windows so much
22:30:40NimianDemos: not me
22:30:50DemosI mean in general
22:30:52*Kingsquee quit (Quit: https://i.imgur.com/qicT3GK.gif)
22:31:02Demosright now I'm trying to get an open source library to build
22:31:15NimianDemos: All my collegue hate Windows
22:31:44Demosin general I'm fine with it, but the whole shared library situation is a clusterfuck
22:31:52NimianProgrammers hate closed-source softwares
22:32:59AraqPMunch: why not 0.14.2?
22:33:33PMunchAraq, the software in the Manjaro repos are a couple of days behind the Arch repositories to ensure stability
22:33:44PMunchWhat's new in .2?
22:34:01Araqfixes a critical regression concerning the "roof" operator
22:34:12Araqa[^2]
22:34:22NimianAraq: NimEdit translateable?
22:34:48AraqNimian: it doesn't have any text that could be translated ... :-)
22:35:04NimianHahahahaha, you are right :)
22:35:14NimianI did not notice that
22:36:24NimianAraq: I'm sure that NimEdit does not use GTK+, what does it use for GUI?
22:36:35AraqSDL2, as I said.
22:37:49NimianIs it a native GUI written in Nim?
22:38:18NimianI googled it, but I didn't get anything.
22:39:12Araqhttps://www.libsdl.org/ ?
22:41:48NimianAraq: Why you did not use GTK+ or Qt?
22:43:09Araqcause it was a proof of concept "immediate mode UI"
22:45:16AraqI like full control, gimme putPixel() and I can write an editor on top of that :-)
22:45:53NimianAraq: What is more beautiful than Qt for a programmer?
22:48:30Araqdunno. something that doesn't require its own preprocessor? :P
22:48:39*Trustable quit (Remote host closed the connection)
22:48:56NimianAraq: Where is Mr. Dom96?
22:49:44Araqin space.
22:50:07Nimianday-off?
22:50:34Araqeverything is in space.
22:50:50Araqbut you should translate one of Nim's tutorials / manuals
22:50:58Araqnot "Aporia".
22:51:12Araqprogrammers will be able to press that few buttons in english.
22:52:34NimianYes!
22:52:49NimianI can translate manuals or Nim in Action
22:53:34NimianI will contact dom96 about Nim in Action.
22:54:09Araqbetter start small.
22:54:19Araqtut1 comes to mind.
22:54:38*girvo joined #nim
22:54:39*girvo_ joined #nim
22:56:03vktecI'd just like to say, thanks for being an awesome community guys.
22:56:27NimianAraq: I will start translating official Nim Tut1 and Tut2 to Arabic and Kurdish, but I will be proud if you make me an official Nim developer.
22:58:57Araqjust create PRs and at some point you're given write access to the repo.
22:59:15Araqand then you are an "official" Nim developer.
22:59:40NimianThanks, but what is "RPs"?
22:59:58Araqpull requests
23:00:04NimianGitHub?
23:00:12*PMunch quit (Quit: leaving)
23:04:01Araqyes
23:04:53NimianAraq: i see tut1 and tut2 on Nim's GitHub pages, but can you please tell me what I should exactly?
23:05:31NimianShould download tut1 and tur2 and then translate it after that send it to you?
23:07:18Araqwork with the tut1.rst and tut2.rst files
23:07:41NimianOkay, got it. Sorry, I know you are very bussy.
23:07:50Nimian""...busy
23:07:54Araqtranslate them to tut1_arabic.rst etc. and send them to me
23:08:02NimianOkay
23:08:36NimianThank you for giving this opportunity.
23:11:26*Nimian left #nim (#nim)
23:12:28*girvo quit (Quit: Lost terminal)
23:12:28*girvo_ quit (Quit: Lost terminal)
23:15:08*elrood quit (Quit: Leaving)
23:19:11*Matthias247 quit (Read error: Connection reset by peer)
23:28:53cheatfateAraq, looks like Nimian (93.91.194.164) and _EEE (93.91.194.93) are same `trolling` persons
23:47:08Araqinteresting bu I dn't mind
23:53:39*akaisora_ joined #nim