brian

joined 2 years ago
[–] brian@programming.dev 4 points 1 day ago

I'm sure all of them are just cherrypicked hotfixes from main tho

[–] brian@programming.dev 5 points 3 days ago (1 children)

repr is generally assumed to be side effect free and cheap to run, so things like debuggers tend to show repr of things in scope, including possibly exit

also then it behaves differently between repl and script, since repr never gets run. to do it properly it has to be a new repl keyword I imagine, but I still don't know if I'm sold on the idea

[–] brian@programming.dev 4 points 6 days ago

yeah fair enough. that wasn't really my point and I wasn't paying attention

[–] brian@programming.dev 2 points 6 days ago* (last edited 6 days ago) (2 children)

~~yeah it's incorrect bc it destroys multibyte characters, but~~ no idea what you're saying about u8 being a different type from unicode. the original code was reading bytes and converting them too? the typing isn't the issue, you can still store utf8 as a series of bytes

[–] brian@programming.dev 3 points 1 week ago

I mean, I'm not a big fan of bash, the most likely default shell, so my advice would be to explore some alternate shells.

I am a little surprised completions aren't working in bash by default, but yeah idk if it's possible to get the cycling through suggestions. double tap tab and it should at least list the options though.

I'd recommend you hop between some shells and see what you like. most distros tend to keep the default shell pretty vanilla, the most change you'll get is maybe zsh with some nicer defauls.

nushell is great and would be my first recommendation. everything is structured like powershell, but way less verbose and more emphasis on integrating the existing cli ecosystem than pwsh's commandlets for everything.

fish or oh-my-zsh are things other people recommend. you don't get structured data but they do give a better completion experience and other nice things

I want to like xonsh, and used it for a few years, but it has the same problems pwsh has with separate ecosystems of structured commands and unstructured text. if you're a python person though I'd consider it too though.

[–] brian@programming.dev 10 points 1 week ago (4 children)

there are other shells that have all the nice powershell things without the weird stuff (at least for not windows people), like nushell

although I wouldn't be surprised if powershell was the thing that started the trend of better shells

[–] brian@programming.dev 28 points 1 week ago (2 children)

are they switching to Teams or Teams?

[–] brian@programming.dev 2 points 1 week ago

ones that can run cli tools do great, they just use npm

[–] brian@programming.dev 0 points 2 weeks ago

because with things that the compiler does, like padding for alignment, it frequently takes up more space than that. that was my argument the whole time. what til are you talking about? I'm talking about an extra layer you've decided doesn't count. ofc sizeof bool will be a byte in all of those languages.

a bool taking up a single byte is a fantasy that those languages use because developers generally don't need to think about all the other stuff going on.

[–] brian@programming.dev 2 points 2 weeks ago

for some people it's nice to start from nothing and build up config, I'd recommend doom for anyone else. it's nice to be given a file with all the settings you can change instead of having to do it all yourself.

[–] brian@programming.dev 0 points 2 weeks ago* (last edited 2 weeks ago) (2 children)

a bool is actually a single bit, the rest is all padding

[–] brian@programming.dev 1 points 2 weeks ago (4 children)

c++ guarantees that calls to malloc are aligned https://en.cppreference.com/w/cpp/memory/c/malloc .

you can call malloc(1) ofc, but calling malloc_usable_size(malloc(1)) is giving me 24, so it at least allocated 24 bytes for my 1, plus any tracking overhead

yeah, as I said, in a stack frame. not surprised a compiler packed them into single bytes in the same frame (but I wouldn't be that surprised the other way either), but the system v abi guarantees at least 4 byte alignment of a stack frame on entering a fn, so if you stored a single bool it'll get 3+ extra bytes added on the next fn call.

computers align things. you normally don't have to think about it. Consider this a TIL moment.

view more: next ›