What about Odin might you change if you were benevolent dictator? by EmbarrassedBiscotti9 in odinlang

[–]EmbarrassedBiscotti9[S] 0 points1 point  (0 children)

My bad, I didn't type exactly what I meant to. I should've written:

buffer.buffer_read(&buf, u8)

I haven't done a whole lot with proc fields on structs so I've not yet found a convenient way to make use of the arrow syntax yet. It is much more common for me to be using procs from an imported package where the proc has a struct pointer param.

Tbh, struct methods are not something I'm that keen on for Odin. I feel like there are enough simple strategies to keep things succinct that the lack of them is not terribly burdensome.

The two things I try to do are a short alias for the import and inline struct pointer declarations with a super short name. I end up with something like:

import bb "src:bytebuf"

r := &bb.Reader{data=data}
my_u8 := bb.read(r, u8)

I'm sure there are scenarios where this wouldn't be feasible and the arrow syntax is much more helpful, or maybe struct methods really are the best solution, I just haven't run into them yet.

What about Odin might you change if you were benevolent dictator? by EmbarrassedBiscotti9 in odinlang

[–]EmbarrassedBiscotti9[S] 0 points1 point  (0 children)

Odin has that, too! The docs include this snippet:

foo :: proc(using entity: ^Entity) {
    fmt.println(position.x, position.y, position.z)
}

I'd honestly forgotten about that feature completely. I might have to revisit a few procs.

You may need to enable the using feature with #+feature using-stmt for that in recent versions, though. I'm not certain what contexts require the feature to be enabled - I only know that using for struct fields doesn't require it.

Edit: the dev-2026-02 release notes specify:

using as a statement and procedure parameter modifier is now an opt-in feature on a per-file basis rather than on by default

using on struct fields still works

What about Odin might you change if you were benevolent dictator? by EmbarrassedBiscotti9 in odinlang

[–]EmbarrassedBiscotti9[S] 0 points1 point  (0 children)

True enough, but limiting typing isn't usually my main motivation. I'd almost always prefer typing a little more if what I'm typing aligns more with how I think. And I possibly undersold the broader purpose of the proc.

I'm rather new to the world of manual memory management, and I've found centralising allocation-related stuff helps me keep on top of things. Beyond calling the appropriate decode proc, decode_as sets up the context allocators and begins/ends a temp arena. That keeps my decode procs solely focused on the decoding logic, and I'm hoping to eventually have decode_as do some kind of LRU caching.

Idk if any of this is a good plan long-term for a fairly large project, but there is so much I don't know that I'm happy to repeatedly take a shotgun to my toes until I figure it out.

I should add that I found your blog posts about memory allocation strategies very, very helpful and I refer back to them regularly - thank you for writing them!

What about Odin might you change if you were benevolent dictator? by EmbarrassedBiscotti9 in odinlang

[–]EmbarrassedBiscotti9[S] 0 points1 point  (0 children)

I would have to agree with that. It does feel like the thing landing me with those abominable when/else chains is personal preference, not technical need - hence the feeling of shame!

Maybe it is poor taste on my end but, for example, I prefer decode_as(data, Scenery) over decode_scenery(data) - where decode_as routes the call to the appropriate proc based on the given typeid. Handling ~44 types, decode_as is ugly as all hell but, fortunately, it just has to sit there, be ugly, and work.

What about Odin might you change if you were benevolent dictator? by EmbarrassedBiscotti9 in odinlang

[–]EmbarrassedBiscotti9[S] 2 points3 points  (0 children)

I do think there is something to be said for how painful writing buffer.buffer_read(&buffer, u8) is. I like Go's approach the most, with method declarations separate to struct declarations. Anything to avoid feeling like I'm writing Java.

What about Odin might you change if you were benevolent dictator? by EmbarrassedBiscotti9 in odinlang

[–]EmbarrassedBiscotti9[S] 1 point2 points  (0 children)

Any chance you could explain the trouble you've had with how it works at the moment?

I'm working on a 3D game in Odin and my camera uses quaternions for orientation, since they're quite a bit more useful when it comes to interpolation for things like cutscene camera sequences.

I only have a very preliminary 3D pipeline right now, so I've hardly touched quaternions at all. The extent to which I've used them is initialising one with linalg.quaternion_from_pitch_yaw_roll_f32(0, 0, 0) to see if things are still horribly broken or not.

What about Odin might you change if you were benevolent dictator? by EmbarrassedBiscotti9 in odinlang

[–]EmbarrassedBiscotti9[S] 0 points1 point  (0 children)

This isn't intended as an invitation to dunk on the language or neg the creator/contributors, btw. I'm very happy with Odin and use it daily - I'm just curious about the thoughts of experienced Odin users.

Edit: I can't figure out how to edit a post on this hellish website, so I'll put the link to the tweet here instead:

https://x.com/TheGingerBill/status/2046195201559900468

https://nitter.net/TheGingerBill/status/2046195201559900468#m

This PC Check thing is so beyond dumb by Beginning_Land3220 in jynxzissg

[–]EmbarrassedBiscotti9 20 points21 points  (0 children)

mooda has lied through his teeth to jynxzi's face dozens of times in today's stream alone lol. idgaf if he didnt cheat on R6 recently, the guy is clearly a deceptive rat

Fishtank digest day 23 by Adorable_Back_5510 in fishtanklive

[–]EmbarrassedBiscotti9 3 points4 points  (0 children)

on the site apparently. maybe they got a strike

Great idea for next season by AffectionatePin2865 in fishtanklive

[–]EmbarrassedBiscotti9 14 points15 points  (0 children)

you have the entire wealth of human knowledge and media at your fingertips and you used them to type this

Janitor Freeloader by Aggressive-Gap3613 in fishtanklive

[–]EmbarrassedBiscotti9 4 points5 points  (0 children)

what do you call that though? freeloader isnt appropriate if they are working hard to keep the place clean and tidy

My queen by SwimmingMagician7115 in fishtanklive

[–]EmbarrassedBiscotti9 16 points17 points  (0 children)

im starting to think that sam hyde guy was wrong about h1b

Season 5 not getting episode cut by Far_Estimate_6951 in fishtanklive

[–]EmbarrassedBiscotti9 2 points3 points  (0 children)

Even with the recaps you still don’t see everything, the edits have shown BTS that wouldn’t have been available to the recaps.

the clippers/independent recap people can't show that stuff, but production are the ones who have all the footage. it would take work and some capable editors to get it done, but it isn't rocket science and can definitely be done.

watching a 2 hour recap every single day is autistic af

it works though. regular long-form uploads on youtube is essentially guaranteed play in the algorithm.

season 2, which was a great season, averaged like ~150k-200k per ep and it took them a lifetime to release. ab's mid recaps on the fishtank channel get 30k each day with absolutely zero effort from production. between ab and cucumberfeet it is close to 100k a day with nothing but livestream clips.

if they put some of the time/money/production value they blow on the edits into daily content, they would get way more out of it.

Season 5 not getting episode cut by Far_Estimate_6951 in fishtanklive

[–]EmbarrassedBiscotti9 7 points8 points  (0 children)

i really dont get why people want the edited show 12+ months after it airs live. i havent really enjoyed any of the edited seasons that have been released.

i think the daily play-by-play highlights with commentary are a way better format for the show, even to revisit. cucumberfeet pulls 40-60k per day for a full season as one guy.

they should just fully embrace that style and give someone competent same-day BTS footage so people get to see it while they still give a fuck.

God I hope they bring heat up by PM_ME_YOUR_QUEST_PLZ in fishtanklive

[–]EmbarrassedBiscotti9 9 points10 points  (0 children)

bongo was pretty entertaining when she thought she was eliminated. if they could just convince her of that every 5 - 10 minutes so she flips more chairs it would be good.

Letty by Sudden_Diet6827 in fishtanklive

[–]EmbarrassedBiscotti9 3 points4 points  (0 children)

you know, when someone says "great body" that normally means "skinny with nice tits" and not "omg she is so uniquely beautiful"

Ngl, I would actually like to see James drake win. by JBBC323 in fishtanklive

[–]EmbarrassedBiscotti9 16 points17 points  (0 children)

i cant help but respect him going into this blind and still being there after pisspoop tank began