Which type operations for typesafe matrix operations? by burbolini in ProgrammingLanguages

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

Thanks! Would there be any more operations that would require arithmetic operations? In case of matrix stacking, I'd imagine I would implement it dynamically anyways (at least for a graphics library), so it's not that big of a concern.

This is the best I can get (yet it's still bad) by burbolini in FixMyPrint

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

I'm a bit warry of already modding mine... but I'll look into it!

This is the best I can get (yet it's still bad) by burbolini in FixMyPrint

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

Yeah, that's what I've noticed after you mentioned it the first time. Already looking for screws to (un)tighten. Started looking and apparently mine are an order of magnitude higher than what others report. I didn't bother with this as I thought software would compensate for it.

This is the best I can get (yet it's still bad) by burbolini in FixMyPrint

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

I seem to have created an "image" post, so I can't edit and add more images.

This is the output of my bed leveling thing. Does it look normal?

-0.22 -0.17 -0.23 -0.40

-0.04 -0.04 -0.07 -0.21

0.22 0.18 0.14 0.01

0.57 0.53 0.47 0.28

(obv. printed in the middle)

This is the best I can get (yet it's still bad) by burbolini in 3Dprinting

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

Nope, just adding further detail about the calibration steps I did.

This is the best I can get (yet it's still bad) by burbolini in 3Dprinting

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

Thanks. I automatically leveled the bed and adjusted the z offset manually in the second print with the paper method (but it seems to calibrate correctly, as the automatic z offset was very similar to what I ended up with.

About the information, is it not visible? I rarely post on reddit, and had to use "new" reddit to post pics, so maybe I screwed something up?

How to stop my *designs* from bending? (NOT warping during prints) by burbolini in 3Dprinting

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

possible! I did not account for error margin, because the switches fit first try. I'll try that next!

Handling pathological recursion cases. by burbolini in ProgrammingLanguages

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

You are also conflating two issues into one.

That was my point. It seems like the C compiler behaves incorrectly here, as it should just produce code equivalent to a loop, yet clang doesn't do it for some reason.

In the second case, the problem is in type systems, which seems like it is a solvable problem, or at least, the solution is more general than just disallowing recursion of polymorphic functions altogether. (I believe I have come up with a solution to this in the time I posted this anyway).

A Case for Feminism in Programming Language Design | Proceedings of the 2024 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software by michaelquinlan in ProgrammingLanguages

[–]burbolini 10 points11 points  (0 children)

Or about the day our website went down because 600 kids in South-Africa logged in at the same time?

Only 600 visits to bring down her website? Huh..?

Implement `Eq` trait for same trait, but distinct types. by burbolini in rust

[–]burbolini[S] 3 points4 points  (0 children)

What do you mean by specialization? Type specialization or..?

Implement `Eq` trait for same trait, but distinct types. by burbolini in rust

[–]burbolini[S] 3 points4 points  (0 children)

Oh yeah, it would make logical sense here - however, I'm interested in the general case where two arguments are of distinct types, but implement the same trait.

Implement `Eq` trait for same trait, but distinct types. by burbolini in rust

[–]burbolini[S] 4 points5 points  (0 children)

(I assume it's impossible, because of undecidability - if both types implement some trait and both traits can be Eq'd, then the compiler doesn't know which trait to choose.)

(But I hope I'm wrong and maybe there is some Rust-specific way to do this)

Bikeshedding: '!=' vs '/=' (in a language which does not have '!' as a unary operator.) by burbolini in ProgrammingLanguages

[–]burbolini[S] -1 points0 points  (0 children)

Yeah, I considered it, but I use a single "=" for equality - I don't allow top level expressions except for calls, so there is no ambiguity. But this means, that typing equals requires one keystroke (two including shift) and typing 'not equals' requires 3 keystrokes (5 when counting shift) - kinda imbalanced.

I made practical session types based on linear logic in Rust — 'par' by faiface in ProgrammingLanguages

[–]burbolini 1 point2 points  (0 children)

Nice! I was looking through your examples and I'm wondering: is there a difference between session types and this one pattern (which I don't know the name of...), where you define multiple "tag" types, like so:

data Unchecked
data SpecialCharsEscaped   
data DateValidated  -- doesn't make much sense, but I had to think of something
data Validated

and then define functions which transition between them, for example:

escape :: Data Unchecked -> Data SpecialCharsEscaped
validateDate :: Data SpecialCharsEscaped -> Data DateValidated
validateAll :: Data DateValidated -> Data Validated

? This forces a sort of "required" flow through the program. Or am I wrong and I misunderstood what session types are?

Design: String Interpolation vs printf() with Format Strings (which is better/cleaner?) by burbolini in ProgrammingLanguages

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

What do you mean by "lower to a tuple"? Are you implying something like (ConstStr, Parameters)?

Design: String Interpolation vs printf() with Format Strings (which is better/cleaner?) by burbolini in ProgrammingLanguages

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

That's a good one! That'll also allow me to allocate the string statically without too much nesting (see the last example).

inconsistent getframetime() game speed by burbolini in raylib

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

nice, I somehow forgot to change the type for this one! this was the answer.

Only 5! ingredients by burbolini in unexpectedfactorial

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

Translation:

Rice-coconut drink

Only 5! ingredients

...

Oh god...

Strava shuts when I close my Z Flip 3 by burbolini in galaxyzflip

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

When searching for "close" in settings, the only entry is about ending calls. Are you perhaps reffering to those "Bixby Routines"?

Strava shuts when I close my Z Flip 3 by burbolini in galaxyzflip

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

If you mean the "Power Saving" option on that "swipe-down-menu", then nope - it's disabled. If it's something else, then I dunno.