05:56 <+bridge> free robux https://discord.gg/PjuGcHgpzD (you can check #proof) (****100% REAL****) 05:56 <+bridge> free robux https://discord.gg/PjuGcHgpzD (you can check #proof) (****100% REAL****) 05:56 <+bridge> free robux https://discord.gg/PjuGcHgpzD (you can check #proof) (****100% REAL****) 09:10 <+bridge> who moved developer channel 09:10 <+bridge> wasn't that far down 09:12 <+bridge> This isn't developer. Please use #showroom 09:47 <+bridge> oh no now i have to retrain my muscle memory to enter developer channel without seeing any tower clips 09:58 <+bridge> Ye sucks 10:44 <+ChillerDragon> ctrl+k is a think isnt it? 10:45 <+ChillerDragon> imagine using a mouse 11:07 <+bridge> that's a main feature on Windows :giga_chad: 12:05 <+bridge> 🐭 13:46 <+bridge> You might consider adding a key other than the spacebar in the new version to open the page of the editor's game layer. 13:46 <+bridge> -Like Alt.🤨 14:41 <+bridge> https://misskey-hub.net/en/ 14:41 <+bridge> leaving this for later 16:20 <+bridge> @Jupeyy_Keks since c++ puts the struct,class fields in the order u define them, u think reordering the fields, can achieve better pef? 16:20 <+bridge> perf 16:20 <+bridge> Yes 16:20 <+bridge> rust automatically uses the best layout to have less padding and alignment 16:20 <+bridge> But smith different 16:20 <+bridge> Smth 16:20 <+bridge> i think we dont put thought in ddnet 16:20 <+bridge> when putting fields 16:20 <+bridge> xd 16:21 <+bridge> If compiler can reorder it then it can also make it more cache friendly 16:21 <+bridge> i think biggest to smallest 16:21 <+bridge> is the easy way 16:21 <+bridge> Less padding alignment is not always best tho 16:21 <+bridge> Sometimes the opposite is true actually 16:22 <+bridge> well less padding idk 16:22 <+bridge> i think it chooses the best layout 16:22 <+bridge> idk if it has less padding xd 16:22 <+bridge> When it knows stuff is accessed concurrently it can create so much alignment that no cache flushes are needed 16:23 <+bridge> GPUs always have insane alignments xd 16:23 <+bridge> ``` 16:23 <+bridge> The only data layout guarantees made by this representation are those required for soundness. They are: 16:23 <+bridge> 16:23 <+bridge> The fields are properly aligned. 16:23 <+bridge> The fields do not overlap. 16:23 <+bridge> The alignment of the type is at least the maximum alignment of its fields. 16:23 <+bridge> 16:23 <+bridge> Formally, the first guarantee means that the offset of any field is divisible by that field's alignment. The second guarantee means that the fields can be ordered such that the offset plus the size of any field is less than or equal to the offset of the next field in the ordering. The ordering does not have to be the same as the order in which the fields are specified in the declaration of the type. 16:23 <+bridge> 16:23 <+bridge> Be aware that the second guarantee does not imply that the fields have distinct addresses: zero-sized types may have the same address as other fields in the same struct. 16:23 <+bridge> 16:23 <+bridge> There are no other guarantees of data layout made by this representation. 16:23 <+bridge> ``` 16:24 <+bridge> these are the only guarantees 16:24 <+bridge> in rust 16:24 <+bridge> Yes it was a really good idea from rust to design it like this 16:24 <+bridge> You can use `clang-reorder-fields` 16:24 <+bridge> And static linking 16:24 <+bridge> Mh, idk if one can rigorously define an "optimal" layout. A lot of bizarre alignment considerations, cache considerations must be made. The nature of the access is also probably important 16:25 <+bridge> well i guess 16:25 <+bridge> rust doesnt define it as the most optimal, it just says these are the guarantees 16:25 <+bridge> But still per architecture it can assume certain stuff 16:25 <+bridge> aka u must not rely on the order u define them 16:25 <+bridge> unlike c 16:25 <+bridge> Arch=native for enjoyers 16:26 <+bridge> based 16:26 <+bridge> You can benchmark to see if it's optimal, but I don't think you can just by knowing the architecture guess the best layout unless you are like the designer of the cpu 16:28 <+bridge> Does rust allow iteration of struct fields btw? I don't remember 16:30 <+bridge> wdym by that 16:30 <+bridge> like python __dict__? 16:30 <+bridge> xd 16:30 <+bridge> `__dict__` 16:30 <+bridge> @Learath2 u can do this at compile time with macros 16:30 <+bridge> ast macros ez 16:31 <+bridge> since macros operato on ast, u can know whats a struct field 16:31 <+bridge> Yeah, or js ones 16:31 <+bridge> serde is so powerful and fast cuz that 16:31 <+bridge> proc macros* 16:31 <+bridge> So you just generate an iterator that yields them in order? 16:32 <+bridge> idk what serde does 16:32 <+bridge> but they need to do what u want to serialize fieldss 16:32 <+bridge> iirc 16:32 <+bridge> https://github.com/dtolnay/syn/issues/516#issuecomment-431637005 16:32 <+bridge> read this 16:33 <+bridge> written by the magician 16:33 <+bridge> who wrote syn, quote 16:34 <+bridge> i am always amazed by how powerful serde is 16:34 <+bridge> and its perfomant af 16:34 <+bridge> its crazy 16:34 <+bridge> one of rust biggest achievements 16:35 <+bridge> #rustad 16:36 <+bridge> js sux tho 16:36 <+bridge> if u dont use a Map 16:36 <+bridge> the iterator over objects may give u unwanted stuff 16:38 <+bridge> https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map#objects_vs._maps 16:38 <+bridge> > An Object has a prototype, so it contains default keys that could collide with your own keys if you're not careful. 16:38 <+bridge> most ppl in js world use object instead of maps 16:38 <+bridge> rip influxdb crate 16:38 <+bridge> cuz they dont even know what a map is lmao 16:39 <+bridge> @Learath2 no, but you can annotate the struct with a macro that can read the struct fields and generate methods based on that 16:39 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1064569686638985306/image.png 16:40 <+bridge> Should we just move this channel, including bugs into it's own category? The channel being so far down is extremely odd to me 😄 16:40 <+bridge> omg 16:41 <+bridge> so it wasnt u who moved it 16:41 <+bridge> do it 16:41 <+bridge> and put it on top 16:41 <+bridge> top priority 16:41 <+bridge> @Learath2 https://github.com/edg-l/formy 16:41 <+bridge> this reminds me i did this 16:41 <+bridge> a abandoned project 16:41 <+bridge> ```rust 16:41 <+bridge> use formy::Form; 16:41 <+bridge> 16:41 <+bridge> #[derive(Form)] 16:41 <+bridge> struct UserLogin { 16:41 <+bridge> #[input(pattern = r"[\w]+")] 16:41 <+bridge> #[label = "Username:"] 16:41 <+bridge> username: String, 16:41 <+bridge> #[input(type = "email", name = "real_email", class="py-4", id = "email")] 16:41 <+bridge> email: String, 16:41 <+bridge> #[input(type = "password")] 16:41 <+bridge> #[label = "Password:"] 16:41 <+bridge> password: String, 16:41 <+bridge> some_field: String, 16:42 <+bridge> } 16:42 <+bridge> 16:42 <+bridge> let form = UserLogin::to_form(); 16:42 <+bridge> ``` 16:42 <+bridge> i make a html form with this macro 16:45 <+bridge> Sounds good then I can minimize the useless channels xd 16:55 <+bridge> Jupstar's point is good, I guess. I also like people stumbling upon the developer channel though, I'd guess this would reduce the chance of that happening 17:18 <+bridge> ye thats a point i made 17:18 <+bridge> thats why it being 2nd is good 17:18 <+bridge> we need more devs 17:18 <+bridge> and im sure its interesting for ppl to look at 17:18 <+bridge> event if they dont comment 17:18 <+bridge> im pretty sure 17:18 <+bridge> dev channels in games are the most interesting 17:18 <+bridge> source: me 17:32 <+bridge> im afraid this break some mem_copy between different struct. They do have similar layout, but can it guarentee it reorders similarly? 17:38 <+bridge> apparently it does nothing automatically 😄 you have to specify the order you want, so not that useful 18:21 <+bridge> https://servo.org/blog/2023/01/16/servo-2023/ 18:27 <+ChillerDragon> does someone know if https://github.com/0xfaulty is on this discord? :) 18:42 <+bridge> @Faulty ^? 18:57 <+bridge> https://every.to/superorganizers/gpt-3-is-the-best-journal-you-ve-ever-used 18:57 <+bridge> @Jupeyy_Keks 18:57 <+bridge> GPT-3 as therapy modality expert 18:57 <+bridge> @Learath2 use gpt to get therapy 18:58 <+bridge> tell him to become socrates 18:58 <+bridge> https://cdn.discordapp.com/attachments/293493549758939136/1064604682883960882/optimized_zHbrCmLxzmL7IQRVLAOSD4QwtpY73bmm3QTgWkT-amhhqIkSCFD1JhgAf0xifTWppr07P7BlPLn08zn40LibOS6MQB6FKtdgMMpK3s0aPvWSzUT_fef9pFPbofgTHVeIYH4UwhaO_pVHirw-t5DFC-428YcPTNb-zuOS_g-P2Kya5lErTNUYZsRhET8Xhg.png 19:00 <+bridge> the best therapy is to get addicted to smth xd 19:19 <+bridge> Sounds good thanks deen \:)Ello faulty is that you? 19:19 <+bridge> (@deen) 19:38 <+bridge> https://godotengine.org/article/whats-missing-in-godot-for-aaa/ 19:43 <+bridge> should the new category be below chat or above chat? 19:45 <+bridge> well if u ask here: above 19:45 <+bridge> xd 19:46 <+bridge> GPT can't fix me 19:46 <+bridge> Definitely below 19:47 <+bridge> Well imo 19:47 <+bridge> Above 19:47 <+bridge> Most important chat 19:55 <+bridge> below 19:55 <+bridge> Only devs may answer 19:55 <+bridge> :kek: :gigachad: 19:55 <+bridge> well in that case idk why bot cmds or reports are in chat category 19:56 <+bridge> i've made pull requests ☝️ 🤓 19:58 <+bridge> but i think the old order all in 1 category was fine 19:58 <+bridge> me 20:27 <+bridge> :soulless: 20:56 <+bridge> anyone knowing how to compile a modded client with 0.6 on it ? 22:30 <+bridge> what client? 22:33 <+bridge> I can guess which client you are talking about only by checking our mutual friend 22:33 <+bridge> yes i know, just read the README file 22:36 <+bridge> cheat clients rarely have instructions on the build process 22:52 <+bridge> Nicf 22:52 <+bridge> Nice 22:52 <+bridge> That's why I'm asking here, maybe someone knows how to do it 23:20 <+bridge> https://t.me/+UcYGEjBQwa7gIPN1 23:20 <+bridge> (@Ryozuki) 23:23 <+bridge> did someonen ping me 23:24 <+bridge> why did it disapear 23:24 <+bridge> Scam links ^^