Live data from Hacker News

Viewing profile — duckerude

duckerude

HN member
Joined
Sun, Dec 10, 2017, 3:27 PM UTC
HN karma
1,877
Public activity
385 items

About duckerude

No profile information was provided.

Recent public activity

  1. comment
    Comment #47260871

    Perhaps notable: years ago the original original chardet was rewritten with a different license: https://github.com/hsivonen/chardetng AFAIK this was not a clean room reimplementat…

  2. comment
    Comment #47214789

    Previously: https://news.ycombinator.com/item?id=45585869 (At the time it wasn't public which OEM GrapheneOS would partner with.)

  3. comment
    Comment #47087423

    Looks like the command is still called tldr at least, only the package/repo has a different name.

  4. comment
    Comment #47084829

    That comment is saying to use C++, not to add destructors to C.

  5. story
  6. comment
    Comment #46277369

    I've worked on a system where ULIDs (not UUIDv7, but similar) were used with a cursor to fetch data in chronological order and then—surprise!—one day records had to be backdated, m…

  7. comment
    Comment #45994268

    The current amount of typechecking might be a net efficiency improvement AFAIK. It provides a hard runtime guarantee that variables are certain types while Python has to check whet…

  8. comment
    Comment #45992994

    Python managed to do this by not actually checking the types at runtime. If you declare a list[int] return type but you return a list[string] then nothing happens, you're expected …

  9. comment
  10. comment
    Comment #45633559

    I don't think this shows deep thought on his part. By Stallman's own telling a free Objective-C frontend was an unexpected outcome. Until it came up in practice he thought a propri…

  11. comment
    Comment #45590771

    I think you're getting fooled: >>> from io import StringIO >>> for line in StringIO("foo\x85bar\vquux\u2028zoot"): print(repr(line)) ... 'foo\x85bar\x0bquux\u2028zoot'

  12. comment
    Comment #45315623

    rustc is only loosely tied to LLVM. Other code generation backends exist in various states of production-readiness. There are also two other compilers, mrustc and GCC-rs. mrustc is…

  13. comment
    Comment #44998532

    RFC 3629 says surrogate codepoints are not valid in UTF-8. So if you're decoding/validating UTF-8 it's just another kind of invalid byte sequence like a 0xFF byte or an overlong en…

  14. comment
    Comment #44986043

    The big problem isn't invalid UTF-8 but invalid UTF-16 (on Windows et al). AIUI Go had nasty bugs around this ( https://github.com/golang/go/issues/59971 ) until it recently adopte…

  15. comment
    Comment #44855703

    Rust has the clap_complete package for its most popular arg parsing library: https://crates.io/crates/clap_complete ripgrep exposes its (bespoke) shell completion and man page gene…

  16. comment
    Comment #44158390

    See also: https://internals.rust-lang.org/t/can-the-standard-library-s... A file descriptor can't be -1 but it's not 100% clear whether POSIX bans other negative numbers. So Rust's…

  17. comment
    Comment #43647769

    It means that anything strange that happens next isn't a language bug. Whether something is a bug or not is sometimes hard to pin down because there's no formal spec. Most of the t…

  18. comment
    Comment #43455702

    I can think of a lot of cases where it theoretically could be a problem, but `cut -d=` is the only one I've found so far where an end user ran into trouble because of this ambiguit…

  19. comment
    Comment #43454057

    The problem is existing shell scripts and muscle memory and command histories. `cut -d=` has always worked and works on all the other implementations so it should keep working if y…

  20. comment
    Comment #43453677

    I researched this for my own argument parser ( https://github.com/blyxxyz/lexopt/issues/13 ) and concluded that it's a minor issue. This syntax is supported by argparse and clap, t…

  21. comment
    Comment #43333501

    Anders Hejlsberg explains here: https://youtu.be/10qowKUW82U?t=1154 . TL;DW: - C# is bytecode-first, Go targets native code. While C# does have AOT capabilities nowadays this is no…

  22. comment
    Comment #43194230

    According to the blog post ( https://fishshell.com/blog/rustport/#fn:formatting ): > A lot of the increase in line count can be explained by rustfmt’s formatting, as it likes to sp…

  23. comment
    Comment #42235478

    Agreed that societies can get sophisticated without writing, but Egypt was already considered mind-blowingly old in Plato's time. The start of the Timaeus features an eight thousan…

  24. comment
    Comment #38999534

    That's a wrapper around the actual implementation (which lives in an external package). Notice "use hashbrown::hash_map as base;" at the top. There's far more unsafe there: https:/…

  25. comment
    Comment #37103136

    C-c M-g l gets you there. (C-c M-g leads to a submenu that also has blame.) Until this thread I didn't know it could also do regions.