GNU social JP
  • FAQ
  • Login
GNU social JPは日本のGNU socialサーバーです。
Usage/ToS/admin/test/Pleroma FE
  • Public

    • Public
    • Network
    • Groups
    • Featured
    • Popular
    • People

Notices by ThePhD (thephd@pony.social)

  1. Embed this notice
    ThePhD (thephd@pony.social)'s status on Saturday, 24-May-2025 05:23:12 JST ThePhD ThePhD

    All programming does these days is fill me with incandescent rage. I should just transition fulltime to burntout malemom.

    In conversation about 2 days ago from pony.social permalink
  2. Embed this notice
    ThePhD (thephd@pony.social)'s status on Saturday, 24-May-2025 04:15:16 JST ThePhD ThePhD

    WideCharToMultiByte doesn't allow you to use the last two parameters for most code pages. Which means it's functionally fucking impossible for me to determine the success of a code page conversion.

    And the docs refuse to mention this. I spent all this time testing, for what??

    In conversation about 2 days ago from pony.social permalink
  3. Embed this notice
    ThePhD (thephd@pony.social)'s status on Sunday, 18-May-2025 03:49:13 JST ThePhD ThePhD

    EPIC WIN: I was going to implement defer in tinycc but someone has already done it for me!

    GREAT SUCCESS.

    In conversation about 8 days ago from pony.social permalink
  4. Embed this notice
    ThePhD (thephd@pony.social)'s status on Thursday, 08-May-2025 08:50:19 JST ThePhD ThePhD

    I have decided I'm going to add spice to the _Any_func feature: https://thephd.dev/_vendor/future_cxx/papers/C%20-%20_Any_func.html#design.voidptr

    Let's see how this goes over in the Committee in August...

    In conversation about 18 days ago from pony.social permalink

    Attachments

    1. No result found on File_thumbnail lookup.
      NXX26: _Any_func - A Universal Function Pointer Storage Type
  5. Embed this notice
    ThePhD (thephd@pony.social)'s status on Thursday, 08-May-2025 02:53:48 JST ThePhD ThePhD

    (please discuss, boost, etc, the usual)

    In conversation about 18 days ago from pony.social permalink
  6. Embed this notice
    ThePhD (thephd@pony.social)'s status on Thursday, 08-May-2025 02:53:47 JST ThePhD ThePhD
    in reply to

    I'm gonna go with %q probably

    In conversation about 18 days ago from pony.social permalink
  7. Embed this notice
    ThePhD (thephd@pony.social)'s status on Thursday, 08-May-2025 02:53:46 JST ThePhD ThePhD
    in reply to

    Apparently, a bunch of people do not know this (on other platforms, anyhow), so here's your pre-emptive C trvth nvke for the day:

    A void* is not guaranteed to be big enough or the right representation for any function pointer type. That is not a guarantee all architectures have and not one the C standard has either.

    It's why pedantic compilation yells at you for function pointer -> void* conversions.

    Windows, and all POSIX machines, have this guarantee. Embedded almost never does, especially with space-conscious / multi-segmented data spaces.

    In conversation about 18 days ago from pony.social permalink

    Attachments

    1. No result found on File_thumbnail lookup.
      either.it
      This domain may be for sale!
  8. Embed this notice
    ThePhD (thephd@pony.social)'s status on Thursday, 01-May-2025 05:29:22 JST ThePhD ThePhD

    Okay, C working draft finally done. That took way longer than expected but now we can write papers against the latest.

    • Latest working draft (same link as ever): https://drive.google.com/file/d/12kNvH0aYJhe3ZPmBKH_Nk5maTfxH2lJv/view
    • Latest editor's report (same link as ever): https://drive.google.com/file/d/1UhLdNB_Kdzn_M56CotYC_Dn0AjbDA2V7/view

    I am still working on proper Diff generation that shows changes from C23 to Now in a proper PDF-diff, but that's going to take a bit more time..

    In conversation about a month ago from pony.social permalink

    Attachments



  9. Embed this notice
    ThePhD (thephd@pony.social)'s status on Sunday, 06-Apr-2025 09:02:00 JST ThePhD ThePhD

    String sizes as size_t (and otherwise) for printf: https://thephd.dev/_vendor/future_cxx/papers/C%20-%20printf%20string%20size%20specifiers.html

    In conversation about 2 months ago from pony.social permalink

    Attachments

    1. No result found on File_thumbnail lookup.
      NXX22: printf string size specifiers (and general precision length modifiers)
  10. Embed this notice
    ThePhD (thephd@pony.social)'s status on Friday, 28-Mar-2025 00:41:11 JST ThePhD ThePhD

    Nope. Not gonna lose it about stdio.h -- I need peace.

    In conversation about 2 months ago from pony.social permalink
  11. Embed this notice
    ThePhD (thephd@pony.social)'s status on Monday, 24-Mar-2025 23:56:17 JST ThePhD ThePhD

    Now that I've had time to experience it:

    diagnosing int main() {} as a "K&R prototype" is a bit too aggressive on Clang's end. I would understand diagnosing simply a declaration of int main();, but diagnosing a full definition that has no parameters and also features no K&R-style definition parameter list is diabolical work, lol.

    In conversation about 2 months ago from pony.social permalink
  12. Embed this notice
    ThePhD (thephd@pony.social)'s status on Monday, 24-Mar-2025 23:56:16 JST ThePhD ThePhD
    in reply to

    A smarter diagnostic, especially for (inline) function definitions, would be to see if it features a K&R parameter list; if it does, error (because K&R is not supported). If it's just a naked declaration with whatever meow();, error. But definition with no K&R? Fine.

    In conversation about 2 months ago from pony.social permalink
  13. Embed this notice
    ThePhD (thephd@pony.social)'s status on Friday, 21-Mar-2025 17:13:50 JST ThePhD ThePhD

    Writing a paper about my adventures with pthreads is gonna be great.

    Surprisingly, it's not the Windows thread API that's awful, it's just pthreads.

    pthreads is garbage.

    Everyone has so, SO many pthread_foo_np -- where the np at the end stands for "nonportable" -- things to do bogstandard basic shit that it's infuriating, and even if you're working with "just" pthreads, in practice it's actually more fucked than just working with the win32 thread API or TlsAlloc.

    POSIX just keeps churning out bad API after bad API.

    In conversation about 2 months ago from pony.social permalink
  14. Embed this notice
    ThePhD (thephd@pony.social)'s status on Friday, 21-Mar-2025 17:13:48 JST ThePhD ThePhD
    in reply to

    It only gets worse, too. There's not just 1 way to spell "set name of thread" in pthreads.

    There's fucking five.

    • pthread_setname_np(pthread_t thrd, const char* name);
    • pthread_set_name_np(pthread_t thrd, const char* format, const char* name); // ??? HUH
    • pthread_set_name_np(pthread_t thrd, const char* name);
    • pthread_setname_np(const char* name); // Apple doesn't let you pick the thread, because Of Course They Don't
    • pthread_attr_setname_np(pthread_attr_t* attrs, const char* name); // This is the correct way, but only available on specific IBM platforms

    I also haven't included ANY of the return values (because for some of them, it's different for some fucking reason).

    These people couldn't design a good API if it spit on their face.

    In conversation about 2 months ago from pony.social permalink
  15. Embed this notice
    ThePhD (thephd@pony.social)'s status on Sunday, 16-Mar-2025 21:19:04 JST ThePhD ThePhD

    Clearly I haven't gotten enough of my 🍑 kicked by the standards process. So, here we go, doing Big Work all over again. The first of many larger changes for C that should've been done 25 years ago, since the days of __try/__finally.

    Let's get it done. ⤵

    The Defer Technical Specification: It Is Time | Björkus Dorkus | The Pasture | https://thephd.dev/c2y-the-defer-technical-specification-its-time-go-go-go

    In conversation about 2 months ago from pony.social permalink

    Attachments

    1. Domain not in remote thumbnail source whitelist: thephd.dev
      The Defer Technical Specification: It Is Time
      After the Graz, Austria February 2025 WG14 Meeting, I am now confident in the final status of the defer TS, and it is now time.
  16. Embed this notice
    ThePhD (thephd@pony.social)'s status on Sunday, 02-Mar-2025 14:23:34 JST ThePhD ThePhD

    I guess this means I need to really accelerate the pace of building my own C compiler and becoming my own cornerstone in a niche community. I think I already ruined my chances of becoming a proper GCC or Clang contributor.

    In conversation about 3 months ago from pony.social permalink
  17. Embed this notice
    ThePhD (thephd@pony.social)'s status on Sunday, 02-Mar-2025 14:23:33 JST ThePhD ThePhD
    in reply to

    Before anyone takes this sideways:

    It's a personal admission of fault. I don't think I have the guts to survive GCC and Clang's process for a lot of my smaller but honestly important fixes. They're also very strict on new additions, unless it's backed by a strong promise for long-term commitment, or it's proposed by a long-standing community member and goes through the suggestion process (e.g. the _Generic(type, ...) change that sailed into Clang and GCC and then got into C2y after like only a handful of months of implementation experience (which is good, I wrote about it and I like the change: https://thephd.dev/improving-_generic-in-c2y )).

    But. Most large, flagship vendors are not really a good place to try experimentation, and the vendors are signaling pretty loudly they're not interested unless you're ready to Commit All The Way. So, maybe it's time I take on some burden myself and take things in a different direction.

    Don't think tcc is worth it either; they've got a very specific vibe about how they want to do things, and kencc is likely off the map too. I hate to be That Guy, but yeah: I think I'm gonna need One More Implementation.

    In conversation about 3 months ago from pony.social permalink

    Attachments

    1. Domain not in remote thumbnail source whitelist: thephd.dev
      Improving _Generic in C2y
      The first two meetings of C after C23 was finalized are over, and we have started working on C2y. We decided that this cycle we’re not going to do that “Bugfix” followed by “Release” stuff, because that proved to be a REALLY bad idea that killed a ton of momentum and active contributors during the C11 to C17 timeframe. So, this time, we’re hitting both bugfixes AND features so we can make sure we don’t lose valuable contributions and fixes by stalling for 5 to 6 years again. So, with that…
  18. Embed this notice
    ThePhD (thephd@pony.social)'s status on Saturday, 08-Feb-2025 01:53:00 JST ThePhD ThePhD

    I gotta see so many posts saying "Rust is slower" and like I think these people just evaluate languages and designs based on vibes and not based on like the material output from the compilers.

    In conversation about 4 months ago from pony.social permalink
  19. Embed this notice
    ThePhD (thephd@pony.social)'s status on Monday, 20-Jan-2025 05:26:15 JST ThePhD ThePhD

    Damn this is thicc!!

    I can't read it yet but here's to making good progress on a better C compiler.

    In conversation about 4 months ago from pony.social permalink

    Attachments


    1. https://cdn.pony.social/media_attachments/files/113/058/624/270/800/860/original/b96fbab4542e2581.jpg
  20. Embed this notice
    ThePhD (thephd@pony.social)'s status on Wednesday, 18-Dec-2024 10:39:18 JST ThePhD ThePhD

    The damn survey has 950+ responses. If I get another burst it'll hit 1,000.

    There's no way I can manually very every single entry, lol. Guess I'll have to use some basic general-checking techniques in a python script.

    https://pony.social/@thephd/113659160563714508

    In conversation about 5 months ago from pony.social permalink
  • Before

User actions

    ThePhD

    ThePhD

    🎇 Somehow Is A C Expert ✨ Smooches Unicode-kun 💕 The C Standard Cannot Be Replaced And Will Never Be Destroyed. 🧟♀️ Pixel Art is Cool ✨

    Tags
    • (None)

    Following 0

      Followers 0

        Groups 0

          Statistics

          User ID
          133624
          Member since
          2 Jun 2023
          Notices
          116
          Daily average
          0

          Feeds

          • Atom
          • Help
          • About
          • FAQ
          • TOS
          • Privacy
          • Source
          • Version
          • Contact

          GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.

          Creative Commons Attribution 3.0 All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.