Viewing profile — jw-
jw-
HN member- Joined
- Sun, Jan 12, 2014, 2:19 PM UTC
- HN karma
- 42
- Public activity
- 21 items
- HN profile
- View on Hacker News ↗
About jw-
No profile information was provided.
Recent public activity
-
comment
Comment #17756659
General recursion in programs (that makes termination undecidable) requires a fix-point operator of type (a -> a) -> a The logical equivalent of this is an axiom (P -> P) -> P whic…
-
comment
Comment #16429838
How is sequencing described in the type of join?
-
comment
Comment #16108510
I think SSA is related to CPS, but I'm not sure of the correspondence with Linearity. I think the key difference (but I'm not sure), is that SSA only asserts that a variable is ass…
-
comment
Comment #16108473
I think you could say that. Another way to look at it would be to say it's about organising your code in such a way that side-effects don't really matter. For instance, if only I h…
-
comment
Comment #15984327
I also get the impression that some people view using dynamically typed languages as a badge of honor, taking more expertise to harness the greater 'expressive' power, all whilst j…
-
comment
Comment #15984171
It's already been flirted with in JS I believe [1], though not specifically for Flow. The problem is that it falls down in the higher order case, which happens quite alot in JS. Al…
-
comment
Comment #15984104
I'd consider those languages optionally typed, rather than gradually typed, as they don't insert run-time type checks. Regardless, I still think it's all interesting and valuable w…
-
comment
Comment #15649221
By OCaml's let syntax do you mean this: https://blog.janestreet.com/let-syntax-and-why-you-should-us... ? You can also add F# computation expressions to the list!
-
comment
Comment #15642781
I think the jump from 'Category' to 'Value: Anything that can be assigned to a variable.' was a somewhat jarring change in abstraction level. Also, trying to explain Monad, Comonad…
-
comment
Comment #15512523
I'm not really sure why you need the requirement of infinite sequences to do functional programming, or the restriction of no intermediate variables. Let bindings seem like a nice …
-
comment
Comment #15272415
I've done some work on dynamic type checking for JavaScript and the tricky part is always when things start going higher order; sadly this is often omitted from examples. The motiv…
-
comment
Comment #15272354
As far as I can tell this isn't dynamic, it just builds an AST. Am I missing something?
-
comment
Comment #15272338
You could easily use unit tests to get better coverage.
-
comment
Comment #15272332
Really interesting stuff! I tried out some higher-order examples: INPUT >>> function add(f, b) { return f(b); }; let a = add(function(x) {return x + 1}, 3); OUTPUT >>> function add…
-
comment
Comment #14572508
> Think about being able to specify protocols in the type system and ensuring that your client and server meet the specifications. The example in that link is about user authentica…
-
comment
Comment #13255588
This seems like a very simple concept when compared with other systems using software transplants [1]. The most important thing I gleaned from this is the benefit of having 'type i…
-
comment
Comment #13255534
"So, is JavaScript a truly functional programming language? The short answer is no. Without support for tail-call optimization, pattern matching, immutable data struc- tures, and o…
-
comment
Comment #11906181
This is all true, but is it not a problem that most static languages don't let you (easily) specify the kind of invariants people include in unit-tests.
-
comment
Comment #11548210
I would distinguish Hearthstone (a.k.a Wizard Poker) from the rest; Hearthstone is fundamentally a gambling game. However, I would also distinguish the "in-game" gambling in Hearth…
-
comment
Comment #11398947
The problem doesn't really have anything to do with immutability; the problem is dependency and composition. E.g. f :: A -> B g :: B -> C will let me write g(f(x)), but not f(g(x))…
-
comment
Comment #7090649
For those interested in the learning more about single language web applications the Links project ( http://groups.inf.ed.ac.uk/links/ ) has been going for some time with quite a f…