00:36 <+bridge> [ddnet] xd 11:00 <+ChillerDragon> @NeXus didn't you know? Quantum computers have firmware written in html and php! 11:45 <+bridge> [ddnet] Ofc, what else would you use? 12:13 <+bridge> [ddnet] C++20 concepts and abbreviated templates are just what I was looking for 12:14 <+bridge> [ddnet] I wonder how they even made it so far without this, it's a fairly obvious thing to add 12:16 <+bridge> [ddnet] `void quick_sort(RandomAccessIterator auto begin, RandomAccessIterator auto end)` 12:18 <+bridge> [ddnet] Very clean error messages, very easy to understand, no need for the iterator_traits tags hacked with doubling up templates 12:19 <+bridge> [ddnet] or god forbid `if constexpr(std::is_same_v...` 13:36 <+bridge> [ddnet] https://www.youtube.com/watch?v=Y1o4rc9P1FQ 13:37 <+bridge> [ddnet] Great talk, exactly how I approach most any alien codebase I approach nowadays 14:01 <+bridge> [ddnet] 👽 14:24 <+bridge> [ddnet] how to write 🍌 in javascript 14:24 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/710105081038635028/Bildschirmfoto_2020-05-13_um_14.22.08.png 14:25 <+bridge> [ddnet] ow to write 🍌 in javascript 14:25 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/710105486703329310/Bildschirmfoto_2020-05-13_um_14.25.19.png 14:45 <+bridge> [ddnet] just js things 20:10 <+bridge> [ddnet] rust macros are a world of its own 20:13 <+bridge> [ddnet] thats awesome 20:13 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/710192936578449488/unknown.png 20:13 <+bridge> [ddnet] c++ preprocessor looks like a 5y old kid against this 20:14 <+bridge> [ddnet] 20:17 <+bridge> [ddnet] c++ has static analyzers like clang-tidy for stuff like that. it's also easy to write your own clang-tidy checks 20:18 <+bridge> [ddnet] and i think clang-format even keeps headers sorted 20:19 <+bridge> [ddnet] yeah, but you need clang-tidy 20:19 <+bridge> [ddnet] and its not just this you can do 20:19 <+bridge> [ddnet] also, about powerful macros in general: it has to be used carefully, otherwise it's hard to find out what your program will look like 20:20 <+bridge> [ddnet] and these kinds of macros can increase compile-time a lot 20:20 <+bridge> [ddnet] still, they are good 20:22 <+bridge> [ddnet] @deen do you know rust btw? 20:34 <+bridge> [ddnet] All abstractions have cost, some at compile time, some at runtime, some in human time. C++ completely ignored the compile time until C++20 where modules are coming to rescue us from the dreaded 15 minute compile of a single TU 20:37 <+bridge> [ddnet] It's usually the human time cost that people forget. Coming up with these fancy abstractions takes valuable time and fully realizing it's consequences also takes the reviewers time. So you need to be careful when abstracting something away 20:40 <+bridge> [ddnet] Rust macros are indeed some of the most powerful I've tried, nim also has great macros 20:43 <+bridge> [ddnet] well rust is still being actively developed, gcc took years to get where it is with compile times 20:44 <+bridge> [ddnet] and i think the stable beta and nightly system is rly good https://doc.rust-lang.org/book/appendix-07-nightly-rust.html 20:44 <+bridge> [ddnet] along with the "editions" 20:56 <+bridge> [ddnet] Has anyone seen the UE5 tech demo btw? 20:56 <+bridge> [ddnet] https://www.youtube.com/watch?v=d8B1LNrBpqc 20:56 <+bridge> [ddnet] I don't think anything will come close to unreal for real time realistic rendering for a long time 20:58 <+bridge> [ddnet] im already amazed by how good FF7 remake looked on the old 2016 ps4 20:59 <+bridge> [ddnet] it uses ue4 21:00 <+bridge> [ddnet] I didn't think global dynamic illumination would be possible for quite a while 21:02 <+bridge> [ddnet] or cinematic quality assets being ingame, nanite seems to do billions of tris with ease (I'm guessing some dynamic generation of optimized meshes is going on here) 21:03 <+bridge> [ddnet] (e.g. if you are too far, some of the tris would contribute less then a pixels, thus can get optimized out, neighbouring tris with very similar normal vectors wouldn't affect lighting that much so can be optimized out) 21:04 <+bridge> [ddnet] "Through a triangular perspective, we have increased the number of triangles triangularly. In other words, there a billions of billions of triangles in this triangular space.” -Neil Degrase Tyson 21:04 <+bridge> [ddnet] funny comment 21:04 <+bridge> [ddnet] gta 6 with this graphics 21:10 <+bridge> [ddnet] I wonder if they'll open source ue5 too, ue4s source has been very informative to me 22:04 <+bridge> [ddnet] @Learath2 what do you get out of these huge codebases? 22:07 <+bridge> [ddnet] Well whenever I do a feature for any project, I like to first think about whether I've seen it somewhere else 22:08 <+bridge> [ddnet] These huge codebases are usually a goldmine for stuff like that 22:09 <+bridge> [ddnet] It never made it's way into ddnet but I took a look at ue4's editor and how it handled editing multiple objects together, e.g. intersecting a list of props 22:12 <+bridge> [ddnet] We really should get something like clang-format for teeworlds 22:13 <+bridge> [ddnet] Does anyone remember what we were missing in clang-format to get it to do teeworlds format? 22:14 <+bridge> [ddnet] https://github.com/ddnet/ddnet/pull/1580 22:14 <+bridge> [ddnet] " guess this will make cherry-picking from teeworlds and to ddnet7 harder, so let's not add a .clang-format file for now." 22:16 <+bridge> [ddnet] Hm, that's right, maybe we should start checking the incoming pull requests atleast 22:16 <+bridge> [ddnet] idk if we have the tools to do that 22:17 <+bridge> [ddnet] Github actions can handle it 22:17 <+bridge> [ddnet] not sure 23:13 <+bridge> [ddnet] lol