judofyr 10 hours ago

Well, aren't you going to share the reduced file?

Okay fine, let's see for ourselves:

    # Setup
    git clone [email protected]:RustPython/RustPython.git && cd RustPython && cargo build --release
    git clone [email protected]:tekknolagi/scrapscript.git && cp scrapscript/scrapscript.py .

    # Download interesting.sh, replace the path to RustPython
    chmod +x interesting.sh

    # Command in article:
    nix run nixpkgs#creduce -- --not-c interesting.sh scrapscript.py

Niiice:

    (93.2 %, 13717 bytes)
    (93.2 %, 13683 bytes)
    (93.3 %, 13614 bytes)
    (93.3 %, 13592 bytes)
    (93.3 %, 13571 bytes)
    (93.3 %, 13517 bytes)
    (93.3 %, 13449 bytes)
    (93.4 %, 13412 bytes)
    (93.4 %, 13365 bytes)
    (93.4 %, 13333 bytes)
    (93.4 %, 13313 bytes)

It seems to have stopped at "(96.4 %, 7347 bytes)" with the following output: https://gist.github.com/judofyr/47cba8a20cb2cd5798943ef975d0...

1
tomberek 7 hours ago

Random thought. Another commenter worried about the runtime of the program becoming mangled and performing destructive operations on your machine. What if you run the reducer as a source-to-source Nix derivation? Protects against dangerous things, and can be easily distributed to remote builders.