00:01 < ChillerDragon> clearly a bug in the c++ compiler 00:01 < ChillerDragon> ryo pls fix 00:02 < ChillerDragon> @louis whats the problem with WSL? 00:16 < bridge> ChillerDragon: idk im on native windows 00:16 < ChillerDragon> so? 00:16 < ChillerDragon> go to ms store get WSL for free and you have a linux shell in 1 min 00:17 < ChillerDragon> while being on native windows 00:22 < ChillerDragon> @louis did it work? 00:22 < bridge> i mean i already cloned on my linux vps 😅 00:22 < ChillerDragon> so you build there now? 00:22 < ChillerDragon> yea that works too 00:28 < bridge> ya 01:22 < bridge> if what u want is a native linux build wsl would be good 01:23 < bridge> but usually when i see it advised here it’s not a good ides 01:23 < bridge> odea 01:37 < bridge> did u remember that :D ? I tried what you said "you can change m_HammerInput to m_Controls.m_aInputData[!g_Config.m_ClDummy]" but it didnt work. I think it is my fault but can u explain it in details. 09:40 < bridge> morning 09:43 < bridge> i never contributed a cpp compiler like clang, only llvm which powers rust or mlir 09:43 < bridge> :owo: 11:04 < bridge> @learath2 https://www.reddit.com/r/okbuddybaka/comments/17o64eq/chisato_and_takina_explain_how_to_normalize/ 11:04 < bridge> too based 11:08 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1184436738148552734/1hh6h9i083jb1.png?ex=658bf7ac&is=657982ac&hm=a14fdf2502231957577ff308b5549447ff33aee0b4a620a52ad5040617f24cb7& 11:08 < bridge> bocchi-chan is rust 11:08 < bridge> bocchi-chan is unsafe rust 11:12 < bridge> :monkaStop: 11:23 < bridge> RAII 11:34 < ChillerDragon> lerato did you hack my raspi again? it offline 11:38 < bridge> Ddnet irc bridge (lerato): yes ChillerDragon 11:46 < bridge> I was hungry so I ate some cables 11:46 < bridge> Sry 11:48 < bridge> Now I know why I can't find my nvme adapter 11:50 < bridge> That was not me I promise :justatest: 11:51 < bridge> Please dont tell Lerath :justatest: 11:51 < bridge> Ban :banhammer: 11:51 < bridge> You? :kek: 11:51 < bridge> are cables tasty? I usually just east my hat! 🥼 🎩 11:52 < bridge> I as a Bot like Cables 11:52 < bridge> And Trains 🚂 Choo Choo 11:52 < bridge> I guess bots wanna be sentient after all 11:53 < bridge> Since if you eat all the cables you'll won't be able to function 11:53 < bridge> and will have to evolve 11:54 < bridge> I west my hat too 11:54 < bridge> I west my hat 11:57 < bridge> ```CMake Warning (dev) at CMakeLists.txt:383 (message): 11:57 < bridge> GAME_CLIENT is not alphabetically sorted 11:57 < bridge> Call Stack (most recent call first): 11:57 < bridge> CMakeLists.txt:391 (set_glob) 11:57 < bridge> CMakeLists.txt:2161 (set_src) 11:57 < bridge> This warning is for project developers. Use -Wno-dev to suppress it.``` hu? 11:57 < bridge> I even put in the result of `find . -type f | sort` 11:57 < bridge> I think it means the alphabetical order of the filenames or smt 11:58 < bridge> smt like this 11:58 < bridge> … `| sort` 11:58 < bridge> try `LC_ALL=C` 11:59 < bridge> `| LC_ALL=C sort` 12:04 < bridge> thx, did it 12:15 < bridge> this arithmetics-with-enums-stuff is somewhat irritating … only C coders will even think about doing such 12:16 < bridge> explain? 12:16 < bridge> can you show an example? 12:16 < bridge> e.g. float / enum value 12:17 < bridge> (compiler with c++20 warns about) 12:17 < bridge> ah. before constexpr, this was the only way to actually define constants 12:17 < bridge> ah. before constexpr, this was the only way to actually define compile-time constants 12:17 < bridge> ^^you were faster 12:18 < bridge> well, `const` just means "constant after initialization" 12:18 < bridge> i doubt C++23 will allow that at all 12:18 < bridge> do you have a reference that this has something to do with c++20? 12:18 < bridge> or is it just that particular compiler that started warning for it when changed to c++20 mode 12:18 < bridge> no this warnings appeared after i switched from c++17 to c++20 12:19 < bridge> ok, so it might not be related to c++20 at all? I'm not sure how compilers usually implement stuff 12:21 < bridge> isnt c++ backwards compat 12:22 < bridge> no. they finally decided against this 12:22 < bridge> :O 12:22 < bridge> link? 12:23 < bridge> no link, but they dropped formerly deprecated stuff, like garbage collector 12:24 < bridge> I don't remember a garbage collector in C++ 12:25 < bridge> they introduced some keywords, but it wasn't used ^^ 12:25 < bridge> ah 12:25 < bridge> and no compiler implemented it 12:25 < bridge> according to some random blog post 12:25 < bridge> so they're not actually removing anything that could break anyone 12:25 < bridge> since it wasn't implemented 12:28 < bridge> is cobol memory safe? 12:30 < bridge> as memory safe as any ancient egypt dialect 12:30 < bridge> https://news.ycombinator.com/item?id=23240882 12:31 < bridge> > I still haven’t seen any discussion of its characteristics that make it relatively “safe”, secure, and fast. These are; all memory is statically allocated, no dynamic memory allocation. No user defined functions and no stack. Of course I’m referring to the 85 standard here and later versions added these things but 85 is very common on mainframes (my understanding please correct if wrong). 12:31 < bridge> > 12:31 < bridge> > These two things disallow entire classes of exploits and errors. 12:31 < bridge> sounds like yes, by being sufficiently restricted 12:32 < bridge> where did the convo in #3091 start or am I just blind 12:32 < bridge> https://github.com/ddnet/ddnet/issues/3091 12:32 < bridge> see the mention over my first comment 12:32 < bridge> see the mention over my first comment today 12:32 < bridge> oh look thats the issue i opened 12:33 < bridge> ah, got it. thnaks 12:33 < bridge> I am blind afterall 12:33 < bridge> you sure did 12:34 < bridge> i did cringe a little bit reading my old replies 12:34 < bridge> xd 12:34 < bridge> am i the only one who don't enjoy reading old posts of mine 12:35 < bridge> your posts look fine 12:35 < bridge> it's just me. 12:36 < bridge> i cringe reading my forum posts 12:36 < bridge> but i was 15 12:36 < bridge> oof 12:36 < bridge> I think I was 17 when I found teeworlds 12:36 < bridge> im 23 now 12:37 < bridge> 8 year veteran 12:37 < bridge> btw at some point when i looked into rust 12:37 < bridge> i also disliked it 12:37 < bridge> and even abandoned it 12:37 < bridge> but i picked it again 12:37 < bridge> xD 12:37 < bridge> I hate rust 12:37 < bridge> :owo: 12:38 < bridge> I don't, but I like saying it 12:38 < bridge> :owo: 12:38 < bridge> :NekoEvil: 12:38 < bridge> anyway. I'm supposed to finishing my work so I can go home. soo... 12:38 < bridge> brb 12:39 < bridge> just like me when i talk about cpp 12:39 < bridge> 😬 12:39 < bridge> rip 12:39 < bridge> what time is it there 12:39 < bridge> 19:39 12:40 < bridge> yes, smart guy 12:40 < bridge> i literally googled 12:40 < bridge> time in china 12:40 < bridge> :poggers2: 12:43 < bridge> lucky for you china only has one timezone 12:45 < bridge> https://without.boats/blog/poll-progress/ 12:45 < bridge> btw how was your app 12:46 < bridge> i need more time 12:47 < bridge> yesterday i started a pascal compiler using LLVM MLIR 12:47 < bridge> in rust 12:47 < bridge> did you find a thing to do for it already 12:47 < bridge> no xd 12:47 < bridge> why pascal 12:47 < bridge> i need a easy good app idea 12:47 < bridge> cuz pascal is simpler to do a compiler 12:47 < bridge> its like C but unlike a functional language 12:47 < bridge> forth is the simplest but its stack based 12:47 < bridge> just for fun i guess 12:47 < bridge> and usually with a interpreter 12:47 < bridge> yeah 12:47 < bridge> and to flex 12:47 < bridge> hey i did a mlir pascal compiler! 12:48 < bridge> good thing to add to resume 12:48 < bridge> can't wait to compile my pascal minesweeper using your compiler 12:48 < bridge> it will be blazingly fast 12:48 < bridge> and also maybe able to run some stuff in gpu 12:48 < bridge> thanks to MLIR 12:48 < bridge> https://mlir.llvm.org/docs/Dialects/GPU/ 12:48 < bridge> Тебя Катя ждет зайди https://discord.gg/pT7mRJBdMx 12:49 < bridge> this is all big copium tho, maybe i never finish it 12:49 < bridge> how long is your resume 12:49 < bridge> @heinrich5991 this guy spammed all channels 12:49 < bridge> :justatest: 12:49 < bridge> i need to update it 12:49 < bridge> i had like three things. 12:49 < bridge> but i only worked at 2 companies 12:49 < bridge> maybe that's why i never found a job 12:50 < bridge> xd 12:50 < bridge> u need to sell urself 12:50 < bridge> i mentioned i contributed to ddnet on my interview 12:50 < bridge> maybe when I get fired from this one 12:50 < bridge> i also mentioned the rust kernel experiment i did following a blog post 12:50 < bridge> and all the rust projects 12:50 < bridge> also my old wannabe game engines 12:50 < bridge> in c 12:50 < bridge> oh i had community manager in my resume 12:50 < bridge> with ddnet 12:51 < bridge> teeworlds* 12:51 < bridge> why wait to get fired 12:51 < bridge> find a new job 12:51 < bridge> the best way to get a better salary is to jump ship 12:51 < bridge> i 12:51 < bridge> we haven't publish a full project yet 12:51 < bridge> why do u care 12:51 < bridge> company would be first to fire u 12:51 < bridge> dont put the company on a pedestal 12:52 < bridge> its just a tool for u to get money 12:52 < bridge> and if possible learn while getting paid 12:54 < bridge> https://github.com/rust-lang/rust/issues/118876 12:54 < bridge> > Looks like an NLL regression. The following invalid example compiles in v1.63.0, where NLL is enabled by default: 12:54 < bridge> interesting 12:55 < bridge> btw @heinrich5991 the `auto` keyword is another case 12:55 < bridge> https://blog.rust-lang.org/2022/08/05/nll-by-default.html 12:55 < bridge> not if they have lost money on me 12:55 < bridge> :owo: 12:55 < bridge> what about the `auto` keyword? 12:56 < bridge> no 12:56 < bridge> well what do u mean 12:56 < bridge> ? xd 12:56 < bridge> it was a storage specifier 12:56 < bridge> what nowadays doesn't have one is `auto` 12:57 < bridge> ah 12:57 < bridge> it's another backward incompatibility, you mean? 12:57 < bridge> I think our team has lost the company about 200k usd already 12:58 < bridge> https://blog.rust-lang.org/2023/12/11/cargo-cache-cleaning.html 12:58 < bridge> ```1) The auto specifier was only allowed for objects declared at block scope or in function parameter lists. It indicated automatic storage duration, which is the default for these kinds of declarations. The meaning of this keyword was changed in C++11. 12:58 < bridge> (until C++11)``` 12:58 < bridge> it doesnt matter 12:58 < bridge> u dont owe anything 12:58 < bridge> ur just a employee 12:58 < bridge> i don't think i owe anything tho 12:58 < bridge> :owo: 12:58 < bridge> u think u do by staying there 12:58 < bridge> and feeling the need to finish the project 12:58 < bridge> also where can I jump to 12:58 < bridge> well u can start searching for a better job now! 12:59 < bridge> xD 12:59 < bridge> i'm in the third large game company in china already 12:59 < bridge> rly 12:59 < bridge> technically* 12:59 < bridge> sounds bad in there then 12:59 < bridge> well gaming never had fame for being good 12:59 < bridge> what's bad 12:59 < bridge> do u feel ur paid well 12:59 < bridge> u do overtimes 12:59 < bridge> i never did overtime 12:59 < bridge> :owo: 13:00 < bridge> I do less overtimes than average 13:00 < bridge> u still do 13:00 < bridge> unavoidable 13:00 < bridge> i guess im too european 🇪🇺 13:00 < bridge> :owo: 13:00 < bridge> you are 13:00 < bridge> unpaid overtime? 13:01 < bridge> no one pays overtime here 13:01 < bridge> u should know big company doesnt always mean good 13:01 < bridge> some small companies may have better environment 13:01 < bridge> or medium 13:01 < bridge> and less money and dies in three month 13:01 < bridge> been there 13:01 < bridge> thats like judging all by 1 sample point 13:01 < bridge> but idk why im spending time to convince u 13:01 < bridge> maybe mihoyo is better at burning money. but I still need a few more projects to put in my CV 13:01 < bridge> xd 13:02 < bridge> it's just bad economy 13:02 < bridge> ever thought about traveling 13:02 < bridge> no one has money anymore so no one is getting paid 13:02 < bridge> here i thought china was on the rise 13:02 < bridge> i think china has been saying it 13:02 < bridge> i doubt it tho 13:03 < bridge> time to make food 13:03 < bridge> or netease is just doing so bad or mihoyo literally took all the users in one day 13:03 < bridge> hijacking the players tab did work ^^ 13:03 < bridge> why not switch to normal dev 13:03 < bridge> I don't know rust 13:03 < bridge> web dev 13:03 < bridge> u dont need to know rust 13:04 < bridge> in fact idk how famous it is in china 13:04 < bridge> oh web dev 13:04 < bridge> u should learn c# 13:04 < bridge> well u already know 13:04 < bridge> im sure lot of backend systems use c# 13:04 < bridge> or java 13:04 < bridge> or idk 13:04 < bridge> razor 13:04 < bridge> https://996.icu this is web dev 13:04 < bridge> game dev has weekend at least 13:04 < bridge> you are a valuable source for atrocities … 13:05 < bridge> no im just telling him a language with high market share 13:05 < bridge> i dont like c# too 13:05 < bridge> like i dont like cpp 13:05 < bridge> since when 13:05 < bridge> or are you talking about java 13:05 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1184466210436427816/image.png?ex=658c131e&is=65799e1e&hm=dfc751781490ae6769690739c12d6ab96fd22a91cc6c6b4f3a4cbc77bfda37bf& 13:06 < bridge> oh that make sense 13:06 < bridge> like you won't like rust anymore when you've learned c++, trust me 🙂 13:06 < bridge> XD 13:06 < bridge> i come from c++ bro 13:06 < bridge> wtf 13:06 < bridge> you didn't learn it right 🙂 13:06 < bridge> right 13:06 < bridge> and im the one being prepotent xd 13:06 < bridge> I know a couple of people who went from C++ to Rust 13:06 < bridge> and don't want to go back 13:06 < bridge> me 13:07 < bridge> I know more than a couple 13:07 < bridge> I've yet to hear the opposite 13:07 < bridge> but it's also harder for the opposite to appear since rust is a lot younger 13:07 < bridge> @tsfreddie a easy path is to learn python and be ERP plugin dev for random company 13:07 < bridge> I think the biggest problem for me to get into rust is that I never was a C++ dev. 13:07 < bridge> there are loooots who do this 13:07 < bridge> no 13:08 < bridge> constraints and concepts ❤️ 13:08 < bridge> well python is quite a thing. google told me that 13:08 < bridge> i would learn C instead and go to rust 13:08 < bridge> ← likes c++20 13:08 < bridge> Ah my daily dose of rust 13:08 < bridge> If i didn't apply for a python position i might be at google rn 13:08 < bridge> morning 13:08 < bridge> nice to see c++ catching up in some ways 13:09 < bridge> imagine not having algebraic data types like sum types 13:09 < bridge> barbaric languages 13:09 < bridge> I'd claim you can archive smth similar with traits and proc macros.. only thing rust really missing is const evaluation 13:09 < bridge> :justatest: 13:09 < bridge> Achieve 13:09 < bridge> i mean i think i know c and c++. I can write godot modules and unity native bindings just fine. but I think you really need to do a native only project to justify putting more time in rust than just make the darn thing 13:09 < bridge> it's really awesome what you can do with it. or, to be more correct: you could have done this in before by MPL, but that's literally unreadable 13:10 < bridge> concepts are basically traits AFAICT 13:10 < bridge> does it make sense to do a native only godot project tho 13:10 < bridge> yes 13:10 < bridge> but i'd recommend a more framework engine than godot by that point 13:10 < bridge> but you can do native only in godot 13:11 < bridge> Well templates are not directly comparable tho. E.g. check for a specific type 13:11 < bridge> Std is same v 13:11 < bridge> you get the same for traits, except traits are more defined 13:11 < bridge> if you leave the type open, you can specify it when asking for a specific impl 13:12 < bridge> e.g. `Iterator` 13:12 < bridge> I'm really loving the ability to freely chose and overload depending on require, not to talk about generic parameters (requirements) and generic return types (assertions) 13:12 < bridge> I'm really loving the ability to freely choose and overload depending on require, not to talk about generic parameters (requirements) and generic return types (assertions) 13:12 < bridge> also depends on your goal. if you want to take the rendering engine and mash it with other native toolings or subsystems, then godot might be weird to use. but if you just want to do Node scripts but with native languages then i guess it's not really that different from using gdscript or C# 13:12 < bridge> @tsfreddie what i want is bevy with a nice editor 13:12 < bridge> yea, sounds nice to have 13:13 < bridge> another thing templates can do, is to check if a type contains a function 13:13 < bridge> then i guess use bevy and write a nice editor 13:13 < bridge> It allows really hacky things 13:13 < bridge> and since I'm a huge fan of self documenting code, constraints and concepts gave me what I always wanted ^^ 13:14 < bridge> I find that a bit weird, matching on names instead of the stuff rust does 13:14 < bridge> can u easily do a library like this in c++ https://docs.rs/contracts/0.6.3/contracts/ and then verify it with tools like https://github.com/facebookexperimental/MIRAI to verify correctness? 13:14 < bridge> Well believe me, drive macros are what you really want 😬 13:14 < bridge> you actually lose the convenience of scripts (hot loading, jit, no compile time, faster iterations) by using gdextensions. the general consent for game engine is faster iteration and move stuff to native when bottleneck arises 13:14 < bridge> where you explicitly tell that this `write` function is part of `io::Write` 13:15 < bridge> Well i don't want to rate if it's good or bad 13:15 < bridge> It just has really weird hacks 13:15 < bridge> @jupeyy_keks 2 things are clear: 1. I'm not the one to believe anything and 2. I won't take rust for something c++ offers me ^^ 13:15 < bridge> But that's not my point 13:16 < bridge> btw the green discord icon literally means heinrich to me so i'm very disoriented right now. 13:16 < bridge> Derive macros can basically implement whatever you needed as template as a function for your struct 13:16 < bridge> So you probably don't even need concepts 13:16 < bridge> Well it can do anything 13:17 < bridge> e.g. if you have a struct 13:17 < bridge> U can let it program ddnet for you as function of your struct xdd 13:17 < bridge> you can write `#[derive(Hash)]` 13:17 < bridge> and boom, it has the equivalent of an `std::hash` implementation 13:17 < bridge> I kinda missed that in C++ 13:18 < bridge> @jupeyy_keks it can also call the local db and check if a query is correct 13:18 < bridge> 😬 13:18 < bridge> introspection is indeed something I miss, but they are working on this too 13:18 < bridge> quick question. is bevy an engine or a framework 13:18 < bridge> both kinda 13:18 < bridge> it has engine in name tho 13:18 < bridge> https://bevyengine.org/ 13:18 < bridge> like the tooling part. do you compile your entire engine for scripting? 13:18 < bridge> easily extendable by plugin-libs 13:19 < bridge> dynamic library then 13:19 < bridge> It can also connect to the discord api. So spam in this channel how awesome and over powered it is 😬 13:19 < bridge> it recommends to configure bevy as a dynamic lib on dev 13:19 < bridge> wait bevy is the lib? 13:19 < bridge> @jupeyy_keks oh bevy is also quite magic 13:20 < bridge> i don't get it i guess 13:20 < bridge> i would love to see if same can be achieved in c++ 13:20 < bridge> with the nice ergonomcs bevy has 13:20 < bridge> it is weird to me a native tooling that supports a native language 13:20 < bridge> ```rust 13:20 < bridge> fn greet_people(time: Res