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

"Ugly" is a subjective aesthetic judgment, not an observation.


If it's merely a consequence of choices made to support complexity then I disagree. The aesthetic and utility of the design is a product of many limitations and hard choices made early on. C++ will always be an ugly language because those trade offs were made from the beginning to support a breadth of functionality and configuration.

Simplicity and accessibility are extremely challenging things to support when you have a product that does everything for everyone.

The need for 5 different lambda expressions is a perfect example of that.

I personally think C++ still has a role in the world, as it clearly has lots of adoption. But if you want non-Ugly then those various use-cases have to be broken up into single-purpose (or niche) languages such as Rust for systems programming and Python for 'scripting' and Lua for glue/config code. All of those languages listed have made hard tradeoffs to be good at certain things. C++ and Java did not - largely because they are "yes" languages, as Steve Yegge calls it (the language designers said yes to everyone early on).

If Ugly languages were merely 'bad' or 'wrong' for being ugly then they both would be the most used languages. They clearly have long-lasting value in the industry - which people like Yegge believe is because they are okay with being ugly.




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

Search: