3 ms·
This sounds very academic. Meantime in the real world, people in Java-land are constantly killing themselves trying to invent workarounds for type erasure induc
by zmmmmm 8y ago
This sounds very academic. Meantime in the real world, people in Java-land are constantly killing themselves trying to invent workarounds for type erasure induced problems. The latest example I know of being Micronaut [1] which touts itself in some sense as being a whole platform for re-reification.
[1] https://objectcomputing.com/news/2018/10/08/micronaut-10-rc2 https://objectcomputing.com/news/2018/10/08/micronaut-10-rc2
- AstralStorm 8y agoThis is because the decision to type erase was very weird for a strong static typed language... You inject weak typing (unexpected conversations) into a strong type system by doing that.
- stewbrew 8y ago"Weird" is a strong word. Once the compiler has proven the codes satisfies certain type constraints you usually don't need the type information anymore ... except when you do of course.
- deleted 8y ago[deleted]
- chriswarbo 8y ago> This sounds very academic. Meantime in the real world, people in Java-land are constantly killing themselves trying to invent workarounds for type erasure induced problems. Are you a manager at Sun by any chance? ;) See the "tangent; tl;dr" section in the article: "Sun management deluded themselves that Java was the ultimate programming language (though yours truly did try to hint, ever so gently, that further progress in PL was at least conceivable)." The author has spent a lot of effort trying to improve Java specifically, via language design committees, etc. AFAIK he was one of the lead designers of Java's reflection system. Looking through his past posts it's clear that Java was getting increasingly hampered by the consequences of past decisions, and the committees weren't aiming for the same direction Bracha would like to see, so he gave up that uphill battle in favour of working with newer languages which are either free from legacy baggage (e.g. Dart) or can serve as a demonstration that these ideas can actually be implemented and work (e.g. Newspeak). Whilst the latter is largely academic, it's basically a proof-of-principle for the former. For example, from https://gbracha.blogspot.com/2009/05/original-sin.html https://gbracha.blogspot.com/2009/05/original-sin.html (linked in the article as "There is no justification for primitive types in an object oriented language"): "I do not favor any of these features, but we will take them as a given." "I am not suggesting that this discussion should be reopened. This is just a mental exercise." "One of the many reasons I left Sun was because it was increasingly impossible to make meaningful progress on the language, or anything else for that matter."
- pjmlp 8y agoIf you read the papers about Newspeak, it is also quite clear where Gilad stands on the dynamic versus static languages. http://lambda-the-ultimate.org/node/1311 http://lambda-the-ultimate.org/node/1311