2 ms·
And I bet that if Go ever gets generics, they will look extremely similar to everything everyone has been telling them for years, even though they dismissed tha
by hota_mazi 6y ago
And I bet that if Go ever gets generics, they will look extremely similar to everything everyone has been telling them for years, even though they dismissed that feedback for years as silly.
The switch from parentheses to square brackets is just the first step toward that admission.
- deleted 6y ago[deleted]
- deleted 6y ago[deleted]
- pjmlp 6y agoSomething interesting happened when comparing the history of systems programming languages from the early 60s, throughout the 70 and 80's. The resistance of C's design adopting anything that was already considered good practices in designing secure OSes outside Bell Labs, has a very familiar feeling.
- Jach 6y agoIt's amazing how we got here... Your comment immediately reminded me of Tony Hoare's Turing Award lecture (https://www.cs.fsu.edu/~engelen/courses/COP4610/hoare.pdf https://www.cs.fsu.edu/~engelen/courses/COP4610/hoare.pdf) which contains (among other fun/depressing gems to reflect on) a bit on the obvious-even-to-customers sanity of avoiding core dumps or worse due to a lack of bounds-checking. "A consequence of this principle [of security] is that every occurrence of every subscript of every subscripted variable was on every occasion checked at run time against both the upper and the lower declared bounds of the array. Many years later we asked our customers whether they wished us to provide an option to switch off these checks in the interests of efficiency on production runs. Unanimously, they urged us not to -- they already knew how frequently subscript errors occur on production runs where failure to detect them could be disastrous. I note with fear and horror that even in 1980, language designers and users have not learned this lesson. In any respectable branch of engineering, failure to observe such elementary precautions would have long been against the law."
- pjmlp 6y agoYes, that is one of my favorite quotes. The key point is " would have long been against the law". Until this kind of issue start suffering lawsuits, most companies won't change their behaviour. Look at Microsoft, all the security speech, C++ Core Guidelines, improving .NET for low level programming, new founded Rust love, yet the Azure Sphere team decided to use C on what is supposed to be the Fort Knox of IoT security. A bit though story to buy. I imagine the Phonon layer has probably hardware memory tagging, but they aren't revealing what it does.
- geodel 6y ago> everything everyone has been telling them for years, Some generic obsessed people talking about generics is neither everything nor everyone.