Live data from Hacker News

Viewing profile — harpocrates

harpocrates

HN member
Joined
Mon, Aug 15, 2016, 6:43 AM UTC
HN karma
532
Public activity
89 items

About harpocrates

No profile information was provided.

Recent public activity

  1. comment
    Comment #27421688

    GHC also uses Demarau-Levenshtein [0]. The fuzzy lookup function gets re-used for a couple places too (including whatever you encountered in GHCi). [0]: https://github.com/ghc/ghc/…

  2. story
  3. comment
    Comment #22707940

    For anyone curious about the difference between the two: Hughes' pretty printer works really well for pretty-printing Haskell code, but Wadler's is more flexible for pretty-printin…

  4. comment
    Comment #21981892

    As I've already posted elsewhere on this thread, such a tool has been developed in parallel (and with the intent to consume the output of) c2rust. Development on that occurs here: …

  5. comment
    Comment #21981080

    Step 2 has been happening concurrently, and pretty much since the start of the project. See https://github.com/immunant/c2rust/tree/master/c2rust-refact... . It is just a lot tough…

  6. comment
    Comment #20483666

    Safety in the form of tightly-fitting types is great, but the signatures definitely suffer a bit in readability (otherwise, Haskell signatures are generally quite helpful when deci…

  7. comment
    Comment #18092542

    > It's available in Haskell as a first class citizen. Not really. Haskell's laziness makes it easier to write functions that are memoized, but it does not automagically memoize fun…

  8. comment
    Comment #17594178

    `@implicitNotFound` still only gives you a top-level failure message. Also, my comment was aimed more at developers of libraries with complex implicit derivations not the consumers…

  9. comment
    Comment #17590424

    I heartily recommend [splain][0] to anyone debugging non-trivial implicits. It is a scalac compiler plugin that, among other things, will swap out the horribly unhelpful "implicit …

  10. comment
    Comment #17439682

    FWIW we've spent a lot of time trying to re-engineer the control-flow translation to be heuristic-friendly in c2rust. We've extended and tweaked the Relooper algorithm in hopes of …

  11. comment
    Comment #17438895

    The idea is that this is a first step towards safe Rust. First, you convert to unsafe (but semantically preserving) Rust, then you refactor. The refactor stage probably will involv…

  12. comment
    Comment #17438854

    I'm a primary contributor to c2rust and I may be the person "stolen" away from corrode. I'd like to apologize if it feels like we ripped off ideas without giving due credit - the p…

  13. comment
    Comment #17070377

    I have very mixed feelings about using parser generators instead of hand written parsers. I've contributed to GHC's parser grammar and spent a lot of time reading Rust's hand-writt…

  14. comment
    Comment #16949180

    Some other applications are more interesting. For instance, finger trees (which back the efficient implementations of a handful of immutable data structures) usually are implemente…

  15. comment
    Comment #16667466

    The introductory one is known as Baby Rudin and is a pretty good first exposure to real analysis.

  16. comment
    Comment #16590159

    I'm not sure I understand: WebAssembly is the output of a (hopefully) optimizing compiler. LLVM is such a compiler backend. If you use WebAssembly today, you are probably going thr…

  17. comment
    Comment #16588258

    > No they wouldn't. They still need to turn WebAsm/IR into assembly, which is the thing they already do today anyway. Nothing changes for compilers, other than the potential for op…

  18. comment
    Comment #16586311

    What other low-level format supports my points (a), (b), and (c)? And has an actual spec? EDIT: you've since added some examples. Here are my (very subjective) opinions: - The JVM …

  19. comment
    Comment #16586179

    One thing that continues to amaze me is that WebAssembly isn't being discussed more outside of the context of the web. Think about it just as a format that (a) is low-level enough …

  20. comment
    Comment #16570918

    Yes, when people use them. There is no really elegant way of adding a type annotation to a `do` block. (do x It isn't uncommon to have to scan the `do` block for some statement tha…

  21. comment
    Comment #16570261

    You've changed my mind on adding special syntax for `async`, generators, and results (`?`). I previously thought it was a big mistake given that these all generalize as monads (gra…

  22. comment
    Comment #16446771

    This is not possible in regular Haskell. For one, it isn't obvious how to do such a desugaring and, even if it were, this is pretty gross. I remember a co-worker finding some weird…

  23. comment
    Comment #16431627

    > People underestimate the compiler cost of deriving instances. It adds up very fast if you derive lots of functors and foldables in your quest for unique names everywhere. Do you …

  24. comment
    Comment #16343055

    The comments from the original post[1] of this are still quite relevant. I feel like I've seen this link posted here several times (much more recently than 2009), but I can't find …

  25. comment
    Comment #15992027

    This is a cool (if not particularly new) paper. Interestingly enough, the [vector library][0] mentioned in the paper isn't just a research project - it is one of the most widely us…