2,661 karma · joined June 30, 2014
If the instructions were "download, unpack, and run ./configure; make; make install" would you post the same reaction?
This is great, but it only works if you are executing the code that you want to inspect/complete/refactor. In my experience, that just doesn't scale well.
> You need to do runtime validation.
Type systems don't eliminate this, sure, but when used correctly, they _drastically_ reduce it, which is extremely useful.
> And good luck untangling your type definitions when your requirements change.
That's the best part - the compiler tells me exactly what I have to fix to get things working again. If I do the same thing in a dynamic language, I have to track things down myself, wait for unit tests to fail (hopefully I have 100% coverage...), and pray that there isn't an escape.
- static types
- small, static binaries for deployments
- lower memory requirements and value semantics where appropriate
- a reasonably large ecosystem
- cross-platform with strong support for linux/cloud
These two languages usually end up at the top of my list when given these requirements.Good language designers want to avoid both wasting developer's time and requiring ugly workarounds. Making a change that does both, especially if it doesn't break old code, is great imo.
But if you are talking about the source code itself, then things are quite different.
- Changing the title of a note and then backing out of the note does not save the title change; I had
to switch focus to the body of the note before the title change would save
- Backing out of a note exited the app instead of bringing me to the previous view
- Backing out of a sub-setting view exited the settings instead of bringing me to the parent settings
view, so even looking for a setting that might help the first two annoyances was also annoying
I'm hoping to give it another go, and perhaps even suggest or improve the app when I have some time, but it was definitely an underwhelming first impression.But I've never had trouble building against older glibcs.
Have you considered saving the high score after every level automatically?
The article considers "learn" to mean roughly "fluency", short of native mastery, and adults tend to reach fluency faster, then plateau.
So depending on nuance, you and the article are both right in some sense.
> Please stop calling it such
I'm not claiming it is always declarative, I'm only claiming that a declarative example above can contain a for loop, and that laughing at that is the wrong response. That's it.
This is where the deep misunderstanding is coming from.