Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> I'd be surprised if that's an issue in Python, Ruby, or Lisp.

I'd be very surprised if there weren't similar issues in these languages, since these are all duck-typed and the topic at hand is "bugs prevented by rigorous up-front type checking." I don't have extensive experience in any of the above, so I couldn't include any examples of errors they are prone to.



Ruby's method_missing, the equivalent of Smalltalk's doesNotUnderstand:, is a plague on Ruby programmers. It might mean something returned nil, it might mean the wrong type got passed or returned, it might just mean that you forgot to include a module — but you will run into them more times than you can count while you're developing a Ruby app. (Or at least I will. I don't know. Maybe everybody else has better luck with their libraries or is just more studious than I am.)


Do you have unit tests with good code coverage?


> I'd be very surprised if there weren't similar issues in these languages, since these are all duck-typed and the topic at hand is "bugs prevented by rigorous up-front type checking."

Duck typing means that I can run an incomplete program, that is, one that will misbehave for certain inputs.

It turns out that running incomplete programs is incredibly useful.

Yes, I can spend time up front to fake a complete program and remove the fakeness as I provide additional completeness, but ....




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: