Hacker Newsnew | past | comments | ask | show | jobs | submit | InfamousRece's commentslogin

Yeah that kind of thinking is known as “doorman fallacy”. Essentially the job whose full value is not immediately obvious to ignorant observer = “useless busy work”.

Will it compile Knuth’s test? https://en.wikipedia.org/wiki/Man_or_boy_test


That test is short enough to just paste it in here:

    begin
      real procedure A(k, x1, x2, x3, x4, x5);
      value k; integer k;
      real x1, x2, x3, x4, x5;
      begin
        real procedure B;
        begin k := k - 1;
              B := A := A(k, B, x1, x2, x3, x4)
        end;
        if k ≤ 0 then A := x4 + x5 else B
      end;
      outreal(1, A(10, 1, -1, -1, 1, 0))
    end
The whole "return by assigning to the function name" is one of my least favorite features of Pascal, which I suppose got it from Algol 60. Where I'm confused though is, what is the initial value of B in the call to A(k, B, x1, x2, x3, x4)? I'm guessing the pass-by-name semantics are coming into play, but I still can't figure out how to untie this knot.


Yeah that's one of the things the test was designed to catch: at that point, B is a reference, to the B that is being defined. Here's a C++ translation from https://oeis.org/A132343 that uses identity functions to make the types consistent:

    #include <functional>
    #include <iostream>
    using cf = std::function<int()>;
    int A(int k, cf x1, cf x2, cf x3, cf x4, cf x5)
    {
        int Aval;
        cf B = [&]()
        {
            int Bval;
            --k;
            Bval = Aval = A(k, B, x1, x2, x3, x4);
            return Bval;
        };
        if (k <= 0) Aval = x4() + x5(); else B();
        return Aval;
    }
    cf I(int n) { return [=](){ return n; }; }
    int main()
    {
        for (int n=0; n<10; ++n)
            std::cout << A(n, I(1), I(-1), I(-1), I(1), I(0)) << ", ";
        std::cout << std::endl;
    }
So in the expression `A(k, B, x1, x2, x3, x4)`, the `B` there is not called, it simply refers to the local variable `B` (inside the function `A`), that was captured by the lambda (by reference): the same B variable that is currently being assigned.


Thanks, that's a bit easier to trace: I think what broke my brain initially is that the x1-x5 parameters were declared as real, when they're apparently nullary functions returning a real. Brings to mind CAFs in Haskell. And all that that in 1960 when most things had less CPU power than the chip in my credit card.


No, because Knuth’s test was for Algol 60 and Algol 68 is a very different programming language.


I set up Scratch for my daughter but she ended up mostly playing games (Minecraft and Super Tux are her favorite). She did pick up some computer skills though. For example she has pretty good understanding of files and directories - something that most kids struggle with in mobile-first era. I don’t allow internet access. She is too young for that.


Apparently Postman needs to be online in order to send “telemetry”: https://anonymousdata.medium.com/postman-is-logging-all-your...


'Telemetry' that, among other offenses, secretly leaks customer secrets that they expressly claim to protect, according to that post.


"needs"...


I also get an empty page (content-length: 0)


They can just use ChatGPT for that.


> slowly, slowly lose that capability.

Well, not so slowly it seems.


My server stays powered off but will boot on receiving wol packet. It’s not a sophisticated set up but works for me. I have an always on Rpi running tailscale. I can ssh to it and send a wol from there. Once my server boots I can ssh to it and run the script to mount its data disks - they are encrypted so I need to type a passphrase. Quite a bit of work but I don’t have to do it often.


At least 20% of code must be AI generated with the goal of at least 80% by the end of the year. CEO declared that vibe coders create better solutions because they are “goal oriented” as opposed to traditional coders that are “process oriented”.


The same CEO will have a meltdown over the bugs in an unmanageable codebase next year. Fun times ahead :)


A lot of people in tech are seeing the limitations of llms but it will take a year or two for the mainstream audience to get there.


Godspeed


They’ve basically created the ultimate “process oriented” solution to that problem.


Short code SMS goes through different providers than regular SMS, so the deliverability will differ.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: