autumn64

joined 9 months ago
116
Rule (lemmy.blahaj.zone)
 
[–] [email protected] 1 points 5 months ago* (last edited 5 months ago)

My primary problem is that it's convention rather than rule.

I agree, and thus I think it's safe to assume we also hate the lack of encapsulation in Python despite technically being an OOP language.

Just don't use C if you can avoid it ;)

I'm fine with C, and if I stop coding in C I would starve since my job depends on it, still thanks for the suggestion though! ;)

[–] [email protected] 1 points 5 months ago (2 children)

There's still quite a few software written in C that does exactly as I did though. Look at OpenSSL's EVP library. I'm not sure about what you mean by "OOP but worse", wouldn't everything be worse than OOP since C isn't an OOP language? Anyways. As I said, what I did is way more common than it seems at least in C, so I get your point but still I can't seem to be able to see what's inherently wrong with it. I would appreciate if you shared any better ideas you might have, though!

[–] [email protected] 1 points 5 months ago (5 children)

C programmer here. I can't code in Rust and although I do have some interest in learning it, C is still the best one to me. Probably not the best way to do it, but I'd do something like this (based on the code in your ss):

typedef struct Player{
      float pos_x;
      float pos_y;
      float rotation;
} Player;

Player player_new(){
      Player player;
      player.pos_x = 0.0;
      player.pos_y = 0.0;
      player.rotation = 0.0;
      return player;
}

void player_move(Player *player, float x, float y){
      player->pos_x += x;
      player->pos_y += y;
      return;
}

void player_rotate(Player *player, float by){
      player->rotation += by;
      return;
}

int main(int argc, char *argv[]){
      Player player1 = player_new();
      player_move(&player1, 10.0, 10.0);
      player_rotate(&player1, 180.0);

      return 0;
}

I would probably move the struct Player and the functions player_new, player_move and player_rotate to another file (like player.c or sth), I'd create its respective header file with the definitions of each thing and with that I basically created a simple interface to create and handle players without needing OOP. English is not my native language, so I'm not really sure about what's the name of the programming paradigm used in C (which definitely is not OOP), but in my native language we call it "programación estructurada", which in English would be something like "structured programming".

Tbh I code in both non-OOP and OOP languages (most of the time C, JS and Python) and to me both paradigms are just fine. You can pretty much do anything in either, but each of them might work better for you on different situations and depending on your needs. I also use Vim btw.

674
rule (lemmy.blahaj.zone)
 
89
btw :3 (lemmy.blahaj.zone)
 
[–] [email protected] 1 points 8 months ago
460
rule (lemmy.blahaj.zone)
 
437
Jack Sparrow rule (lemmy.blahaj.zone)
 
862
earth rule (lemmy.blahaj.zone)
 
847
smoke machine rule (lemmy.blahaj.zone)
 
[–] [email protected] 7 points 8 months ago

I'm not sure if it's entirely degoogled, but I use LineageOS 19 without gapps and it goes quite nicely.

512
Open-source rule (lemmy.blahaj.zone)
 
434
English rule (lemmy.blahaj.zone)
 
175
Torrent rule (lemmy.blahaj.zone)
 
[–] [email protected] 14 points 9 months ago
[–] [email protected] 13 points 9 months ago* (last edited 9 months ago)

It's been 8 hours since the poll started, maybe somebody has already voted the "Other" option.

EDIT: Yep. I just checked and 4 people have voted "Other" so far.

[–] [email protected] 8 points 9 months ago

Aztec and mayan calendars iirc was 18 months of 20 days each and 5 extra days at the end of the year.

185
W rule (lemmy.blahaj.zone)
 
[–] [email protected] 11 points 9 months ago (1 children)

Clown, eggs, two, four, six, eight, gas, liquid, solid

130
Neofox rule (lemmy.blahaj.zone)
 
[–] [email protected] 1 points 9 months ago

I use InnerTune and it's just wonderful. I don't really care about translations and that stuff so I use the FOSS version and I never had any problems with it.

[–] [email protected] 2 points 9 months ago

Yeah I also do see a lot more content of the communities I'm subbed to than of the instance I created my account in.

view more: next ›