HNHacker News
TopNewBestAskShowJobs

7h3kk1d

40 karma · joined June 30, 2015

submissionscomments
7h3kk1d··on Hazel: A live functional programming environment with typed holes
Never in TypeScript is the equivalent of "bottom" where a value can never appear. The type holes in hazel are for incomplete types (during development) and work more like the any type in typescript where they are consistent with every value.
7h3kk1d··on SVGs that feel like GIFs
I don't think you do. The --in param on svg-term-cli worked for me locally.
7h3kk1d··on Reasoning models don't always say what they think
I'm quite sure my grandma could not. You can make the argument these people aren't intelligent but I think that's a contrived argument.
7h3kk1d··on Reasoning models don't always say what they think
There's sentient humans who can't beat the first generation pokemon games.
7h3kk1d··on Functional Programming Self-Affirmations
I agree with regards to checked exceptions. Unfortunately Java doesn't support any form of polymorphism over thrown exceptions so it makes your code much harder to reuse. In languages that support polymorphic effects I imagine this is less of a concern.
7h3kk1d··on Functional Programming Self-Affirmations
""Make illegal states unrepresentable" is way too expensive to implement."

This has not been my experience. The speed increase in development not having to worry about the unrepresentable cases have been very valuable. In addition as requirements change migrating old data hasn't been a huge concern. For code changes refactoring the types helps address new cases as well.

7h3kk1d··on Hazel: A live functional programming environment featuring typed holes
I'm not sure I understand your point. Typed holes aren't trying to get rid of the concept of interfaces or well designed abstractions. Rather they aim to help deal with incomplete programs that are still under development.
7h3kk1d··on Hazel: A live functional programming environment featuring typed holes
If you put the cursor on it you'll see an error message at the bottom. In this case the case expression is inexhaustive because it's only handling lists of size 0, 1, and 2.
7h3kk1d··on Hazel: A live functional programming environment featuring typed holes
You can play with it at https://hazel.org/build/dev/ but programs don't "crash" when they're incomplete so "1 + 5 + ?" will evaluate to "6 + ?" in the editor. So your program can evaluate as far as possible with the holes. If you're using Java and throw NotImplementedException you lose all context to what did work.
7h3kk1d··on Hazel: A live functional programming environment featuring typed holes
Hazel will also run incomplete programs around holes. Most untyped languages will just crash as soon as something is incomplete.
7h3kk1d··on Machine learning is still too hard for software engineers
I think the above commenter is more critiquing the notion of relying on intuition all together.
7h3kk1d··on Google Voice is killing SMS voicemail transcripts and Chrome Extension texting
Do they have consumer app versions?
7h3kk1d··on Sqlite to Rest
Most are, but I have definitely worked on projects that weren't
7h3kk1d··on Google Container for Firefox – Prevent Google from tracking you around the web
Possibly add a merge trees feature?
7h3kk1d··on Triplebyte Raises $10M from Initialized Capital, Marissa Mayer and Paul Graham
I'd rather find a better long term fit quicker than have a pleasant process when looking.
7h3kk1d··on Hello, declarative world
I think the point is to consciously acknowledge what you're doing needs a side effect. It's similar with mutable state. Both state and side effects are completely necessary but should be isolated and controlled through known constructs.