When explaining the value of having no null pointers, the typical “no null pointer exceptions” sales pitch isn’t the best one we can offer. The point is that it helps you make illegal states unrepresentable. That’s a big benefit when programming, and especially when refactoring.
-
-
A similar reasoning goes for writing good unit tests: their major benefit is that they can be used to validate refactored versions of my code, not just the initial implementation.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
I think it's possible that "make illegal states unrepresentable" is the bigger benefit of not having null pointers, but that "no null pointer exceptions" might be a better sales pitch nonetheless because it's more relevant to the target audience's experiences and easier to grasp
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
so long as you don’t throw wildcard matches around too liberally

-
I’m actually noodling with a research idea to fix a small subset of a related problem. dm if you wanna chat on that one
End of conversation
New conversation -
-
-
we call this workflow "chasing rustc" at dropbox -- i wonder if there are other concise names for it?
-
Compiler driven development or CDD
End of conversation
New conversation -
-
-
I actually sometimes vim quickfix window and compiler errors to do refactorings. Change the name of a function, get compile errors into quickfix list. Apply subsitution to all items on a quickfix with cdo s/foo/bar (skipping details here).
-
Also I think people don't get that the fact that you don't need to worry about null not only means less stress, but also that you can spend this time thinking about more important stuff, like architecture, trying out more ideas etc.
End of conversation
New conversation -
-
-
Yes, it's better to talk about what features enable this. I nominate sum and product types. Both are needed to define the Option type. Sum types give us variants, like Some and None. Product types let us add more context to those variants, like the type accompanying a Some.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
This was my favorite part of when I used elm for websites! The language itself was what I liked because it made refactoring pleasant. The react-like UI model was just ok, but it did fit well with a strongly functional language.
-
It had a different UI layer back in the day. Switch to html based UI was pragmatic compromise (I think it was great a move). What makes you say UI model does not fit ? Unlike react it’s just functions and effects are well typed
- 1 more reply
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.