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

I would just answer "Nothing."

Because, really, it isn't just because a language has it's deficiencies that I would want to change that. That would probably result in a new language, which is not desirable. Usually a language is what it is because of it's pros, which unfortunately happens to create the cons. If you remove the cons you would probably also lose some of the pros.

So, I think a better question would be: "And what wouldn't you use [language] for? Why?" Or, if you want to sound cool, "What do you hate about it?"



> If you remove the cons you would probably also lose some of the pros.

Especially true of Lisps, of course.


Not exactly. I use Guava's Optional frequently when writing Java. It really helps take care of the null problem. It doesn't change the language significantly. However, I really wish it was part of the language instead of a library. Other libraries typically don't return Optionals which forces me to add even more lines of code protecting against nulls.

edit: s/Java/Android Java/, unfortunately the spat between Oracle & Google has prevented most of Java 7 & all of Java 8 from being incorporated into Android Java, which is what I work with on a daily basis.



It's in Java 8. java.util.Optional<T>

Still a library but at least it's part of the standard library.


Optionals are part of Java 8.


There are some cases that won't change the language. Python can easily add better support for static analysis without changing the language at all. I shouldn't have to do this:

""" :type member_list: list of [string] """

To have that hinting. I know this is getting better, but it isn't to the point of being very useful.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search: