5220

Zerosquare (./5219) :
GitHub - snoack/python-goto: A function decorator, that rewrites the bytecode, to enable goto in PythonGitHubA function decorator, that rewrites the bytecode, to enable goto in Python - snoack/python-goto

#sifflote#

Il va se faire des amis lui cheeky
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

5221

Warpten (./5217) :
ça malheureusement ça ne sera jamais corrigé, et même en C++ ça nous tire dans les pattes sauf que c'est encore moins visible.
Il pourrait ajouter pour chaque fonction dépendant de la locale une fonction prenant la locale en argument.

Sinon pour illustrer un peu mon propos, en C++, regardons donc les différentes façons de déclarer un entier et l'affecter à 5:
  int a1 = 5;
  int a2 (5);
  int a3 {5};
  auto a4 = 5;
  auto a5 (5);
  auto a6 {5};
  int a7;
  a7 = 5;
Y'avait-il vraiment besoin d'avoir tant de façons de faire ?

5222

C'est quoi le problème avec les locales ?
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

5223

stream_libarchive: workaround various types of locale braindeath · mpv-player/mpv@1e70e82GitHubFix that libarchive fails to return filenames for UTF-8/UTF-16 entries. The reason is that it uses locales and all that garbage, and mpv does not set a locale. Both C locales and wchar_t are shitf...

5224

Ferrous Systems Donates Ferrocene Language Specification to Rust Project - The Rust FoundationThe Rust FoundationRust 1.0 was published in May 2015. As the language approaches its 10th anniversary, Rust has become one of the fastest growing and most-loved languages [1] among developers, thanks to a combination of speed, safety and a vibrant community.  Like any growing open source language, Rust has a considerable amount…
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

5225

Blablablabla commercial
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

5226

Même si ca n’est pas une nouvelle qui changera la vie de grand monde, j’ai du mal à voir pourquoi qualifier ça de blabla commercial.
Ce qu’a fait Ferrocene, est un travail de spécification conséquent nécessaire pour l’utilisation de Rust dans certains domaines industriels, comme l'automobile ou la médecine, qui requièrent des normes spécifique. Et c’est plutôt cool que ce travail profite au projet Rust en général.
avatar

5227

OVD8FuX.jpeg
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

5228

grin
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

5229

love
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

5230

CLion Is Now Free for Non-Commercial Use | The CLion BlogThe JetBrains BlogCLion, a JetBrains IDE, is now free for non-commercial use! Learn more in the blog post.

Mais :
It’s important to note that, if you’re using a non-commercial license, you cannot opt out of the collection of anonymous usage statistics. We use this information to improve our products. The data we collect is exclusively that of anonymous feature usages of our IDEs. It is focused on what actions are performed and what types of functionality of the IDE are used. We do not collect any other data. This is similar to our Early Access Program (EAP) and is in compliance with our Privacy Policy.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

5231

\o/
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

5232

epee ! \o/
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

5233

Zerosquare (./5230) :
CLion Is Now Free for Non-Commercial Use | The CLion BlogThe JetBrains BlogCLion, a JetBrains IDE, is now free for non-commercial use! Learn more in the blog post.

Mais :
It’s important to note that, if you’re using a non-commercial license, you cannot opt out of the collection of anonymous usage statistics. We use this information to improve our products. The data we collect is exclusively that of anonymous feature usages of our IDEs. It is focused on what actions are performed and what types of functionality of the IDE are used. We do not collect any other data. This is similar to our Early Access Program (EAP) and is in compliance with our Privacy Policy.

Suffit de bloquer ça en aval et hop

5234

C'est moche de ne pas respecter leur licence embarrassed
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

5235

https://thehackernews.com/2025/05/malicious-npm-packages-infect-3200.html
Cybersecurity researchers have flagged three malicious npm packages that are designed to target the Apple macOS version of Cursor, a popular artificial intelligence (AI)-powered source code editor.

"Disguised as developer tools offering 'the cheapest Cursor API,' these packages steal user credentials, fetch an encrypted payload from threat actor-controlled infrastructure, overwrite Cursor's main.js file, and disable auto-updates to maintain persistence," Socket researcher Kirill Boychenko said.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

5236

Zerosquare (./5230) :
CLion Is Now Free for Non-Commercial Use | The CLion BlogThe JetBrains BlogCLion, a JetBrains IDE, is now free for non-commercial use! Learn more in the blog post.

Mais :
It’s important to note that, if you’re using a non-commercial license, you cannot opt out of the collection of anonymous usage statistics. We use this information to improve our products. The data we collect is exclusively that of anonymous feature usages of our IDEs. It is focused on what actions are performed and what types of functionality of the IDE are used. We do not collect any other data. This is similar to our Early Access Program (EAP) and is in compliance with our Privacy Policy.
love

swlK

Même leur page de login est top love

https://account.jetbrains.com/login
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

5237

oui

perso, je passe par leur jetbrains Toolbox, même si c'est vrai qu'on n'y gagne pas grand-chose
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

5238

Postman is logging all your secrets and environment variablesMediumI was originally investigating this report that Postman is not HIPAA compliant. I found that Postman is not just wholly unsuitable for…
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

5239

Oops grin
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

5240

GitHub - RRTogunov/MSPaintComputer: MSPaintComputer is the start of building functional computer executed natively within Microsoft Paint.GitHubMSPaintComputer is the start of building functional computer executed natively within Microsoft Paint. - RRTogunov/MSPaintComputer
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

5241

Ma-mma mia. Chapeau l'artiste (littéralement je crois qu'on peut dire) cheeky
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

5242

Dans la catégorie "les compilateurs C vous poignardent dès que vous tournez le dos" :
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

5243

Je présente C-Zero:

// ============================================================================= // AstroFury: A C-Zero Language Showcase // // This file demonstrates the features of the C-Zero language by implementing // a simple, hypothetical retro space shooter game. It is intended to be used // as a comprehensive test case for a C-Zero parser and compiler. // ============================================================================= // 1. Module System: Every file starts with a module declaration. // This replaces C's header files. module astrofury; // We can import other modules. The compiler/linker is responsible for finding them. // These are hypothetical modules representing a simple standard library. import system::video; import system::input; import system::rng; import system::math; // ============================================================================= // 2. Constants and Compile-Time Features // ============================================================================= // 'readonly' creates a true, type-safe constant, replacing `#define`. // The compiler can place this data in ROM. exported readonly uint16 SCREEN_WIDTH = 320; exported readonly uint16 SCREEN_HEIGHT = 200; // 'compile_if' provides structured, safe conditional compilation. // This replaces C's `#if`/`#endif`. internal readonly bool DEBUG_MODE = true; compile_if (DEBUG_MODE == true) { // This function will only exist in debug builds. external void log_message(string msg); } // ============================================================================= // 3. Data Structures: Enums, Structs, Bitfields, and Unions // ============================================================================= // 'enum' with an explicit underlying type for precise memory layout. exported enum GameState : uint8 { TITLE_SCREEN, PLAYING, GAME_OVER } // Another enum, this time for identifying entity types. enum EntityType : uint8 { PLAYER, ENEMY_FIGHTER, ENEMY_BOMBER, PLAYER_BULLET, ENEMY_BULLET } // 'struct' with public/private access modifiers and bitfields. // The 'bits' block has an explicit packing order defined by the platform config. struct StatusFlags { public: bits { uint8 active : 1; // Is this entity currently in use? uint8 shielded : 1; // Is it shielded from damage? uint8 exploding : 1; // Is it in an exploding state? uint8 _reserved : 5; // Reserved for future use. } } // A base struct for all game objects, demonstrating composition. struct EntityBase { public: EntityType type; StatusFlags flags; fixed x, y; // Position using platform-defined fixed-point math. fixed dx, dy; // Velocity. private: uint16 internal_id; // Private members are only accessible by methods of EntityBase. } // A struct for the player. It uses the 'base' keyword for composition. // This is a zero-cost abstraction for code reuse. struct Player { public: base EntityBase entity; // 'base' must be the first member. uint8 health; uint16 score; private: uint8 lives; } // A struct for enemies. struct Enemy { public: base EntityBase entity; uint8 hit_points; uint16 despawn_timer; } // A simple struct for bullets. struct Bullet { public: base EntityBase entity; uint8 time_to_live; } // 4. Tagged Unions: A core feature for safe polymorphism. // This union can hold any one of our game objects. The compiler tracks the // active variant, preventing unsafe access. union GameObject { PlayerObject { Player p; }; EnemyObject { Enemy e; }; BulletObject { Bullet b; }; Empty { }; // An empty variant for unused slots. } // ============================================================================= // 5. Globals and Hardware Access // ============================================================================= // 'internal' is the default visibility, replacing C's `static` at file scope. internal GameState current_state; // 'preserve' creates a local variable that retains its value across function calls, // replacing C's `static` inside a function. internal uint16 generate_id(void) { preserve uint16 next_id = 0; next_id = next_id + 1; return next_id; } // 'hardware' qualifier indicates a variable can change at any time, // replacing C's `volatile`. Accesses to it will not be optimized away. // Attributes are specified at the end of the declaration. hardware uint8 VSYNC_COUNTER @(address:0xD011); // Hypothetical VSync register. // 'fastmem' is a platform-agnostic way to request allocation in a special // high-speed memory region (e.g., ZP on 6502). fastmem GameObject game_objects[32]; // ============================================================================= // 6. Functions, Methods, and ABI Control // ============================================================================= // 'external' declares a function defined elsewhere (e.g., in ROM or assembly). // This showcases the powerful ABI control features of C-Zero. // This function uses a named ABI from the platform config file. external void clear_screen(uint8 color) @(abi:"fastcall"); // This function demonstrates per-parameter location specifiers. // This syntax remains correct according to the spec. external void draw_sprite(uint8(register:A) sprite_id, uint16(stack) x, uint16(stack) y); // Here we use the short aliases for location specifiers. // (A) is short for (register:A), (@0x8000) for (address:0x8000), etc. external void set_palette(uint8(A) index, ptr uint8(@0x8000) color_data); // An 'interrupt' function. The compiler will auto-generate code to save/restore // all registers and use a special "return from interrupt" instruction. interrupt void nmi_handler(void) { // Handle a non-maskable interrupt, e.g., for music playback. asm { // Inline assembly is possible for ultimate low-level control. // The exact syntax would be platform-specific. "PLAY_MUSIC_TICK" } } // A method "attached" to the Player struct using ':'. // The 'self' pointer is implicitly available. void Player:take_damage(uint8 amount) { if (self.entity.flags.shielded == 1) { return; } if (self.health > amount) { self.health = self.health - amount; } else { self.health = 0; self.lives = self.lives - 1; // ... trigger explosion ... } } // A 'readonly' method guarantees it will not modify 'self'. // The compiler enforces this. uint16 Player:get_score(void) readonly { return self.score; } // A function using a pass-by-reference parameter with the 'ref' keyword. // This function can modify the original variable passed to it. void increase_score(ref uint16 score, uint16 amount) { score = score + amount; // 'score' is used directly, no '*' needed. } // ============================================================================= // 7. Function Pointers // ============================================================================= // Forward declarations for AI functions. internal void ai_fighter(ref Enemy e); internal void ai_bomber(ref Enemy e); // A function pointer declared using the safe, list-based form. // The compiler knows all possible targets, enabling deep analysis. func_ptr(ai_fighter, ai_bomber) enemy_ai_behavior; // A function pointer using the signature-based form for more flexibility. // The compiler would warn that it cannot guarantee perfect safety here. func_ptr(void(ref Enemy)) generic_ai_ptr; // ============================================================================= // 8. Control Flow and Expressions // ============================================================================= internal void update_game(void) { // 'foreach' with 'ref' provides modifiable, zero-copy access to elements. foreach (ref GameObject go : game_objects) { // The vastly improved 'switch' statement is the primary way to handle // tagged unions. It's safe and requires no breaks by default. switch (go) { case PlayerObject as po: // Handle player input if (input::is_joy_down(0, input::UP)) { po.p.entity.y = po.p.entity.y - (1.5 as fixed); } increase_score(&po.p.score, 1); // Call site for 'ref' requires '&' break; // We still need breaks to exit the switch case EnemyObject as eo: // Assign and call a function pointer. if (eo.e.entity.type == ENEMY_FIGHTER) { enemy_ai_behavior = &ai_fighter; } else { enemy_ai_behavior = &ai_bomber; } enemy_ai_behavior(&eo.e); break; case BulletObject as bo: bo.b.entity.y = bo.b.entity.y - (4.0 as fixed); if (bo.b.time_to_live == 0) { bo.b.entity.flags.active = 0; } else { bo.b.time_to_live = bo.b.time_to_live - 1; } break; case Empty: // This case is for empty slots, do nothing. break; // Explicit break } } // 'switch' with ranges and explicit 'fallthrough'. uint8 score_category = get_player().get_score() / 1000; switch (score_category) { case 0: // ... break; case 1 .. 5: // "Rookie" rank log_message("Player is a Rookie"); fallthrough; // Explicit fallthrough to the next case case 6 .. 10: // "Veteran" rank log_message("Player is a Veteran"); break; default: log_message("Player is an Ace!"); break; } } // ============================================================================= // 9. Casting and Optimization Control // ============================================================================= internal void render_frame(void) { clear_screen(0x01); // Blue background // 9a. Casting // 'foreach' with 'readonly ref' provides guaranteed read-only, zero-copy access. // This is the most efficient and safe way to iterate when not modifying elements. foreach (readonly ref GameObject go : game_objects) { switch (go) { case PlayerObject as po: draw_sprite(0, po.p.entity.x as uint16, po.p.entity.y as uint16); break; case EnemyObject as eo: // Assuming enemies have a different sprite ID, e.g., 1 draw_sprite(1, eo.e.entity.x as uint16, eo.e.entity.y as uint16); break; case BulletObject as bo: // Assuming bullets have a different sprite ID, e.g., 2 draw_sprite(2, bo.b.entity.x as uint16, bo.b.entity.y as uint16); break; // No need for an 'Empty' case, as there's nothing to draw. } } // An example of a dangerous, but sometimes necessary, cast. // 'transmute' is used to reinterpret a raw integer address as a pointer. // The keyword is intentionally loud to signal risk. ptr Player p_hw = transmute(ptr Player, 0xC000); p_hw.score = 9999; // Directly manipulate memory at 0xC000. // 9b. Optimization Control // The 'unoptimized' block is critical for timing-sensitive operations. // The compiler is forbidden from reordering instructions inside this block. unoptimized { // Wait for the start of the vertical blank. uint8 start_vsync = VSYNC_COUNTER; while (start_vsync == VSYNC_COUNTER) { // This busy-wait loop will not be optimized away. } } // ... swap screen buffers ... } // ============================================================================= // 10. Main Application Entry Point // ============================================================================= exported int16 main(void) { current_state = GameState.TITLE_SCREEN; while (true) { switch (current_state) { case TITLE_SCREEN: // ... show title ... if (input::is_joy_pressed(0, input::FIRE)) { current_state = GameState.PLAYING; } break; case PLAYING: update_game(); render_frame(); break; case GAME_OVER: // ... show game over screen ... break; } } return 0; }
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

5244

intéressant sur les switch, que réfère le "as" ?

preserve et hardware c'est de la sémantique

bits est sympa, change t'il l'ordre seul suivant l'architecture ?

pourquoi pas mettre des soupçons de classes dans les structures, mais alors les fonctions sont externes à la déclaration ?
et la le mec il le pécho par le bras et il lui dit '

5245

C'est un langage que tu as fait toi même ? Si oui, c’est avancé a quel point ? Je ne vois aucune référence à C-Zero sur Google à part un projet différent (un sous-ensemble de C). Ça pourrait te poser un soucis si C-Zero est le nom définitif. Globalement j’ai l’impression que tous les nom qui tournent autour de C sont déjà pris(C0, C1,C2,C3,C++,C+,C#,C--,...)

Je ferai un post plus long sur ce que j'en pense quand j'aurais le temps car il y a beaucoup de chose a en dire, mais a première vue, je trouve que c'est probablement la meilleure proposition que j'ai vu dans le domaine du langage de type C en plus propre. Ça m'a fait penser à C2 dans l'idée de base mais en mieux pensé.

Je suis pas sur que je l'utiliserai, le Rust couvrant plus ou moins toutes les fonctionnalités (à part l'ABI custom qui est un besoin que je n'ai pas) et en offrant d'autres en plus. De plus il commence a avoir un écosystème conséquent ce qui est plus rassurant pour une utilisation pro. Mais je comprend tout a fait l'envie de rester sur un scope de fonctionnalité plus limité que Rust et avec moins de contraintes.
avatar

5246

Oui c'est joli. Comment se débrouille le langage pour trouver les méthodes d'objets qui sont déclarés dans d'autres fichiers ? Il y a d'abord une passe "globale" ?
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

5247

(je paris mon c15 que c'est généré par ia

donne nous le prompt avec ton cahier des charges smile

> Uther : c'est surtout que ça pourrait être inclus dans le prochain C (bon sans preserve et hardware on ne va pas toucher static et volatile) en tous cas le flip automatique des bitfilelds serait pertinent .. un un concept évitant un pointeur vers la structure serait pertinent, après de la à en faire un langage neuf, éventuellement un transpileur
et la le mec il le pécho par le bras et il lui dit '

5248

À part peut-être le bloc unoptimised, ça devrait pouvoir se transpiler en C oui smile
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

5249

je ne l'ai pas vu passer, mais il est dur de définir la portée réelle d'un bloc "non optimisé" quant l'étape suivante est un changement vener de langage (#pragma max02 ? ça voudrait dire un volatile global au bloc ? inutile à mon sens
et la le mec il le pécho par le bras et il lui dit '

5250

Dans son exemple c'est inutile on dirait oui, vu que le VSYNC_COUNTER est hardware/volatile🦜.

Et pour le nom : C80 alors. C15 ça fait un peu trop « voiture qui va finir dans un arbre », et C4 ça fait un peu trop « ça va te péter à la gueule ». Mais C80 en jeu de mots avec le hardware des années 80, et le Z80, et ça sonne bien.

La seule chose qui m'inquièterait c'est comment avoir un code optimisé au même point que le C classique ? (Si on passe par LLVM par exemple)
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741