Viewing profile — jfecher
jfecher
HN member- Joined
- Sat, Jun 17, 2017, 2:12 PM UTC
- HN karma
- 203
- Public activity
- 52 items
- HN profile
- View on Hacker News ↗
About jfecher
No profile information was provided.
Recent public activity
-
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 …
-
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…
-
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…
-
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…
-
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 …
- story
- story
-
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 …
- story
-
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…
-
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…
-
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…
-
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…
-
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…
- story
-
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…
-
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…
- story
- story
-
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…
-
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…
-
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…
-
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…
-
comment
Comment #31783003
Agreed. Other whitespace sensitive languages like Haskell, F#, and Ante handle multiline lambdas just fine
-
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 …