15:11 < ddnet-commits> [ddnet] def- pushed 1 new commit to master: https://git.io/vde3Q 15:11 < ddnet-commits> ddnet/master 94c7c8d Dennis Felsing: Use C++14 15:11 <+Learath2> deen: skipping 11 are we? :P 15:12 <+ddnet-discord> :D 15:12 <+ddnet-discord> what a huge jump 15:12 <+ddnet-discord> maybe c++17 ? 15:13 <+ddnet-discord> to new i thing 15:13 <+Learath2> should slowly start getting rid of base/tl stuff 15:13 <+Learath2> poor matricks and his nicely optimized memory structure 15:13 <+ddnet-discord> 😄 15:13 <+ddnet-discord> wouldn't be fast to rewrite teeworlds haha 15:14 <+Ryozuki> c++ has lambdas 15:14 <+Learath2> only people who want to show off seriously use lambdas :P 15:15 <+ddnet-discord> https://www.youtube.com/watch?v=OLH3L285EiY&t=1270s 15:15 <+Ryozuki> i like them :o 15:15 <+ddnet-discord> lecture about lambdas 15:15 <+Learath2> Ryozuki: you should try Scala or haskell 15:15 <+Ryozuki> i never see videos about programming, i don't like watching, reading is better 15:16 <+ddnet-discord> it's not about programming 15:16 <+ddnet-discord> it's about lamdas 15:16 <+Ryozuki> ah 15:16 <+ddnet-discord> in programming either, but generally 15:16 <+ddnet-discord> about lambdas 15:16 <+Learath2> needs a pitch change for her voice :/ 15:16 <+Ryozuki> Learath2, which one you recommend first? is scala functional also? 15:16 <+ddnet-discord> 😄 15:17 <+Learath2> there is a specific pitch that some girls speak with, it totally distracts me from everything including what they are saying 15:17 <+ddnet-discord> Im sorry : ( 15:17 <+Learath2> Ryozuki: I reccommend neither, functional languages feel like more of a toy for me tbh 15:17 <+ddnet-discord> i would tell her that 😦 15:18 <+Learath2> Ryozuki: well they do give you a nice new perspective 15:18 <+Learath2> i'd try haskell I guess, more people using it and it's hip nowadays 15:19 <+Ryozuki> i also try to learn nim but i give up easily 15:19 <+Learath2> @Savander, not your fault her voice has one specific pitch that annoys me :P 15:19 <+Ryozuki> one thing i remember is that you can make your own operands, i found that cool 15:20 <+ddnet-discord> Why does every dev type with with irclink but savander doesnt 15:20 <+Learath2> Ryozuki: nim is nice, python with the performance of C and very nice meta programming facilities 15:20 <+Learath2> also really nice that you can run nim code at compile time 15:20 <+Ryozuki> thats nice 15:21 <+Ryozuki> ill retake it :P 15:21 <+Learath2> @Ezy Savander is speaking in discord, we are talking in irc 15:21 <+ddnet-discord> Oh 15:21 <@heinrich5991> Learath2: you should learn a functional language as well, it changes the way you think :) 15:21 <+Ryozuki> hehe 15:21 <+Ryozuki> i was learning nasm these lasts 2 days 15:22 <+Ryozuki> (linux) 15:22 <+Learath2> I've had the pleasure of working with Racket last year 15:22 <@heinrich5991> deen: why C++14 as opposed to C++11? ^^ 15:22 <+Learath2> functional languages and their obsession with no side effects only pure functions nearly drove me insane 15:23 <@heinrich5991> try to embrace it :) don't work against it, try to understand how they work 15:23 <+Learath2> i understand how they work and i don't like it 15:23 <@heinrich5991> heh, that's a bold statement 15:24 <+Learath2> the extremes of everything is stupid, the obsession with OOP in java is retarded, the obsession with having no state in functional languages is also stupid 15:25 <@heinrich5991> I don't think you *understand* how they work; I don't think I *understand* how they work 15:27 <+Learath2> heinrich5991: what is there not to understand? they define functions in the mathematical sense 15:27 <@heinrich5991> to understand how you would write programs in it 15:28 <+Learath2> makes them good for mathematical concepts but also inconvenient to code on without changing your entire perspective + are not very indicative of how cpu's compute stuff 15:28 <@heinrich5991> "inconvenient to code on without changing your entire perspective" 15:28 <@heinrich5991> that's what you should try ^^ 15:28 <+Learath2> i 15:28 <+Learath2> i'd rather keep my perspective == the cpus perspective 15:29 <@heinrich5991> you can keep that as well 15:29 <@heinrich5991> but broaden your horizon ^ 15:29 <@heinrich5991> ^ 15:30 <+Learath2> I mean if you have the time, sure they are nice toys to play around with 15:31 <@heinrich5991> don't think about them like that 15:31 <+Learath2> don't expect them to perform well or be convenient for using as a general language 15:31 <@heinrich5991> try to approach new things without prejudice ^^ 15:31 <+ddnet-discord> Guys, any decisions about randomness ? 😄 15:32 <@heinrich5991> not yet, I think 15:33 <+Learath2> heinrich5991: i approached it without prejucide when i used racket, i formed some conclusions which are "they are not performant, not memory efficient, not good at writing general programs, are nice to express mathematical constructs in" 15:34 <@heinrich5991> I'd say 3 is wrong, they're good at writing general programs 15:34 <+Learath2> either haskell or rust is next on my list so it's not like i scratched them off completely 15:36 <@heinrich5991> haskell is also at most one category slower than C 15:40 <+Learath2> heinrich5991: it's not haskells fault that it's slower, recursions are not performant and hard to optimize, functional languages use a lot of it 15:40 <@heinrich5991> haskell can optimize them away 15:41 <+Learath2> some of them surely 15:42 <@heinrich5991> also, function calls aren't that expensive 15:42 <@heinrich5991> they compile to a direct jump :) that can be predicted 15:43 <+Learath2> they compile to a call unless the compiler does some clever optimizing, calls are atleast 2x worse then jmps 15:45 <+Learath2> think llvm/gcc can do tail recursion nowadays 15:46 <@heinrich5991> on cpu level, call is just a push and a jmp if you want to talk in asm terms 15:46 <@heinrich5991> but it's a direct jump so it can be predicted 15:47 <@heinrich5991> the worst thing for modern processors is mispredicted jumps AFAIK 15:49 <+Learath2> if it's tail recursion it just gets optimized to a loop anyways 15:49 <+Learath2> non-tail recursion should cause lots of mispredicted jumps 15:50 <@heinrich5991> no 15:50 <@heinrich5991> whether tail or non-tail recursion doesn't matter for mispredictions 15:50 <@heinrich5991> the if branches are what matters 15:51 <+Learath2> true nvm 15:52 <+Learath2> could run out of cpu cache \o/ 15:53 <+Learath2> the point is it's hard to think what would be performant while thinking in terms of a functional language 15:56 <+Learath2> my turn to ask questions: heinrich5991 why do you think that they are good for writing general programs while also claiming you don't understand much about them? 15:58 <@heinrich5991> because I know people who are very fluent in haskell 16:01 <+Learath2> and do these people use haskell day to day for everything? 16:01 <@heinrich5991> this one person actually only uses haskell 16:01 <@heinrich5991> and I try to get them to learn a bit more about C, but just like you, they think they don't need it ^^ 16:02 <+Learath2> can he match my claim of "I can do anything the CPU allows in C"? 16:04 <@heinrich5991> can he match the claim you tried to make up to be unmatchable? 16:04 <@heinrich5991> but probably yes 16:04 <+Learath2> apparently haskell can now do asm and your friend is a compiler 16:05 <@heinrich5991> asm isn't in C, do you want to use compiler extensions? 16:06 <+Learath2> I'm pretty sure I can hack up something in C to move the EIP around 16:08 <+Learath2> I'm fairly confident in my claim that nothing matches C that is higher level then C in flexibility thus generality 16:08 <@heinrich5991> anyway, I'm sure he can similarly make up a claim that tries to be unmatchable with C 16:08 <@heinrich5991> try rust 16:08 <@heinrich5991> try c++ 16:09 <+ddnet-discord> Guys, can you tell me how to test my hard drive disc ? 16:09 <+Ryozuki> elixir (?) 16:10 <+ddnet-discord> it's getting slower 16:10 <+ddnet-discord> :/ 16:10 <@heinrich5991> Savander: os? 16:10 <+ddnet-discord> w10 16:11 <+ddnet-discord> i mean, it worked fine, even over last year 16:11 <+Learath2> rust has the most obnoxious memory-safety rules, thus less flexible. c++ is basically c with classes that decided it no longer wanted to be c with classes so got their own compiler, but i'll give you that one 16:11 <+ddnet-discord> but that drive has over 4-5 years 16:11 <+Ryozuki> syntastic doesn't support nim? :( 16:22 <+ddnet-discord> @Savander read out the S.M.A.R.T data 16:22 <+ddnet-discord> (y) 16:23 <+ddnet-discord> everything you need to know I guess: https://en.wikipedia.org/wiki/S.M.A.R.T. 16:27 <@heinrich5991> Learath2: what about c++ or rust in response to your question? ^^ 16:28 <+Learath2> gave response about rust and c++ 16:28 <+Learath2> missed C++ b/c it used to be C :P 16:28 <@heinrich5991> rust can do the same things if you want 16:28 <@heinrich5991> you have unsafe{} 16:28 <@heinrich5991> :) 16:28 <+Learath2> besides i'm fairly sure your friend can't make a claim I can't fulfil in C and he can in Haskell 16:29 <+Learath2> given the haskell compiler is written in C 16:29 <@heinrich5991> that is indeed not an argument ^^ 16:30 <@heinrich5991> you can write a c compiler in brainfuck ^^ 16:30 <@heinrich5991> but you can't do random numbers in brainfuck 16:30 <@heinrich5991> or open files, or anything 16:30 <@heinrich5991> it would only matter if it compiled to C 16:31 <+Learath2> k, but i already made the claim that you can do anything the processor can do in C so at the very best he can match my claim 16:32 <+Learath2> wait how would you even write a c compiler in brainfuck? 16:33 <@heinrich5991> get source from stdin, output binary to stdout 16:34 <+Learath2> thought so... you know that's not what I mean when I say the GHC is written in C 16:35 <@heinrich5991> ok, waht do you mean? 16:35 <+ddnet-discord> Just question, what do you to do in so low level ? 16:35 <@heinrich5991> you mean it's compiled to C? 16:35 <@heinrich5991> I don't think that's true anymore 16:35 <+Learath2> a piece of C code can take Haskell code in and output LLVM IR 16:36 <@heinrich5991> a piece of haskell code can take C code and output ELF binaries 16:36 <@heinrich5991> (or LLVM IR if you want) 16:37 <+Ryozuki> endless war :D 16:37 <@heinrich5991> why war? ^^ 16:37 <+Learath2> you'd still need the GHC to compile said haskell code 16:37 <+Ryozuki> it's a way to say it -.- 16:37 <+Learath2> anyways they should just write the GHC in haskell already 16:39 <+Ryozuki> 1 + 2 16:39 <+Ryozuki> (ignore my last msg) 16:39 <+ddnet-discord> 4 16:39 <+Learath2> i do not believe it is possible to craft a problem that is sovable in Haskell and not in C, feel free to prove otherwise 16:39 <+Learath2> s/Haskell// 16:40 <@heinrich5991> i do not believe it is possible to craft a problem that is sovable [sic :P] in C and not in Haskell, feel free to prove otherwise 16:40 <@heinrich5991> problem a bit underspecified though 16:41 <+Ryozuki> someone here uses weechat? 16:41 <+Learath2> Ryozuki: i do 16:41 <+Ryozuki> i'm new with it, struggling with... all of it :D 16:42 <+Ryozuki> is there a way to change what channel you are viewing without /join ? 16:42 <+Learath2> Ryozuki: alt-number 16:43 <+Learath2> if you have the mouse extensions enabled you can also click on the channel 16:43 <+Ryozuki> finally :D 16:43 <+Ryozuki> how to install it? 16:44 <+Learath2> heinrich5991: yeah problem doesn't seem to be the word i'm looking for 16:45 <+Learath2> but feel free to show me a haskell function that takes a pointer and modifies the pointed-to object 16:46 <+Ryozuki> (and how to "scroll up"?) 16:46 <+Ryozuki> ah, re pag 16:47 <+Learath2> Ryozuki: can't haz mouse extensions if your distro doesn't have it compiled in their package and your terminal doesn't 16:47 <+Learath2> i'd check those 16:47 <+Learath2> if not you might need to compile weechat yourself 16:47 <+Learath2> but you better get used to the shortcuts, they are really nice :D 16:48 <+Ryozuki> yeah :P 16:49 <@heinrich5991> Learath2: https://hackage.haskell.org/package/base-4.5.1.0/docs/Foreign-Storable.html#v:poke 16:49 <+Learath2> Ryozuki: ever gave a tiling window manager a try? 16:49 <+Ryozuki> what is that? c: 16:50 <@heinrich5991> Ryozuki: windows always fill up the whole screen 16:50 <+Ryozuki> i have 2 screens, never faced that prob 16:51 <+Learath2> heinrich5991: i stand corrected, haskell does allow non pure functions then 16:51 <@heinrich5991> which problem? 16:51 <+Ryozuki> having a terminal fill whole screen 16:51 <@heinrich5991> it is an IO action, it's a pure function 16:51 <+Ryozuki> or u refer another thing? 16:51 <@heinrich5991> look at the return type ^^ 16:51 <+Learath2> Ryozuki: it's not a problem :D instead of having windows around your windows are tiled to your screen 16:51 <+Ryozuki> :o 16:52 <+Ryozuki> which one you recommend? 16:52 <@heinrich5991> what's your OS? 16:52 <+Ryozuki> debian 9 16:52 <@heinrich5991> i3 works for me 16:52 <+Learath2> https://learath2.info/i3.png 16:52 <+Learath2> like this f.e. 16:54 <+Ryozuki> :o 16:55 <+Learath2> heinrich5991: no i mean, your argument that "it is not possible to craft..." is completely correct in this case because haskell does allow non-pure functions 16:55 <+Ryozuki> that looks good 16:55 <@heinrich5991> the function is pure though 16:55 <+Learath2> Ryozuki: i thought so too but it takes some time to get used to having a billion shortcuts 16:56 <@heinrich5991> because it returns an IO () 16:56 <+Ryozuki> hmmm 16:56 <+Ryozuki> "apt-get install i3 suckless-tools" funny package 16:56 <+Learath2> switched between windowed and tiled dms for a while until i got used to it 16:56 <+Ryozuki> heinrich5991: you are also using i3? 16:56 <@heinrich5991> yes 16:56 <@heinrich5991> why do you want to install suckless-tools? 16:57 <+Ryozuki> and you recomend it more than gnome? 16:57 <+Ryozuki> https://wiki.debian.org/i3 tells me to do so 16:57 <+Learath2> heinrich5991: that function might be but haskell does allow non pure functions which means it's probably impossible to craft a problem such that it's solvable in C but not in haskell 16:57 <@heinrich5991> dunno, depends on what you want, Ryozuki 16:57 <+Ryozuki> "suckless-tools should also be installed to enable dmenu and i3status for application launching and system information respectively. " 16:58 <+Learath2> Maybe it is but I do not possess another quality of haskell that limits it which i can use to craft said problem 16:59 <+Learath2> Ryozuki: well using a tiled wm means you have no desktop and they work better on bigger screens 16:59 <+Ryozuki> i have a 24' and a 21' screen 17:00 <+Learath2> i reccommend it more then gnome but i'd reccommend anything more then gnome :P 17:00 <+Ryozuki> hmm 17:00 <@heinrich5991> gnome is also fine 17:00 <@heinrich5991> I also know a lot of people who use that 17:00 <+Learath2> yeah my issues with it is purely from a principle standpoint 17:01 <+Learath2> i don't like the bloat and i don't like that it's helping systemd take over the world 17:01 <+Learath2> kde is acceptable, openbox and lxde look cute but i've never used them personally 17:02 <+Learath2> Ryozuki: you need to try a lot of them before you choose :P 17:02 <+Ryozuki> Learath2: i see you dislike a lot of things xD 17:03 <+Learath2> I like a lot of things aswell so they balance out to make me a normal human being :P 17:09 <+ddnet-discord> Learath just like to spread his negative word instead of positive :V 17:09 <+ddnet-discord> ;D 17:12 <+Learath2> the thing is I don't like some things that are common nowadays, e.g. gnome-systemd. So it seems like I am a bitter cunt who doesn't like anything new 17:17 <+Learath2> and sometimes i'm quick to judge things so I like to discuss them over with other people to make sure I'm not missing something 17:37 <@deen> Always skip c++11, 14 was just minor fixes and it's supported in gcc, msvc and clang already 17:38 <@heinrich5991> https://msdn.microsoft.com/en-us/library/hh567368.aspx 17:38 <@heinrich5991> that doesn't look like c++14 is well-supported 17:39 <@deen> only sfinae is missing, right? 17:39 <@deen> fits my experience from work 17:39 <@deen> ah, that's 11^^ 17:40 <@heinrich5991> do you want to drop support for anything but VS2013? 17:40 <@heinrich5991> (just out of interest) 17:40 <@deen> meh 17:40 <@heinrich5991> VS2015 I mean 17:40 <@deen> then just use the stuff from 14 that keeps building on windows 17:40 <@deen> we have the ci 17:46 <@heinrich5991> sorry to bother you, but do we need 14? I'd personally prefer using the smaller standard 17:46 <@heinrich5991> it seems that c++11 has threading stuff already 17:47 <@deen> I'd prefer using the same version everywhere so I don't have to look up what features I can use :D 17:47 <@heinrich5991> at work/tw? 17:47 <@deen> anyway, just make it 11 if you want to 17:47 <@deen> yeah 17:48 <@deen> also both tw and work don't use the stl :D 17:49 <@heinrich5991> why at work? 17:50 <@deen> we have our own implementation using allocators 17:50 <@heinrich5991> ah 17:50 <@heinrich5991> the stuff does support allocators though I think 17:50 <@heinrich5991> the stl 17:50 <@deen> probably not back when our replacement was written :D 17:50 <@heinrich5991> http://en.cppreference.com/w/cpp/container/vector 17:51 <@deen> and we explicitly forbid everything without allocators 17:51 <@deen> otherwise how would you enforce it? 17:52 <@deen> and there are lots of weird corner cases about copying and moving with respect to allocators 17:52 <@heinrich5991> move constructors ._. ^^ 18:02 <+ddnet-discord> the CI has VS2015 18:04 <@heinrich5991> yep, can change to VS2013 18:05 <@deen> Learath2: why do you think functions should always have a name, even if you use them only once? 18:06 <+ddnet-discord> I don' 18:06 <+ddnet-discord> don't 18:06 <@deen> I thought you said you don'T like lambdas 18:07 <+ddnet-discord> I said only people who want to show off use lambdas iirc, and i was just fooling around then 😛 18:07 <@deen> ok 18:07 <@heinrich5991> lambdas are useful :) 18:07 <@deen> i think it's nice when you want to sort by something specific just one time, then you just make an anon. function 18:07 <@deen> and it's clear for everyone that it's not used anywhere else 18:08 <@deen> saying lambdas are bad is like saying rvalues are bad and everything should be named^^ 18:09 <+ddnet-discord> all for anonymous functions 18:11 <+ddnet-discord> does c++11/14 have foreach with lambdas? 18:11 <@deen> Learath2: Want to read something by your favorite author 18:11 <@deen> ? 18:12 <+ddnet-discord> who is my favourite author? 18:12 <@deen> https://lwn.net/Articles/250967/ 18:12 <+ddnet-discord> looks like a nice read 18:12 <@heinrich5991> Learath2: c++ foreach is without lambdas 18:12 <+ddnet-discord> why is he my fav author tho? 😛 18:12 <@heinrich5991> for(auto &x : vec) 18:13 <@deen> I think Learath2 means this: http://en.cppreference.com/w/cpp/algorithm/for_each 18:13 <@heinrich5991> ah 18:13 <@deen> that seems to support functions since forever and policy since c++17 18:14 <@deen> and you can use lambdas anywhere you would use a function I guess 18:14 <+ddnet-discord> ah yes that's it 18:14 <@heinrich5991> yes, and more 18:14 <@heinrich5991> because you can capture the environment 18:14 <+ddnet-discord> well can you really? there aren't many functions that take a function as an arg 18:14 <@deen> you can do that with a function too, heinrich5991 18:14 <@deen> Just pass everything manually :D 18:15 <@deen> Learath2: "higher-order functions" 18:15 <@heinrich5991> you can emulate it, but not with the same syntax, and not typesafe 18:15 <@heinrich5991> we always pass void *pUser for that 18:15 <@heinrich5991> but that's the opposite of type-safety ^^ 18:16 <@deen> Learath2: well, you can always write your own! 18:17 <+ddnet-discord> @heinrich5991 how do lambdas carry the environment around? what are their scope? 18:17 <+ddnet-discord> hmm, no i dea what's going on. butt 😄 yesterday i enabled cl_predict 1 18:17 <+ddnet-discord> then i disabled it 18:18 <+ddnet-discord> and ehm, my game looks laggy idk 18:18 <+ddnet-discord> wiht delays 18:18 <@deen> then enable it again 18:18 <+ddnet-discord> weird stuff 18:18 <@heinrich5991> it's on by default 18:18 <+ddnet-discord> it surely needs to carry something like pUser around in the background? 18:18 <@heinrich5991> you don't want to disable it 18:18 <@heinrich5991> Learath2: yes. but in a typesafe way :) 18:18 <@heinrich5991> you declare what it carries around in the [] of lambdas 18:18 <+ddnet-discord> hmm, i thought it was from anti ping 18:18 <+ddnet-discord> it isn't ? 18:18 <@heinrich5991> no 18:19 <@heinrich5991> cl_predict is vanilla 18:19 <+ddnet-discord> really ? 😄 18:19 <+ddnet-discord> im stupid 18:20 <@heinrich5991> deen: does that fall under "users even disable stuff in the console and don't know what's wrong?" :P 18:20 <@heinrich5991> you said that the other day ^^ 18:20 <+ddnet-discord> god knows how they implemented that. Sounds scary 😛 what happens if the variable goed out of scope? 18:21 <@deen> yes 18:21 <+Ryozuki> i'm sure the one who implemented that knows and not god ^^ 18:21 <@heinrich5991> Learath2: same as with other parameters. if you pass it by reference, it's bad, if you pass it by value, then not 18:21 <+ddnet-discord> had a guy enable gfx_noclip and wonder why clipping caused problem 18:21 <+ddnet-discord> s 18:21 <+ddnet-discord> disabled 18:21 <@heinrich5991> ohhh fuck 18:21 <+ddnet-discord> he disabled that thing 18:22 <+ddnet-discord> or 18:22 <@heinrich5991> I think that must have been the problem with my teeworlds installation many years ago 18:22 <@heinrich5991> a disabled gfx_noclip ^^ 18:22 <@deen> Learath2: Ooops, mixed up one unpopular linux dev with another one :D 18:22 <@heinrich5991> ulrich drepper: author of glibc btw 18:22 <@heinrich5991> knows his stuff, sometimes makes unpopular decisions :) 18:24 <+Ryozuki> http://en.cppreference.com/w/cpp/utility/functional/function 18:24 <+ddnet-discord> btw, what was purpose on gfx_noclip ? 18:24 <+ddnet-discord> testing i'd guess 18:24 <+ddnet-discord> deen who did you think it was? 😛 18:24 <@heinrich5991> lennart poettering probably 18:25 <+ddnet-discord> lennart poettering is not smart enough to write any article 18:25 <@heinrich5991> talking about prejudices :D 18:25 <+Ryozuki> https://de.wikipedia.org/wiki/Ulrich_Drepper yay, only in german 18:26 <@deen> after my audio has problems on windows and android I'm not that unhappy with pulseaudio anymore 18:26 <@heinrich5991> how dare you not insult poettering's software 18:26 <@heinrich5991> you must be a bad person :P 18:26 <@heinrich5991> /s 18:26 <+Ryozuki> is pulseaudio bad? 18:26 <+ddnet-discord> poettering is the worst thing to happen to linux in a century 18:27 <@heinrich5991> ask Learath2 if you want to hear yes 18:27 <+Ryozuki> Learath2, i expected u to say that :D 18:27 <@heinrich5991> :) 18:27 <+ddnet-discord> i'll say it's bad and heinrich and deen will prolly say its a blessing 18:27 <+Ryozuki> Learath2, is there someone who did something good for linux? 18:27 <+Ryozuki> in this century 18:27 <+ddnet-discord> Linus torvalds obv 😛 18:27 <+Ryozuki> :D 18:28 <+Ryozuki> they are all red hat developers 18:28 <+Ryozuki> Learath2, u consider red hat bad for linux? 18:29 <+ddnet-discord> have not made my mind up about red hat yet 18:29 <@deen> since I can't even remember these guys' names I think it's pretty obvious I don't care about who to like and who not :D 18:29 <+ddnet-discord> because I don't like to judge stuff I know nothing about 18:29 <@heinrich5991> you don't know linus torvalds? 18:29 <+Ryozuki> (i do) 18:29 <@deen> i didn't mix that one up 18:31 <+Ryozuki> if tux the penguin is the mascot of linux, what's windows mascot? 18:32 <@heinrich5991> the flag is the logo of windows 18:32 <+Ryozuki> a flag with 4 colors 18:32 <+Ryozuki> so creative :/ 18:32 <@heinrich5991> not anymore 18:32 <+ddnet-discord> look at poetterings face, it's the perfect punch me face 18:32 <@heinrich5991> it's only blue now 18:32 <+Ryozuki> "modern" 18:34 <@deen> Learath2: if you don't like his software, go join a project that develops an alternative. if you don't like him, don't go on a date with him 18:34 <+ddnet-discord> can't possibly compete with something loved by so many people 18:34 <+ddnet-discord> when fanboyism gets involved people don't think logically anymore 18:35 <@heinrich5991> are you sure it's only fanboys who aren't opposed to systemd? 18:35 <@deen> I don't think he has fanboys, always just read negative stuff about him 18:35 <+ddnet-discord> there are ofc some people who aren't fanboys 18:35 <+ddnet-discord> those can be converted but they are there for convenience 18:36 <+ddnet-discord> nothing i can make beats PnP systemd 18:36 <+ddnet-discord> even if i do i'd only get some of the convenience people because the rest just dont know how to linux 18:38 <+Ryozuki> what means "how to linux"? 18:38 <+ddnet-discord> I mean the people who are here to see the "Year of the linux desktop" 18:38 <+ddnet-discord> they just care if it works 18:39 <+Ryozuki> usually competitions involves making better things to win 18:39 <+ddnet-discord> usually 18:40 <+ddnet-discord> in this case poettering has people that likes him in ubuntu and debian so it's more of a leverage game 18:41 <+ddnet-discord> and it seems that wherever debian/ubuntu goes linux follows nowadays 18:42 <+ddnet-discord> so yes, get me friends who will push my software in board decisions, some fanbase with pitchforks preferably, and i'll fork OpenRC and beat systemd 18:43 <+ddnet-discord> also need a development team to help me dig out the remnants of the software systemd absorbed from that mess of lines they call code 18:50 <+ddnet-discord> i guess noone wants to have the systemd debate tonight 19:25 <@heinrich5991> ddnet has 7.5k commits 19:25 <@heinrich5991> exactly :) 19:25 <+ddnet-discord> nice 19:26 <+ddnet-discord> A biiiig project 19:26 <+ddnet-discord> do you know how many there was before refactor trunk to master or w/e 19:26 <+ddnet-discord> i saw, thjast linux kernel has 500k commits ;oll 19:26 <+ddnet-discord> :ooo 19:26 < ddnet-commits> [ddnet] heinrich5991 opened pull request #872: Change to C++11 in `CMakeLists.txt`, `bam.lua` (master...pr_ddnet_cpp11) https://git.io/vdeQg 19:27 <+ddnet-discord> also should we start phasing out base/tl? 19:27 <@heinrich5991> deen has 2271 commits 19:29 <@heinrich5991> dunno 19:30 <@heinrich5991> I think proper threading would be a priority 19:30 <+ddnet-discord> proper as in using c++11 instead of pthreads? 19:30 <@heinrich5991> proper as in we don't have to fiddle around with named semaphores on macos 19:31 <@heinrich5991> c++11 is also more widely supported, windows as well ^^ 19:31 <+ddnet-discord> @heinrich5991 does c++11 have semaphores? 19:32 <@heinrich5991> good question 19:32 <@heinrich5991> I don't see them 19:32 <@heinrich5991> I only see condition variables and mutexes 19:32 <@heinrich5991> but atomics! 19:32 <@heinrich5991> :) 19:34 <+ddnet-discord> heinrich5991: also how do you think we should handle system.c? 19:35 <@heinrich5991> we could add system.cpp :) 19:36 <@heinrich5991> what did we use semaphores for? 19:38 <+ddnet-discord> to avoid spinlocks in the queues we have 19:38 <+ddnet-discord> fetcher and CJobs 19:38 <@heinrich5991> for queues, ok 19:40 <+ddnet-discord> well there has to be another good way or else more people would complain on osx 19:40 <@heinrich5991> yea, can probably implement it using condition variables 19:41 <+ddnet-discord> well atomics guarantee complete read writes right? 19:41 <@heinrich5991> yes 19:41 <+ddnet-discord> couldn't we just use an atomic int as a semaphore? 19:41 <@heinrich5991> how do you wait for an atomic int to change? 19:41 <@heinrich5991> can't, really 19:42 <+ddnet-discord> oh nvm what i thought about gives you a spinlock again 19:49 <+Ryozuki> Savander, it actually has 705k 19:49 <+ddnet-discord> o.O 19:50 <+ddnet-discord> https://github.com/torvalds/linux 21:04 <+ddnet-discord> http://www.wasz.ovh/img/GFc9m6yl87131 21:04 <+ddnet-discord> :/ 21:05 <+ddnet-discord> no errors in SMART, no damaged blocks 21:05 <+ddnet-discord> ;/ 21:08 <+eeeee> i think concurrent queues might get added to the current c++ concurrency TS 21:09 <+ddnet-discord> after having a short look it should be no problem to replace our semaphores with condition_variables, we might want to think about some wrappers or classes we want for threading tho 21:10 <+eeeee> might appear in c++20, so we'd be able to use it around 2025. if we move fast maybe we'll already start working on teeworlds 0.8 by then! 21:11 <+ddnet-discord> so implement their api ? 21:14 <+Learath2> our use of semaphores can be completely replaced by condition_variables and a way to keep track of the number of entries in queue 21:14 <+Learath2> I'll also implement the fetch task as a CJob in a couple of days so we can get rid of the unnecessary queue in CFetcher 21:17 <+ddnet-discord> finally 👍 21:45 <+ddnet-discord> @Savander what is this tool lol 21:45 <+ddnet-discord> ? 21:51 <+ddnet-discord> HD Tune 21:52 <+ddnet-discord> never heard of it 21:52 <+ddnet-discord> did you only pay attention to the damaged blocks? 21:55 <+ddnet-discord> i checked SMART as well 21:55 <+ddnet-discord> im not good in diagnostics 21:55 <+ddnet-discord> ;/ 21:56 < ddnet-commits> [ddnet] def- pushed 1 new commit to master: https://git.io/vdvLr 21:56 < ddnet-commits> ddnet/master a9b80e8 def: Update to Portuguese translations (by RockuS) 23:04 <+ddnet-discord> ∞ contributors (linux kernel) 23:04 <+ddnet-discord> @Ryozuki more than 700k commits, they created a new git repo at some point 23:04 <+ddnet-discord> xD 23:05 <+ddnet-discord> and it's mirror 23:07 <+ddnet-discord> how many commits did you make @Ryozuki 23:07 <+ddnet-discord> to the kernel? none 23:07 <+ddnet-discord> over 100k 23:07 <+ddnet-discord> @Ryozuki god of commits 23:07 <+ddnet-discord> ? 23:07 <+ddnet-discord> to ddnet? 23:08 <+ddnet-discord> i didnt do 100k commits 23:08 <+ddnet-discord> 14 commits / 177 ++ / 121 -- 23:08 <+ddnet-discord> nearly nothing 23:09 <+ddnet-discord> :< 23:09 <+ddnet-discord> lier 23:09 <+ddnet-discord> if you are curious https://github.com/Ryozuki/ddnet/commits?author=Ryozuki xD 23:12 <@heinrich5991> deen seems to be the only one who has debloated the code :o 23:12 <@heinrich5991> I on the other hand, added >25k lines :( 23:13 <+ddnet-discord> GreYFoX 23:13 <+ddnet-discord> 735 commits / 49,977 ++ / 1,372,346 -- 23:13 <+ddnet-discord> rm -R 23:13 <+ddnet-discord> i guess 23:13 <+ddnet-discord> deleting the old ddrace code I guess? 23:14 <+ddnet-discord> its lines or characters? 23:16 <@heinrich5991> lines 23:16 <+ddnet-discord> are you sure? 1.5mln lines of code ? 23:16 <+ddnet-discord> of ddrac e 23:17 <@heinrich5991> yes, I'm sure that it's lines 23:18 <+ddnet-discord> I thought you did more @Ryozuki 23:19 <+ddnet-discord> contribution can't be measured in mere LOCs or commit count 😃 23:26 <+ddnet-discord> how else did you contribute? 23:31 <+ddnet-discord> talking, ideas 23:31 <+ddnet-discord> discussions 23:31 <+ddnet-discord> reporting bugs 23:31 <+ddnet-discord> you can contribute in many ways 😃 23:31 <+ddnet-discord> debugging if neccessary