Live data from Hacker News

Viewing profile — jfecher

jfecher

HN member
Joined
Sat, Jun 17, 2017, 2:12 PM UTC
HN karma
203
Public activity
52 items

About jfecher

No profile information was provided.

Recent public activity

  1. comment
    Comment #48748730

    Creator of Ante here, passing `Rc ` as `&T` or `&Rc ` is a somewhat standard practice Ante inherits from Rust and C++ here. As for cycles, `Rc t` in Ante isn't magic and when used …

  2. comment
    Comment #48748434

    Most uses of `uniq` in the article aren't necessary and are just included for explicitness. Anywhere a `uniq` ref is required but you only have a `mut` ref, Ante will convert it to…

  3. comment
    Comment #48741147

    What would your ideal version look like? I recommend reading the C++ or Rust equivalent code in the article. I like the example because it is copied 1:1 with example code from a te…

  4. comment
    Comment #48741115

    Creator of Ante here. It's just a term I made up for mutation which does not change the "shape" of data in a way that can invalidate any of that data. Mutating a struct or tuple fi…

  5. comment
    Comment #48741106

    Creator of Ante here, Ante inherits Rust's Send/Sync for thread-safety. `mut` refs and `Rc` which provides shared mutability don't implement either and thus can't be shared across …

  6. story
  7. story
  8. comment
    Comment #45054382

    > I'm actually hoping to find a way to blend Nick's approach seamlessly with reference counting (preferably without risking panics or deadlocks) to get the best of both worlds, so …

  9. story
  10. comment
    Comment #44085302

    Right, compared to explicitly passing the parameter, with effects: - You wouldn't have to edit the body of the function to thread through the parameter. - The `can Use Strings` par…

  11. comment
    Comment #44085281

    > As I understand it, AE on low level is implemented as a longjmp instruction with register handling (so you can resume). Not quite. setjmp/lonjmp as they exist in C at least can j…

  12. comment
    Comment #44085191

    If the database effect wrote to a file it'd require the `IO` effect and code using it would need that effect as well. A compiler can generally show a function to be free of most si…

  13. comment
    Comment #44085172

    Developer of Ante here. Functions in languages with effect systems are usually effect polymorphic. You can see the example in the article of a polymorphic map function which accept…

  14. comment
    Comment #44083479

    Author of Ante here - it actually already has an (extremely basic) LSP. Tooling more or less required for new languages out of the gate these days and I'm eyeing the debugging expe…

  15. story
  16. comment
    Comment #39465408

    Ante is still mostly unusable unfortunately! Ownership & Borrowing were a relatively recent change and I've still yet to implement them. Algebraic effects are also still in progres…

  17. comment
    Comment #39465352

    Hi, author here! If anyone's curious, here's how ante addresses these issues: - It causes memory unsafety: Ante's `shared` references prevent memory unsafety by preventing projecti…

  18. story
  19. story
  20. comment
    Comment #31805495

    Hi! An uninterpreted function is one where the only thing we can assume about it is that `(x = y) => (f x = f y)`. That is if we give it the same input, we should get the same resu…

  21. comment
    Comment #31786974

    C can sometimes be an easier target since you don't have to learn LLVM's API. C is also more portable than llvm since there is a greater variety of C compilers for a greater variet…

  22. comment
    Comment #31785630

    Ack, my apologies, I didn't intend to be so inflammatory! If memory serves AFL was one of the first schemes (or perhaps the first?) to abandon the stack discipline to provide bette…

  23. comment
    Comment #31783056

    This is definitely an issue, but isn't one I run into often. Just like if I'm pasting code in rust I need to make sure it is inside or outside an if statement, I likewise need to e…

  24. comment
    Comment #31783003

    Agreed. Other whitespace sensitive languages like Haskell, F#, and Ante handle multiline lambdas just fine

  25. comment
    Comment #31782972

    Lifetime inference originates from region inference which is actually completely unrelated to linear/affine/uniqueness typing. Uniqueness typing can definitely complement lifetime …